Commit Graph

3055 Commits

Author SHA1 Message Date
Alex Szpakowski 14cda7818f Rename internal enum 2021-04-07 20:43:22 -03:00
Alex Szpakowski 9b4aea8f17 Missed some copyright date updates 2021-04-07 20:34:24 -03:00
Alex Szpakowski 21f5ba86d3 Merge branch 'master' into 12.0-development 2021-04-07 20:33:44 -03:00
Alex Szpakowski b1692a4000 metal: implement internal Shader::setVideoTextures method 2021-04-07 20:12:15 -03:00
Alex Szpakowski 7b6978f052 Add Font:getKerning.
Also add a variant of Font:getWidth which accepts a codepoint number.
Fixes #1403
2021-04-05 11:22:54 -03:00
Alex Szpakowski c59c85e04c Fix Text:getWidth when the Text only contains spaces
Fixes #1555
2021-04-05 10:32:01 -03:00
Alex Szpakowski 0bc574ef4e metal: fix Shader:send not flushing the active auto-batch. 2021-04-04 23:49:23 -03:00
Alex Szpakowski 6296e44425 metal: fix clampzero wrap mode. 2021-04-04 23:48:23 -03:00
Alex Szpakowski 2ec9f88f7a metal: more robust render pass handling.
Initial implementation of captureScreenshot.
Fix getStats().shaderswitches.
Fix getStats().drawcalls.
2021-04-04 23:47:58 -03:00
Alex Szpakowski f89aabb0bb Update copyright year for 2021 2021-04-04 16:14:45 -03:00
Alex Szpakowski 1e3e4faba7 Fix the wrong type of deletion used in some internal Mesh data 2021-04-04 16:02:59 -03:00
Alex Szpakowski c991f999eb Account for different DPI scales in font fallbacks.
Fixes #1675
2021-04-04 16:01:22 -03:00
Alex Szpakowski 8c88d645a3 metal: avoid redundant resource binding calls. 2021-04-03 13:49:29 -03:00
Alex Szpakowski 4ddb7e2cf7 metal: initialize empty Buffer contents. 2021-04-03 13:46:56 -03:00
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 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 22455276f6 Implement experimental fusing method.
https://github.com/love2d/love-android/issues/201#issuecomment-772628115
2021-02-06 22:10:49 +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