Alex Szpakowski
7216a022f9
metal: remove unused internal code
2022-02-04 22:09:50 -04:00
Alex Szpakowski
6e49b1f901
metal: fix texture sampler changes not affecting draws using shaders.
2022-01-31 21:25:49 -04:00
Alex Szpakowski
e4020e439a
metal: lowdpi on macOS uses nearest instead of linear upscaling.
...
Matches the behaviour of the OpenGL backend on macOS.
2022-01-23 12:55:06 -04:00
Alex Szpakowski
a5351e5046
metal: improve detection of rgba32f format filter and MSAA support.
2022-01-23 11:28:09 -04:00
Alex Szpakowski
6dbb7fa5de
Add love.graphics.setStencilMode. Remove old stencil API.
...
- Add setStencilMode(drawaction, comparemode, value = 0, readmask = 0xFF, writemask = 0xFF).
- Add getStencilMode.
- Remove love.graphics.stencil.
- Remove love.graphics.set/getStencilTest.
Note that the new setStencilMode API does not clear the stencil buffer, and does not turn off color writes (it can still be done manually), unlike love.graphics.stencil.
Fixes #1161 .
Fixes #1251 .
2022-01-22 23:36:07 -04:00
Alex Szpakowski
c26f6ed94f
metal: improve performance of auto depth/stencil in setCanvas.
2022-01-22 23:12:42 -04:00
Alex Szpakowski
4c3c875aa9
metal: clean up some code around render pipeline states.
2022-01-22 21:29:57 -04:00
Alex Szpakowski
87592513a2
metal: fix automatic depth/stencil with setCanvas.
2022-01-22 20:57:06 -04:00
Alex Szpakowski
8c496d60e5
metal: add a couple comments clarifying depth format fallbacks.
2022-01-22 14:51:37 -04:00
Alex Szpakowski
1cf0073cf4
metal: use a fallback for fonts when luminance-alpha isn't supported.
2022-01-22 14:41:42 -04:00
Alex Szpakowski
62de8f62c7
metal: hook up emulated 'fan' mesh draw mode.
2022-01-22 12:59:09 -04:00
Alex Szpakowski
3ecae61189
metal: improve texture initialization.
2022-01-16 14:18:34 -04:00
Alex Szpakowski
4e1c4a6afe
metal: some fixes for MSAA
2022-01-16 13:44:29 -04:00
Alex Szpakowski
4ca3535cd2
Metal: fix clamp-to-one texture wrap mode detection.
2022-01-15 23:31:07 -04:00
Alex Szpakowski
5c3f391136
update metal backend for projection changes.
2022-01-12 18:31:32 -04:00
Alex Szpakowski
c373fb2e82
Fix compilation on macOS/iOS
2022-01-05 21:28:47 -04:00
Alex Szpakowski
cf57c3eedf
update copyright year for metal files
2022-01-05 21:13:53 -04:00
Alex Szpakowski
5864d83c31
Add ability to configure which renderers are used by love.graphics.
...
- Add t.renderers and t.excluderenderers love.conf fields. They can be an array of renderer names.
- Add --renderers a,list,of,renderernames and --excluderenderers more,renderers argument options.
2022-01-04 21:29:56 -04:00
Alex Szpakowski
40aa50662a
Merge branch '12.0-development' into metal
2022-01-01 15:36:57 -04:00
Alex Szpakowski
045f5ff0a5
Fix initializing the graphics module after a window is opened.
2021-12-26 12:34:47 -04:00
Alex Szpakowski
19feec43f9
metal: don't do auto sRGB -> P3 color conversions on the backbuffer
2021-12-25 22:31:18 -04:00
Alex Szpakowski
30fe00d767
metal: implement storage buffer bindings
2021-12-25 14:21:45 -04:00
Alex Szpakowski
c6e4cfdc64
metal: initial love.graphics.dispatchThreadgroups implementation
2021-12-24 23:04:44 -04:00
Alex Szpakowski
a03041043f
metal: partial implementation of love.graphics.discard
2021-12-24 22:41:31 -04:00
Alex Szpakowski
759937a458
metal: fix depth24stencil8 fallback on macOS
2021-12-24 22:20:25 -04:00
Alex Szpakowski
2868ede191
metal: restrict to macOS 10.15+ and iOS 13+.
2021-12-24 19:22:10 -04:00
Alex Szpakowski
620dc42292
metal: fix quad drawing on older iOS devices
2021-12-24 19:13:48 -04:00
Alex Szpakowski
a431e70179
metal: add internal compute encoder APIs
2021-12-24 18:56:21 -04:00
Alex Szpakowski
bcd64fe537
metal: implement mesh cull modes
2021-12-24 18:46:06 -04:00
Alex Szpakowski
7eb8366b2d
metal: integer texture format support.
2021-12-24 17:50:17 -04:00
Alex Szpakowski
304b569a39
metal: tag texture formats with compute write support
2021-12-24 17:45:05 -04:00
Alex Szpakowski
7a910484c3
Fix compilation
2021-12-24 16:45:23 -04:00
Alex Szpakowski
7851124260
metal: work on storage buffers
2021-09-05 13:18:10 -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
8c88d645a3
metal: avoid redundant resource binding calls.
2021-04-03 13:49:29 -03:00
Alex Szpakowski
a4d0761e84
metal: work on depth/stencil textures, MSAA
2021-04-02 22:10:01 -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
662b70458e
metal: fix setCanvas
2021-04-02 14:32:45 -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
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
1e85e1b414
metal: fix Buffers, fix shader cleanup
2021-03-27 22:21:00 -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