Commit Graph

3951 Commits

Author SHA1 Message Date
Sasha Szpakowski bb5cea6d7d clean up setCanvas error checking code 2024-07-15 17:44:03 -03:00
Sasha Szpakowski 35e443545e Fix some compile warnings 2024-07-15 17:33:49 -03:00
Sasha Szpakowski 72af731320 Fix wording of some error checks in setCanvas. 2024-07-15 17:24:21 -03:00
Sasha Szpakowski b99fce2425 metal: fix depth texture compare mode setting. 2024-07-11 21:42:52 -03:00
Sasha Szpakowski 6acdd5f01f vulkan: fix depth texture compare mode setting. 2024-07-11 21:29:58 -03:00
Sasha Szpakowski af35953fc1 improve text rendering consistency when using fractional DPI scales. 2024-07-08 22:55:48 -03:00
Sasha Szpakowski 7a4380514e Improve letter spacing and line heights of high dpi text.
resolves #1918
2024-07-07 16:54:18 -03:00
Sasha Szpakowski 05288b3e70 fix build 2024-07-06 15:39:26 -03:00
Sasha Szpakowski 248fbb9eb1 Fix the left side of quads in text with non-1.0 dpi scales.
issue #1918
2024-07-06 15:32:58 -03:00
Sasha Szpakowski c1fddfe3bc Fix initial texture atlas size of fonts with high dpi scales 2024-07-06 15:31:11 -03:00
Sasha Szpakowski 9f18595559 vulkan: reduce memory use in some situations 2024-06-28 21:53:03 -03:00
Sasha Szpakowski b16e1d6e27 vulkan: don't periodically clean up render pass objects.
It's not needed.
2024-06-24 18:41:52 -03:00
Sasha Szpakowski 35f20eb053 vulkan: move cached PSO ownership to shaders.
Fixes issues with state corruption when a shader is created with the same memory address as a recently deleted shader.
2024-06-24 18:31:34 -03:00
Sasha Szpakowski 3a31b60ca6 vulkan: fix shader stage IO location mapping. 2024-06-22 22:10:42 -03:00
Sasha Szpakowski 2e1e48bc9d Merge pull request #1966 from Labrium/sdf-font-hintingmode
Add SDF HintingMode
2024-06-22 22:06:23 -03:00
Labrium 85cd98ffe5 Fix mono and sdf rendermode conflicts 2024-06-22 18:13:47 -06:00
Sasha Szpakowski 10c435cfc9 vulkan: fix a crash in setCanvas. 2024-06-22 21:05:37 -03:00
Labrium c52763d369 Remove stash artefacts 2024-06-22 17:10:52 -06:00
Labrium b98aced38d Move sdf option to settings table 2024-06-22 17:07:06 -06:00
Labrium f8f7fd9afb Merge branch 'love2d:main' into sdf-font-hintingmode 2024-06-22 15:55:56 -06:00
Sasha Szpakowski f548430f06 remove more obsolete code 2024-06-22 16:32:29 -03:00
Sasha Szpakowski 46402d4ff7 vulkan: fix missing resource validation in Shader:send 2024-06-22 16:32:10 -03:00
Labrium 2eb8892ddf Merge branch 'love2d:main' into sdf-font-hintingmode 2024-06-22 13:20:46 -06:00
Sasha Szpakowski ca9aa81744 vulkan: improve performance and memory usage when there are many draws without many texture/buffer changes.
Descriptor set updates only happen if a resource binding changed since the last draw. Uniform data uses a dynamic uniform buffer descriptor so it doesn't need to update the descriptor set if only the offset changes between draws.
2024-06-21 22:44:30 -03:00
Sasha Szpakowski 25a6576785 Remove more obsolete code. 2024-06-20 22:14:31 -03:00
Sasha Szpakowski 8b37337436 Remove a workaround for a driver that's no longer supported 2024-06-20 18:14:46 -03:00
Sasha Szpakowski 66a1197053 Remove a couple internal support checks that aren't needed anymore. 2024-06-20 17:50:36 -03:00
Sasha Szpakowski ad0af743d8 Shaders use GLSL3 instead of GLSL1 by default.
Remove support for GLSL1.
Deprecate use of 'texture' uniform variable names and 'texture2D' function calls in shader code. They aren't supported in modern GLSL.
2024-06-20 17:49:50 -03:00
Sasha Szpakowski 54a31ec615 Minimum required opengl version is now OpenGL 3.3 / OpenGL ES 3.0. 2024-06-19 18:08:09 -03:00
Sasha Szpakowski 5112345893 Fix the first TextBatch:set call uploading vertices twice. 2024-06-18 22:19:40 -03:00
Sasha Szpakowski 4c778fa878 Fix typo 2024-06-17 21:13:06 -03:00
Sasha Szpakowski bfc4212f30 Remove NormalMatrix shader uniform.
It doesn't provide much value given its costs. It also didn't work properly with auto-batched draws.
2024-06-17 20:57:28 -03:00
Sasha Szpakowski e180b256b8 vulkan: fix cull mode in quad drawing code 2024-06-17 17:08:31 -03:00
Sasha Szpakowski 78f8cfc4dc Add Shader:getBufferFormat.
Returns a table with the same setup as the data format table used with love.graphics.newBuffer.
2024-06-16 17:07:34 -03:00
Sasha Szpakowski 12bbadb0fa replace 'onesided' bool in EdgeShape constructors with prev/next vertex coordinates. 2024-06-16 11:17:46 -03:00
Sasha Szpakowski 946579a903 Fix delete key not using the right name 2024-06-15 20:11:24 -03:00
Sasha Szpakowski 6869737a3f vulkan: recognize more vendor ids for love.graphics.getRendererInfo 2024-06-15 15:40:48 -03:00
Sasha Szpakowski 8e67fd5861 metal: fix compile error 2024-06-15 15:02:44 -03:00
Sasha Szpakowski 2eb8198dba metal/vulkan: fix uniform numbers and vectors in arrays of structs. 2024-06-15 14:46:27 -03:00
Sasha Szpakowski d13a7f7620 Fix missing deprecated Shape:getShape method. 2024-06-07 17:38:08 -03:00
Sasha Szpakowski a23d53183e key press events and love.keyboard support arbitrary non-ascii key constants.
Closes #2012.
2024-06-01 21:21:20 -03:00
Sasha Szpakowski 9473c8d710 vulkan: fix validation error when creating a non-square array texture. 2024-05-05 09:40:28 -03:00
Sasha Szpakowski 03f364e131 graphics: bind internal depth-compare textures to unbound sampler2DShadow vars. 2024-05-03 20:56:13 -03:00
Sasha Szpakowski a894c2f6a4 vulkan: fix validation errors related to scissors when drawing. 2024-05-03 20:24:25 -03:00
Sasha Szpakowski 8d8cf317d5 opengl+windows: work around a performance issue with lines. 2024-05-02 18:05:42 -03:00
Miku AuahDark 629fc1c581 Android: Use mode a+rwx for directories and a+rw for files in external storage path.
Issue love2d/love-android#269.
2024-04-27 12:38:30 +08:00
Sasha Szpakowski 0089749ad0 metal: work around texture swizzle bug in the github runner VM 2024-04-26 20:40:37 -03:00
Sasha Szpakowski 1e2696b403 improve errors when openal fails to initialize 2024-04-25 18:23:58 -03:00
Miku AuahDark 329796d3ba Android: Fix inconsistency issue with t.externalstorage. 2024-04-25 12:36:43 +08:00
Miku AuahDark 8cdbeb20b9 Fix compile error from previous commit. 2024-04-25 12:04:33 +08:00