Commit Graph

13140 Commits

Author SHA1 Message Date
SmallJoker 36c261c1f0
IrrlichtMt: Initial SDL3 support (#16583)
This commit implements support for SDL3, more specifically, >= 3.2.0 (the first released version).
Almost all changes were made according to https://github.com/libsdl-org/SDL/blob/release-3.2.10/docs/README-migration.md?plain=1 and the suggestions provided by `SDL3/SDL_oldnames.h`.
2025-11-17 20:55:52 +01:00
grorp fcd96e9244
Dynamic shadows with the ogles2 driver on OpenGL ES 3.0+ (#16661) 2025-11-17 17:55:13 +01:00
cx384 ac0ebf39ad
Clean up header includes (#16674) 2025-11-16 15:00:51 +01:00
Rising Leaf 44e7c5b9ab
Implement core.path_exists() (#16647) 2025-11-16 15:00:36 +01:00
sfan5 7e53e65549
Show unavailable settings in menu (#16679) 2025-11-16 14:59:56 +01:00
ExeVirus 7c310cd7f5
OpenGL3: Add subpixel offset for 2D rendering (#16676) 2025-11-16 14:59:33 +01:00
lhofhansl 785042dc9e
Force highp precision for float and sampler2d on GLES, if supported (#16671)
This sets the default precision for float and samper2d on GLES devices that support it.
2025-11-14 09:52:55 -08:00
sfan5 577fc44ea9 Adjust shader test CI workflows 2025-11-14 13:10:24 +01:00
sfan5 00eea43131 More minor shader cleanups 2025-11-14 13:10:24 +01:00
cx384 4cbe7b2597
Remove unused EventReceiver 2025-11-14 13:09:39 +01:00
sfan5 c625fa71e1
Automatically choose multiple emerge threads for singlenode (#16634) 2025-11-13 20:17:24 +01:00
lhofhansl 6ac8346c6d
Revert part of 16013 - restore liquid updates to the client (#16663)
This reverts 00addc3e5d
Fixes: #16662
2025-11-11 11:10:49 -08:00
sfan5 760b20504f Support array textures in shadow renderer (the lazy way) 2025-11-09 18:26:17 +01:00
sfan5 c3790dd7af Introduce EMT_INVALID as safe placeholder 2025-11-09 18:26:17 +01:00
sfan5 fad3a0fa6d Refactor shadow map material override 2025-11-09 18:26:17 +01:00
sfan5 6205e213c7 Don't generate more node shaders than needed 2025-11-09 18:26:17 +01:00
cx384 98295cf839
Move client code from nodedef.h/cpp (#16615) 2025-11-08 21:49:01 +01:00
Lars Mueller 232c833af4 Fix selection fragment shader compile error on GL 3 2025-11-08 16:48:47 +01:00
sfan5 298a27c743
Port most shaders to GLSL ES 3.0 (#16639) 2025-11-06 19:31:35 +01:00
SmallJoker 98fb381910
Break include chains and tidy (part 2) 2025-11-06 19:31:13 +01:00
sfan5 8593d38030 Add non-headless singleplayer tests to CI 2025-11-06 11:42:36 +01:00
sfan5 b6bfc494e6 Fix singleplayer with --gameid and new world 2025-11-06 11:42:36 +01:00
frogTheSecond e82495d98c
Allow image formats other than PNG for game backgrounds in the main menu (#16395) 2025-11-06 11:42:26 +01:00
sfan5 8042b5512f Irrlicht: remove some dead code 2025-11-05 11:56:05 +01:00
sfan5 2368126d0a
Fix memory leak in rollback (and more) (#16644) 2025-11-05 11:55:57 +01:00
sfan5 7a6e639d61
Tune "block send throttling while building" optimization (#16614)
it can lead to terrain not loading/updating at all if you're constantly building and moving.

for more see the IRC logs <https://irc.luanti.org/luanti/2025-10-26#i_6293100>
2025-11-04 11:44:49 +01:00
sfan5 8350fb734a Default-initialize SColor 2025-11-02 21:36:39 +01:00
SmallJoker 329e210326
Break include chains and tidy (#16640)
Co-authored-by: cx384 <cx384@proton.me>
2025-11-02 21:33:10 +01:00
cx384 f2eabdd1d5
Fix missing airlike buffer info 2025-11-02 10:01:53 +01:00
y5nw 36f052198c
defaultsettings: drop the USEKEY2 macro 2025-11-01 17:22:09 +01:00
Marcin Serwin 631cbb3018
Use CMAKE_INSTALL_FULL_*DIR for installation directories (#16629)
`CMAKE_INSTALL_*DIR`s can be set to absolute paths and in such cases
they should not be appended to the installation prefix. This logic is
automatically handled by CMake and exposed via the corresponding FULL
path variant.
2025-11-01 17:21:54 +01:00
sfan5 de5ef4ca29
Introduce array textures for node rendering (#16574) 2025-11-01 17:21:41 +01:00
Lars Müller 1ead48c58b
Refactor: Remove obsolete `IAnimatedMeshSceneNode` interface (#16631) 2025-10-30 17:34:45 +01:00
sfan5 4b41e20000 Remove unused drawtype shader constant
might lead to better material merging
2025-10-30 15:19:31 +01:00
sfan5 04a443e392 Irrlicht: fix mipmaps regenerated multiple times 2025-10-30 15:19:30 +01:00
sfan5 ae6aac8aa9 Irrlicht: upload array textures more efficiently 2025-10-30 15:19:27 +01:00
sfan5 3c60b348a6 Irrlicht: expose MaxArrayTextureLayers 2025-10-30 15:19:26 +01:00
sfan5 0794912374 Refactor texture source to prepare for array textures 2025-10-30 15:19:26 +01:00
sfan5 e924f425f2
Remove Irrlicht devices except SDL (#16580) 2025-10-30 13:39:44 +01:00
cx384 d4d3e10531
Fixes and improvements for item image animations (#16620) 2025-10-29 10:26:59 +01:00
Lars Müller 97c9f8f709
Fix wrong normal shading for objects (apply transform) 2025-10-29 10:26:38 +01:00
Lars Müller 7331156650
Fix interpolating to identity bone overrides (#16609)
The previous code immediately dropped identity overrides, even if there still was an interpolation to be done.
Also a little bit of cleanup, and setting an appropriate identity default for the scale property when interpolating.

For modders: As a workaround, you can add a tiny offset so that overrides aren't identity overrides.
2025-10-29 10:25:50 +01:00
cx384 93ccb4b355
Add inventory image animation API (#16538) 2025-10-26 18:48:53 +01:00
Xeno333 dde463635e
Add `default_mapgen` game setting (#16238) 2025-10-26 18:46:54 +01:00
sfan5 4f8a847085
Guard new object from being added at shutdown (#16610) 2025-10-26 10:28:41 +01:00
corpserot f1c0f292fa
Correct info about ObjectRef:set_attach() bones `""` default value 2025-10-26 10:28:30 +01:00
Lars Müller 377cdfb601
Check if object is gone before calling `on_rightclick`
fix #16601
2025-10-25 17:37:12 +02:00
cx384 ff15b413b0 Don't use bilinear/trilinear filter on small overlay if large base texture 2025-10-25 17:33:56 +02:00
sfan5 35357e4300 Silence non-useful CI whitespace check 2025-10-22 22:33:40 +02:00
sfan5 4756e23477 Move crack overlay to shader 2025-10-22 22:33:40 +02:00