Sasha Szpakowski
d5282339a2
Merge branch 'main' into 12.0-development
2024-02-04 23:07:50 -04:00
Sasha Szpakowski
62ac858f30
Initial source code support for SDL3. No build system support.
2024-02-04 17:02:26 -04:00
Sasha Szpakowski
5d11b095e8
Fix loading code-signed games on Windows with non-ascii paths.
...
Use DroppedFile (renamed to NativeFile in love 12) instead of C file APIs. NativeFile properly handles unicode file paths on Windows.
2024-02-03 12:06:27 -04:00
Miku AuahDark
5acc98ce43
Remove unnecessary CMake modules.
...
* Compiling without find_package(OpenGL REQUIRED) has no side-effect because LOVE uses SDL to load OpenGL. GLAD is used to as substitute for OpenGL headers too.
* Mpg123 is no longer used in LOVE 12. Remove the respective CMake module.
* CMake has its own FindOpenAL.cmake script. There's no need to provide our own.
2024-01-29 19:13:44 +08:00
Bart van Strien
dc8391397e
Merge remote-tracking branch 'origin/12.0-development' into remove-autotools
2024-01-28 11:58:26 +01:00
Sasha Szpakowski
50b18d1ac7
Add love.mouse.getGlobalPosition. Useful for custom window dragging.
2024-01-13 18:06:37 -04:00
Sasha Szpakowski
bf6a6f1237
metal: error when generated SPIR-V shader IR can't be parsed
2024-01-09 21:29:54 -04:00
Sasha Szpakowski
7ff6f74a92
metal: improve shader resource binding code.
2024-01-09 21:11:04 -04:00
Sasha Szpakowski
fb002ee59b
opengl: fixes for default storage buffer bindings.
2024-01-09 21:10:20 -04:00
Sasha Szpakowski
8bf04df6e1
Fix uninitialized pointers leading to crashes
2024-01-08 22:31:06 -04:00
Sasha Szpakowski
3e8345280f
Move default texel and shader storage buffers to high level code.
2024-01-08 22:13:47 -04:00
Sasha Szpakowski
6feedc8222
Add love.window.getPointer, returns a SDL_Window* as lightuserdata.
2024-01-08 21:09:40 -04:00
Sasha Szpakowski
ecd9b007aa
Fix building vulkan Shader.cpp
2024-01-07 22:00:50 -04:00
Sasha Szpakowski
95fdc1c899
Linux: don't try to build web glslang files
2024-01-07 21:58:29 -04:00
Sasha Szpakowski
715858a670
Fix typo
2024-01-07 21:46:51 -04:00
Sasha Szpakowski
ddbf64d3b7
Linux: build using C++17?
2024-01-07 21:40:14 -04:00
Sasha Szpakowski
c6b3d136af
iOS: update deployment target
...
newer glslang versions require newer C++ features than the old target supported.
2024-01-07 21:26:10 -04:00
Sasha Szpakowski
904ab47d1f
Fix cmake project
2024-01-07 21:22:43 -04:00
Sasha Szpakowski
8e361aefbf
SPIRV-Cross: remove C API files
...
The spirv header for those is outdated and can cause warnings because its contents don't match the other spirv header files in SPIRV-Cross and glslang
2024-01-07 21:22:13 -04:00
Sasha Szpakowski
421cfd1a5e
update SPIRV-Cross
2024-01-07 21:17:43 -04:00
Sasha Szpakowski
a99d5afc57
update glslang
2024-01-07 21:14:01 -04:00
Sasha Szpakowski
501c41e10f
Fix compiler warning
2024-01-06 15:44:39 -04:00
Sasha Szpakowski
fffb835358
tests: fix love.graphics.setDepthMode test
2024-01-06 15:36:50 -04:00
Sasha Szpakowski
131b6c51e0
graphics: fix recursion when creating a default texture.
2024-01-06 15:22:02 -04:00
Sasha Szpakowski
aaab9791d5
Improve backbuffer depth buffer.
...
- Setting the depth buffer for the backbuffer is now done as a boolean instead of a bit depth integer, in love.conf or love.window.setMode.
- Error if depth writes are enabled when the active canvas setup or backbuffer does not have a depth buffer (now it matches stencil behaviour).
- Don't allocate a backbuffer depth-stencil buffer if they're not requested. Metal also determines the format for that buffer based on which combination of depth and stencil is requested. OpenGL still has to allocate the depth-stencil buffer for the backbuffer all the time, because changing it requires the context to be recreated.
2024-01-06 15:21:06 -04:00
Bart van Strien
e08502fafa
Update build dependencies
2024-01-06 13:04:19 +01:00
Bart van Strien
aa14bacdc9
Remove autotools build system
2024-01-06 13:04:19 +01:00
Bart van Strien
ac9ee9d3c7
Update debian package files for cmake variables
...
And automatically get the timestamp for the changelog too.
That does require an update to cmake 3.7, but as far as I can tell we never use a cmake version older than 3.16 (ubuntu 20.04).
2024-01-06 13:04:19 +01:00
Sasha Szpakowski
621a7547d2
metal: tweak initial internal uniform buffer size
2024-01-05 20:37:49 -04:00
Sasha Szpakowski
04462ece30
graphics: clean up some stencil code
2024-01-04 21:35:52 -04:00
Sasha Szpakowski
404b2f2c4e
address VS compiler suggestion about constexpr
2024-01-04 21:35:18 -04:00
Sasha Szpakowski
9b5851e039
Move current love.graphics.setStencilMode functionality to setStencilState.
...
Add new higher level love.graphics.setStencilMode function.
- Add love.graphics.setStencilMode(mode [, value = 1])
- Add love.graphics.setStencilMode().
- Add mode, value = love.graphics.getStencilMode().
The possible modes are "off" (same as no parameters), "draw", and "test".
The "draw" mode disables color writes and sets the stencil state to ("replace", "always") using the given value.
The "test" mode enables color writes and sets the stencil state to ("keep", "equal") using the given value to compare to.
2024-01-04 16:23:49 -04:00
Sasha Szpakowski
77c5ea1d6b
graphics: move buffer:clear error checking to high level code
2024-01-02 11:13:31 -04:00
Sasha Szpakowski
af840bb2cf
metal: texel buffers align their size according to device requirements
2024-01-01 16:12:24 -04:00
Sasha Szpakowski
0523aa6f8f
metal: check for depth compare mode support before setting it on a texture.
2024-01-01 15:41:31 -04:00
Sasha Szpakowski
9b537ede2b
Fix out of bounds memory access in Buffer:setArrayData with matrices.
...
Issue #1986
2023-12-31 16:32:12 -04:00
Sasha Szpakowski
d7e0856dc6
tests: add basic graphics Buffer tests.
...
issue #1986
2023-12-31 16:06:45 -04:00
Bart van Strien
d7f29c8860
Use correct library name on linux
...
Not libliblove.so, but liblove-12.0.so, like with autotools.
Note that no liblove.so symlink is created.
2023-12-31 13:57:51 +01:00
Bart van Strien
5c0e4d0b62
Add linux install commands to cmake
2023-12-31 13:28:09 +01:00
Bart van Strien
84982ff4ef
Generate love.desktop using CMake too
...
Since I cannot easily change the variable used there, update the autotools codepath to insert the CMake variable.
2023-12-31 12:56:38 +01:00
Bart van Strien
0302e0f2ac
Generate debian package files with cmake
...
Used for the ppa builds, so it's nice if they still work.
2023-12-31 12:48:40 +01:00
Bart van Strien
83f1a926bf
Make OS-check for install/cpack cmake targets more explicit
...
Previously there was an early return, trying to match the same thing.
Making this explicit allows me to more easily add a linux version.
2023-12-31 12:36:25 +01:00
Bart van Strien
e4e16e8a88
Remove unused OSX support in autotools
...
Probably best illustrated by the fact it's still called OSX, rather than
macOS.
2023-12-31 12:29:18 +01:00
Bart van Strien
ae0f2916ed
Remove dead code in configure.ac: old stb_image define
2023-12-31 12:23:29 +01:00
Sasha Szpakowski
dbcdbc47d5
Add debugname field to shader options table.
2023-12-29 16:51:24 +01:00
Sasha Szpakowski
8872497561
graphics: handle default textures in high level code.
...
Previously each backend had to set up default textures with its own code, which needs some care for it to be robust.
2023-12-27 21:28:02 +01:00
Sasha Szpakowski
e42019c59e
Add buffer stats to love.graphics.getStats.
...
- Add 'buffers' field, to count the total number of graphics buffer objects.
- Add 'buffermemory' field, to estimate the total number of bytes of graphics memory used by all buffers.
2023-12-25 23:25:46 +01:00
Sasha Szpakowski
9c6417776f
metal: remove unneeded TODO
2023-12-25 23:24:07 +01:00
Sasha Szpakowski
4631bc56fb
Merge branch 'main' into 12.0-development
2023-12-25 15:39:45 +01:00
Sasha Szpakowski
8423b82dba
Merge pull request #1999 from Raltyro/patch-1
...
Fix deprecated love.graphics.stencil function resetting stencilMode
2023-12-24 15:19:23 +01:00