Commit Graph

4202 Commits

Author SHA1 Message Date
Alex Szpakowski 425537ad5e Metal view creation failure shows a relevant error message. 2022-01-06 17:37:56 -04:00
Alex Szpakowski a76606e76e metal: fix some define checks. 2022-01-06 17:34:20 -04:00
Alex Szpakowski c373fb2e82 Fix compilation on macOS/iOS 2022-01-05 21:28:47 -04:00
Alex Szpakowski 55a13f995a Add SPIRV-Cross info to license.txt 2022-01-05 21:20:04 -04:00
Alex Szpakowski cf57c3eedf update copyright year for metal files 2022-01-05 21:13:53 -04:00
Alex Szpakowski d51e012812 Merge branch '12.0-development' into metal 2022-01-05 21:12:22 -04:00
Alex Szpakowski 7f3538d2ba Merge branch 'main' into 12.0-development 2022-01-05 21:10:27 -04:00
Alex Szpakowski 5426be4252 Prefer OpenGL to Metal (for now) 2022-01-05 20:58:38 -04:00
Alex Szpakowski 44a434604a t.renderers/excluderenderers doesn't affect renderer order. 2022-01-05 20:52:17 -04:00
Alex Szpakowski 674143175f metal: fix Shader:send with matrices and arrays. 2022-01-05 20:33:08 -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 ecbc5ca7f6 Add love.graphics.getQuadIndexBuffer.
love's pre-generated quad index buffer is useful when combined with drawShaderVertices. Note that it uses 16 bit indices so it can only draw up to 16k quads in a single call.
2022-01-03 16:22:08 -04:00
Alex Szpakowski 42e8df1489 Add a GraphicsFeature support enum for 32 bit index buffers.
Some old OpenGL ES 2 systems don't support them.
2022-01-03 16:09:38 -04:00
Alex Szpakowski ac8f5374c2 Fix a minor validation bug. 2022-01-03 14:36:22 -04:00
Alex Szpakowski 0c4be3d5e3 Add love.graphics.drawShaderVertices (name subject to change).
It draws a number of vertices, or a number of indices from an index buffer, without using any vertex data from a vertex buffer. A custom shader is required while using it.

It is useful when a custom GLSL3 vertex shader which uses love_VertexID is used to pull or compute per-vertex information from other sources.
2022-01-03 14:33:54 -04:00
Alex Szpakowski de89f5a9eb love.graphics.apply/replaceTransform can accept x,y,angle,etc. args. 2022-01-03 11:57:05 -04:00
Alex Szpakowski 91cb845f31 #pragma language glsl4 in shaders maps to GLES 3.2 instead of 3.1. 2022-01-02 14:02:55 -04:00
Bart van Strien 334b674f12 Update version number in configure.ac 11.4 2022-01-02 15:07:12 +01:00
Alex Szpakowski 3bc0d90af4 Add release date 2022-01-02 09:37:33 -04:00
Alex Szpakowski 59f532fdfa Add amazon luna and google stadia enums to Joystick:getGamepadType. 2022-01-01 18:15:27 -04:00
Alex Szpakowski f88eecf482 Allow texel buffers in OpenGL ES, when supported by the system. 2022-01-01 18:06:50 -04:00
Alex Szpakowski 9709f95194 metal: fix structs in uniforms. 2022-01-01 17:41:23 -04:00
Alex Szpakowski e2c397355c metal: implement copyBufferToTexture and copyTextureToBuffer. 2022-01-01 15:48:43 -04:00
Alex Szpakowski 40aa50662a Merge branch '12.0-development' into metal 2022-01-01 15:36:57 -04:00
Alex Szpakowski e602f08c24 metal: support constant initializer values for local uniforms. 2022-01-01 15:28:42 -04:00
Alex Szpakowski 8e7fd10b6f Update copyright year for 2022 2021-12-31 18:33:40 -04:00
Miku AuahDark 78a915c8f4 Update dr_flac to 0.12.33 2021-12-31 10:09:36 +08:00
Alex Szpakowski 813c9d1781 Fix GL version check for arbitrary texture-to-buffer copy support.
love never creates a GL4.5 context, so we also need to check for the extension that provides the same functionality.
2021-12-30 19:25:10 -04:00
Alex Szpakowski 4474312f76 Updated changelog 2021-12-30 17:06:26 -04:00
Alex Szpakowski fc1c1e1e1f Merge branch 'main' into 12.0-development 2021-12-30 16:39:22 -04:00
Alex Szpakowski 21b996e5b4 Add note in the changelog about LuaJIT 2.1. 2021-12-30 14:00:12 -04:00
Alex Szpakowski b66daf3338 Update iOS CI for xcframework dependencies 2021-12-30 12:48:41 -04:00
Alex Szpakowski c0dc051bc4 iOS: use new xcframework dependency libraries.
They support arm64+x64 simulators, as well as 64 bit iOS devices.
2021-12-30 12:46:37 -04:00
Miku AuahDark 165ffa7e34 Package JIT modules as artifact in Windows
See #1752
2021-12-30 20:00:04 +08:00
Alex Szpakowski ebe628eb8b Update CI and readme for new love-apple-dependencies repo path. 2021-12-28 16:25:03 -04:00
Alex Szpakowski 0786eff656 Update changelog 2021-12-28 15:30:10 -04:00
Alex Szpakowski cf0a45f601 Fix non-stream buffers uploading redundant data when a sub-range is modified.
https://love2d.org/forums/viewtopic.php?f=4&t=92458
2021-12-28 15:10:09 -04:00
Alex Szpakowski bfcf025ef7 Add 'staging' buffer data usage enum. 2021-12-28 12:49:33 -04:00
Alex Szpakowski 52101b2563 Add love.graphics.copyTextureToBuffer and copyBufferToTexture. 2021-12-28 12:46:56 -04:00
Alex Szpakowski d7bfc2ebcb Fix compile error 2021-12-27 21:31:04 -04:00
Alex Szpakowski 5b3a5e7721 Remove the need for copysource and copydest buffer usage flags. 2021-12-27 21:17:04 -04:00
Alex Szpakowski 4195911680 Relax Texture:replacePixels sub-rect restriction for compressed textures. 2021-12-27 12:10:37 -04:00
Alex Szpakowski be6736cba5 Update glslang 2021-12-26 13:13:27 -04:00
Alex Szpakowski ca9b9ba91f Update spirv-cross 2021-12-26 12:54:35 -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 37ff7ef665 metal: support for depth16 on iOS 2021-12-25 14:21:59 -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