Commit Graph

4016 Commits

Author SHA1 Message Date
Alex Szpakowski a4d0761e84 metal: work on depth/stencil textures, MSAA 2021-04-02 22:10:01 -03:00
Alex Szpakowski 3accf51eb2 metal: explicitly compile to metalsl 2.1 2021-04-02 18:10:46 -03:00
Alex Szpakowski 9acf7df8e8 metal: fix crash when stream buffers are resized 2021-04-02 17:53:55 -03:00
Alex Szpakowski 4cac353908 metal: fix love_ScreenSize when a canvas is active 2021-04-02 16:10:20 -03:00
Alex Szpakowski 1e90b4e8f7 metal: fix shader uniform names 2021-04-02 15:45:17 -03:00
Alex Szpakowski 662b70458e metal: fix setCanvas 2021-04-02 14:32:45 -03:00
Alex Szpakowski ceaa8f95ff metal: fix texel buffer size 2021-03-31 23:04:27 -03:00
Alex Szpakowski 5fa570b9a6 metal: initial texel buffer Shader:send implementation 2021-03-31 23:02:36 -03:00
Alex Szpakowski 1b9b32c7a7 metal: clean up some shader code 2021-03-31 20:38:37 -03:00
Alex Szpakowski 52d4a5c679 metal: initial shader texture binding implementation.
rework metal shader compilation/parsing.
2021-03-31 18:35:57 -03:00
Alex Szpakowski 46ca836bd5 metal: enable clamp-to-one wrap mode on iOS 10.14+ 2021-03-30 19:32:33 -03:00
Alex Szpakowski 7eb3d4343a Move some shader binding validation code out of the opengl backend 2021-03-30 19:28:42 -03:00
Alex Szpakowski 2064c140ac metal: clamp scissor rect to be within the active RT 2021-03-30 19:27:52 -03:00
Alex Szpakowski aad0810e11 metal: initial (bad/slow) setShader tracking 2021-03-29 18:28:06 -03:00
Alex Szpakowski 3a1c85c13e metal: hook up correct texture size and max RT limits 2021-03-27 23:10:49 -03:00
Alex Szpakowski 0d94530374 metal: implement vsync toggle on macOS 2021-03-27 22:40:29 -03:00
Alex Szpakowski 1e85e1b414 metal: fix Buffers, fix shader cleanup 2021-03-27 22:21:00 -03:00
Alex Szpakowski 326dfe2632 metal: workaround for garbage data being stored in pipeline keys 2021-03-27 17:46:43 -03:00
Alex Szpakowski da6fd95a64 metal: more work on shader uniforms 2021-03-27 17:37:53 -03:00
Alex Szpakowski 5f888be64a metal: initial pixel format support implementation 2021-03-27 17:37:09 -03:00
Alex Szpakowski 3744f8b939 metal: implement point sizes 2021-03-26 21:49:00 -03:00
Alex Szpakowski 9cc6be4ac7 Remove bufferusage_uniform for now
It's not really implemented
2021-03-26 21:43:24 -03:00
Alex Szpakowski 2d2918a254 Merge branch '12.0-development' into metal 2021-03-26 21:42:08 -03:00
Alex Szpakowski e1d5f3b010 metal: fix Texture:setWrap/setFilter 2021-03-25 20:41:05 -03:00
Alex Szpakowski 4639e7330e metal: initial implementation of Texture:newImageData. 2021-03-25 20:36:31 -03:00
Alex Szpakowski c0a8aa3ef7 metal: use EXT_vulkan_glsl_relaxed 2021-03-23 21:57:36 -03:00
Alex Szpakowski cc140ed1ad update spirv-cross 2021-03-23 21:35:54 -03:00
Alex Szpakowski 319faf5bc3 Update glslang 2021-03-23 21:28:23 -03:00
Alex Szpakowski b1b70a83db Add Joystick:set/getPlayerIndex 2021-02-15 16:08:23 -04:00
Alex Szpakowski 5e411f607f Expose new gamepad buttons from SDL 2021-02-14 16:03:36 -04:00
Alex Szpakowski 04d59274ef Merge branch 'master' into 12.0-development 2021-02-14 14:45:21 -04:00
Alex Szpakowski 1e27b1d6ed Add Joystick:getGamepadType.
Return value is "unknown", "xbox360", "xboxone", "ps3", "ps4", "ps5", "switchpro", or "virtual".
2021-02-14 14:40:45 -04:00
Miku AuahDark cbc0602620 Make sure to delete activity returned by SDL when calling getAssetManager() 2021-02-13 19:03:23 +08:00
Miku AuahDark 994cec9ee8 Add Android-specific conditionals. 2021-02-12 19:48:41 +08:00
Miku AuahDark 22455276f6 Implement experimental fusing method.
https://github.com/love2d/love-android/issues/201#issuecomment-772628115
2021-02-06 22:10:49 +08:00
Miku AuahDark e967348409 Implement AAsset virtual archive for Android 2021-02-06 22:04:33 +08:00
Alex Szpakowski 694d448e83 Vertex shaders can write to gl_PointSize (fixes #1603).
If a shader uses gl_PointSize then it can only be used when drawing points. If a shader doesn't use gl_PointSize then it can't be used when drawing points.

Added 'ConstantPointSize' and 'CurrentDPIScale' built-in shader uniforms.

ConstantPointSize is in DPI-scaled points, whereas gl_PointSize is in pixels, so to get the correct default behaviour a shader needs to do gl_PointSize = ConstantPointSize * CurrentDPIScale
2021-01-23 13:47:12 -04:00
Alex Szpakowski deff795908 Rename some internal buffer enums to better match what they do 2021-01-17 20:59:16 -04:00
Alex Szpakowski 2e2ebe95cd Clean up some obsolete internal graphics code 2021-01-17 16:50:44 -04:00
Alex Szpakowski 4244e01a35 More texture format support cleanup 2021-01-17 14:48:35 -04:00
Alex Szpakowski ef5a0250e9 Fix compilation on windows 2021-01-17 14:13:16 -04:00
Alex Szpakowski e2838131f2 Add love.graphics.copyBuffer. 2021-01-17 14:02:00 -04:00
Alex Szpakowski e1f40b433d Clean up some graphics enum declaration code 2021-01-16 20:51:06 -04:00
Alex Szpakowski 52238bb7d9 Add optional source data start index arg to Buffer:setArrayData
The argument list is now Buffer:setArrayData(data or table, sourceindex=1, destindex=1, count=automatically computed)

#1598
2021-01-16 20:34:27 -04:00
Alex Szpakowski 4d6cfb1f90 metal: vertex attribute reflection is slightly better 2021-01-16 14:08:03 -04:00
Alex Szpakowski 5e77944dc0 refactor texture format support internals 2021-01-16 13:09:01 -04:00
Alex Szpakowski 558cc6a111 metal: post-merge compile fix 2021-01-14 20:40:37 -04:00
Alex Szpakowski 98f8fe02a1 Merge branch '12.0-development' into metal 2021-01-14 20:33:45 -04:00
Alex Szpakowski 50ff86bd92 Graphics Buffers can be used as Shader Storage Buffers. 2021-01-10 17:53:12 -04:00
Alex Szpakowski 4ebe64afe1 Merge pull request #1662 from MikuAuahDark/full64bitludata
Allow full 64-bit lightuserdata usage if the LuaJIT supports it.
2021-01-09 11:44:13 -04:00