Commit Graph

4355 Commits

Author SHA1 Message Date
aacd20d9dd Re-extracted class docs. 2025-04-04 19:03:05 +02:00
f878be9792 Set version to stable. 2025-04-04 18:57:54 +02:00
c094e070c7 Now TerrainChunks will register their lights into the VertexLights3DServer if use_vertex_lights_3d is enabled in world. 2025-04-04 18:15:33 +02:00
1ac803de1c Make use of the VertexLights3DServer in TerrainChunkDefault::_bake_lights() if enabled. 2025-04-04 17:45:11 +02:00
a4ff7e9e66 Added use_vertex_lights_3d property to TerrainWorld. 2025-04-04 17:44:42 +02:00
83e68549d5 Added VertexLight3D baking tool to TerrainWorldEditor. 2025-04-04 16:25:41 +02:00
20f5439a82 Fix TerrainChunk::light_remove_index() not actually remoing lights. 2025-04-04 16:24:48 +02:00
ffa4cf938f Added more helper methods to TerrainWorld. 2025-04-04 16:24:30 +02:00
7a50eedd5a Added item_cull_mask property to TerrainLight. 2025-04-04 16:24:12 +02:00
4f0050f019 Added light_mode property to TerrainLight. 2025-04-04 15:44:53 +02:00
d37176539e Removed OWNER_TYPE_VERTEX_LIGHT_3D from TerrainLight. 2025-04-04 15:36:37 +02:00
538a17950b Small tweaks to the info outputs in TerrainWorldEditor. 2025-04-04 15:13:37 +02:00
a8c47eed08 Fix method call in TerrainWorldEditor. 2025-04-04 15:08:32 +02:00
62a5bc1be8 Added MeshDataInstance baking tool to TerrainWorldEditor. 2025-04-04 15:06:06 +02:00
74ddba1eb1 Added mesh_data_resource_add() helper method to TerrainWorld. 2025-04-04 15:05:31 +02:00
f770c598ed Now TerrainChunks can also store a name and material for MeshDataResources. 2025-04-04 15:05:05 +02:00
a0219e12e6 Don't create prop baking tool buttons if the Props module is disabled. 2025-04-04 12:42:03 +02:00
77d9f5debd Added a scene baking tool to TerrainWorldEditor. 2025-04-04 12:39:37 +02:00
3f817947c7 Fix logic in TerrainChunk::scenes_set() and TerrainChunk::props_set(). 2025-04-04 12:39:21 +02:00
f9172bddd5 Fix typo. 2025-04-04 10:55:27 +02:00
dc4de19aaf Return and set the name with the props property in TerrainChunk. 2025-04-04 10:54:54 +02:00
0847706fa2 Implement setting a name to scenes in TerrainChunk. 2025-04-04 10:53:12 +02:00
5d036590dd Fix typo. 2025-04-04 09:20:06 +02:00
dd98d9e7e5 Added tooltips for the bake props tool's buttons in TerrainWorldEditor. 2025-04-04 09:18:45 +02:00
7e52eb6b43 Now props added to TerrainWorld can also have a name. The prop bake editor tool uses it to save and restore node names. 2025-04-04 01:27:22 +02:00
474ab893d6 Implemented Bake Props tool for TerrainWorldEditor. 2025-04-04 01:14:53 +02:00
5d3aa83ffa Rebuild chunks in TerrainWorld::prop_add(). 2025-04-04 01:14:23 +02:00
fb08c49ab6 Make sure the prop meshes are cleared from previous runs before returning early in TerrainPropJob. 2025-04-04 01:13:50 +02:00
5ad5d65705 Call emit_changed() in TerrainChunk setters. Also a setter fix. 2025-04-04 00:32:30 +02:00
1e4aaa412a Set up baking tools page in TerrainWorldEditor. 2025-04-03 22:56:15 +02:00
d231b16ed0 Mark last backported commit. 2025-03-31 13:30:23 +02:00
56ce6911eb Moved the static_assert in GLOBAL_CACHED to the top. 2025-03-31 12:55:17 +02:00
35b072e1df Reworked the new GLOBAL_GET_CACHED macro. 2025-03-31 12:51:27 +02:00
f3b8330182 Use HAS_TRIVIAL_DESTRUCTOR macro instead of std::is_trivially_destructible. 2025-03-31 10:44:03 +02:00
2746b8f1e2 Fix compile. 2025-03-31 09:42:19 +02:00
70ec81c137 Backported move semantics from godot 3.x. with some changes.
Original commit:
d549b98c5c
2025-03-31 09:33:17 +02:00
b819224539 Fix compile. 2025-03-31 08:28:30 +02:00
lawnjelly
8a735a3c02 Physics Interpolation - Move 3D FTI to SceneTree
Moves 3D interpolation from `VisualServer` to the client code (`SceneTree`).
Complete rework of 3D physics interpolation, but using the same user API.
2025-03-31 08:23:44 +02:00
lawnjelly
dedeec9492 Simplified ObjectDB::get_instance() casting
Reduces boiler plate by templating `get_instance()` for the cast type, while remaining backward compatible to the existing functionality.
2025-03-31 08:02:27 +02:00
ae19a49a1e Make drop_mouse_on_gui_input_disabled GLOBAL_GET cached. 2025-03-31 08:01:29 +02:00
Pedro J. Estébanez
9f85d89056 Drop mouse focus and over when gui input is globally disabled
Since some porjects may be relying on the former behavior, this is opt-in via a new project setting, disabled by default, but enabled for new projects, since it's the new standard behavior (and the only one in 4.0).
2025-03-31 07:59:37 +02:00
lawnjelly
d149a59513 Add GLOBAL_GET cached macros.
GLOBAL_GET is an expensive operation which should not be used each frame / tick.
This PR adds macros which do a cheaper revision check, and only call the expensive GLOBAL_GET when project settings have changed.

Co-authored-by: Lukas Tenbrink <lukas.tenbrink@gmail.com>
2025-03-31 07:58:52 +02:00
Yufeng Ying
3b688f6162 Prevent inlining error print functions. 2025-03-31 07:45:49 +02:00
axewizardbgg
d8f68fa380 Docs: BitMap: Added description for opaque_to_polygons method 2025-03-31 07:45:28 +02:00
lawnjelly
0269f45fe5 Physics Interpolation - fix client interpolation pump
Client interpolation pump is moved AFTER the physics tick, after physics objects have been moved.
This is necessary because the `current` transform is also updated during the pump.
2025-03-31 07:45:07 +02:00
lawnjelly
f44455c377 Physics Interpolation - Auto-reset on set_physics_interpolation_mode()
Fixes historical bug where auto-reset wasn't working correctly.
Also fixes process modes on Cameras when mode is changed.
2025-03-31 07:42:42 +02:00
320da06260 Fix windows build. 2025-02-14 19:51:19 +01:00
f56182466f Fix compile on windows, osx, and javascript. (Hopefully.) 2025-02-14 19:43:35 +01:00
b248a28ccf More tweaks to TerrainChunk's new scene api. 2025-02-14 18:02:32 +01:00
9841d6fdc8 Small variable name tweak. 2025-02-14 17:51:08 +01:00