Commit Graph

2062 Commits

Author SHA1 Message Date
556de2db50 TerrainChunkDefault lod change code cleanups and improvements. Also set scenario on entering and exiting the tree. 2025-04-18 20:22:17 +02:00
61a43daa45 Removed unnecessary check. 2025-04-18 20:21:09 +02:00
64696b534b Don't destroy and re-generate meshes in TerrainChunk's _enter and _exit_tree, just hide / show them. This makes scene tab swithing with TerrainWorlds in the editor a lot simpler. 2025-04-18 19:50:17 +02:00
ae18822f95 Added PropDataESSEntityWorldSpawner3D class. Made PropDataESSEntityWorldSpawner3DArea and PropDataESSEntityWorldSpawner3DSingle inherit from it. 2025-04-18 13:28:10 +02:00
7681d71704 Temporary comments. 2025-04-15 10:32:31 +02:00
526209c1a4 Re-extracted class docs. 2025-04-15 10:19:14 +02:00
52d17cacd2 Added prop support for PropDataESSEntityWorldSpawner3DArea. 2025-04-15 10:18:20 +02:00
9c3ac7c4f8 Added prop support for ESSEntityWorldSpawner3DSingle. 2025-04-15 10:03:21 +02:00
1d37a1cf28 Fix drawing line colors in WorldSpawner3DSpatialGizmoPlugin. Also better colors. 2025-04-14 18:40:16 +02:00
d03decb983 Fix the spawn position line height in WorldSpawner3DSpatialGizmoPlugin. 2025-04-14 18:16:36 +02:00
bdda27e116 Fix drawing the spawn slots in ESSEntityWorldSpawner3DArea's gizmo. 2025-04-14 18:16:13 +02:00
df9be4f17d Implemented spawn entry editing to ESSEntityWorldSpawner3DArea. 2025-04-14 16:30:55 +02:00
2a249c8f25 ESSEntityWorldSpawner3DArea initial implementation. 2025-04-14 16:08:44 +02:00
12eade8158 Fix the type of the respawn time properties in ESSEntityWorldSpawner3DSingle. 2025-04-14 16:07:50 +02:00
c59cf944c2 Zero out the entity's ObjectID in ESSEntityWorldSpawner3DSingle when exiting tree. 2025-04-14 14:40:27 +02:00
48d68c0896 Renamed the level property to entity_level in ESSEntityWorldSpawner3DSingle. 2025-04-14 14:39:36 +02:00
a61442d567 Added spawn_area_extents property to ESSEntityWorldSpawner3DArea and implemented an editor gizmo for it. 2025-04-14 13:50:31 +02:00
79f54f71bf Don't use octahedral compression in the prop module's gizmos. 2025-04-14 13:49:29 +02:00
885089ad1f Added ESSEntityWorldSpawner3DArea class. 2025-04-14 12:28:51 +02:00
7b321db257 Re-extracted class docs. 2025-04-14 12:28:40 +02:00
ffe171e840 Implemented respawn support for ESSEntityWorldSpawner3DSingle. 2025-04-14 09:26:19 +02:00
b88b25409b Now Entities can store their spawner's ObjectID. 2025-04-14 09:25:34 +02:00
5c105a15fb Call spawn as deferred in ESSEntityWorldSpawner3DSingle instead of requesting a deferred entity spawn. 2025-04-14 08:27:24 +02:00
12b42eaab1 Rotate the text by 180 degrees in WorldSpawner3DSpatialGizmoPlugin. 2025-04-13 21:25:32 +02:00
b2f33108fa Added an editor gizmo plugin for TiledWalls so they can be selected in the spatial editor directly. 2025-04-13 21:07:01 +02:00
d2ba6585c4 Implemented ESSEntityWorldSpawner3DSingle. 2025-04-13 20:43:48 +02:00
b718228923 Write the spawner's name to the world in the WorldSpawner3DSpatialGizmoPlugin. 2025-04-13 19:58:55 +02:00
b792287b6e Added a Spatial Gizmo plugin for ESSEntityWorldSpawner3D. 2025-04-13 19:18:05 +02:00
26c53fd16d Added 3 new helper classes for the entity spell system. ESSEntityWorldSpawner3D, ESSEntityWorldSpawner3DSingle, ESSEntityWorldSpawner2D. 2025-04-13 18:54:12 +02:00
570bcaee0f Re-extracted class docs for terraman. 2025-04-13 18:52:58 +02:00
a21b5a843e Re/enabled the entity_spell_system's editor plugin, and disabled it's tool menu item. 2025-04-13 18:25:58 +02:00
c16c5d35f4 Bind is_priority_generation bool in TerrainWorld. Also set it to false in the constructor, but set it to true when eneteeing tree if the world already has chunks loaded. 2025-04-12 22:53:18 +02:00
9289351284 Also check whether chunks are building when doing a priority generation. 2025-04-08 09:17:12 +02:00
82218be991 Fix visibility toggling in TerrainChunkDefault even if lods are disabled. 2025-04-08 08:58:21 +02:00
97380e3f53 Only build the chunk in TerrainWorld::chunk_add() if the world is in the tree. 2025-04-08 08:32:37 +02:00
d99577365c Call chunk's enter_tree and set voxel world on entering the tree in TerrainWorld. 2025-04-08 08:31:53 +02:00
4d23866ac5 Call TerrainWorldDefault's _create_chunk() and _setup_chunk() in TerrainWorldBlocky. 2025-04-08 08:31:00 +02:00
4c2ae4dc8b Fix error message on startup. 2025-04-07 22:13:14 +02:00
bd476c1d66 Split _create_chunk() to _create_chunk() and _setup_chunk() in TerrainWorld.
Unfortunately this is a breaking change. (Very slight though.)
Now _create_chunk() should be used to initialize serialized properties
in chunks. The new _setup_chunk() virtual should be used to initialize
other non/serialized properties (like meshers).
Fortunately the only thing that needs to be done is to split old
_create_chunk() into two.
Note that when using procedural generation, the old way should just work
without any updates necessary. This change is only needed when loading
of chunks is desired.
2025-04-07 22:06:04 +02:00
32487af081 Implement TerrainWorldChunkDataManagerStaticFolderResources. 2025-04-07 22:01:12 +02:00
bb32eab4ca Fix typo. 2025-04-07 22:01:04 +02:00
b7bfd13ec4 Added a force save all chunks button to TerrainWorld's inspector if a TerrainWorldChunkDataManager is set. 2025-04-07 17:37:26 +02:00
9fefe64c3b Added force_save_all_chunks() method to TerrainWorld. 2025-04-07 17:30:29 +02:00
c64e9e1131 Added chunk saving api to TerrainWorldChunkDataManager. 2025-04-07 17:27:47 +02:00
117f6cffd1 Now TerrainWorld won't save it's chunks into scenes in the editor anymore if a TerrainWorldChunkDataManager is set. 2025-04-07 17:04:57 +02:00
5dbfdac48e Now TerrainWorld uses TerrainWorldChunkDataManagers if they are available. 2025-04-07 12:53:51 +02:00
e88789ba9e Added TerrainWorldChunkDataManager class to support loading and saving TerrainWorld chunks dynamically to and from disk. 2025-04-07 12:53:00 +02:00
9bb5495776 Re-extracted class doc for PropInstance. 2025-04-07 12:49:51 +02:00
7e999a3d5d Added a simple gizmo for PropInstances. This makes PropInstances selectable with the mouse in the Spatial editor. 2025-04-07 01:46:01 +02:00
7cfebd1eaf Now PropInstance inherits from VisualInstance. Set up it's AABB calculation. 2025-04-07 01:44:43 +02:00