Commit Graph

2012 Commits

Author SHA1 Message Date
583298dbfe Now TerrainLights are stored inside chunks (they are also automatically saved with them). Also changed TerrainLight's api to makes use of Vector3i. 2025-02-11 00:38:48 +01:00
eb3ed4fa20 Now props and mesh data resources are saved with the TerrainChunks. 2025-02-10 17:48:11 +01:00
b0177a2c3a Only generate chunks once. 2025-02-10 15:24:16 +01:00
23614770f1 Simplify chunks_set() in TerrainWorld. 2025-02-08 15:55:40 +01:00
42a2979d3e Fix isolevel paint and paint brush tools always allowing chunk creation. 2025-02-08 15:10:23 +01:00
a980238482 Add the new chunk to the generation queue instead of directly calling it's build method in TerrainWorld::chunk_add(). 2025-02-08 14:47:29 +01:00
64a14fee17 Also expose the liquid data in TerrainChunkBlocky. 2025-02-08 14:40:07 +01:00
c9089867f9 Fix typo. 2025-02-08 14:39:35 +01:00
9142f7c806 Implemented the spawn chunks and remove chunks tool in TerrainWorldEditor. 2025-02-08 14:23:23 +01:00
4886ff454b Call TerrainChunk's build() after it's added to a World manually. 2025-02-08 14:22:55 +01:00
4ac6095509 Added a new helper method to TerrainWorld. 2025-02-08 14:22:31 +01:00
d0fa4ba194 Clear the material cache data in TerrainChunk::_exit_tree(). 2025-02-08 14:22:03 +01:00
a2784fd2a0 Implemented the gui for the chunk spawn and chunk remove tools in TerrainWorldEditor. 2025-02-08 13:14:43 +01:00
ebcac318e7 TerrainWorldEditor variable name tweaks. 2025-02-08 12:50:26 +01:00
12214cb8c7 Fix potential hang on exit due to deadlocks. 2025-02-08 11:24:42 +01:00
b264a837a8 Implemented the paint picker tool in TerrainWorldEditor. Also improved the editor's Button signal setup. 2025-02-08 09:59:41 +01:00
175f67fd74 Tewaks to the main tool labels in TerrainWorldEditor. 2025-02-08 09:11:17 +01:00
fb9c71726c Implemented the paint picker tool's ui in TerrainWorldEditor. 2025-02-08 09:10:54 +01:00
4ac888c7af Add the paint brush tool settings buttons to the proper container in TerrainWorldEditor. 2025-02-08 08:37:10 +01:00
0762caaf20 Reordered the main tool buttons in TerrainWorldEditor. 2025-02-08 08:31:29 +01:00
33bd758806 Removed the add and remove single tools from TerrainWorldEditor as they are not very useful for a terrain engine. 2025-02-08 08:28:38 +01:00
da336fdb73 Only show the surface selection when the paint brush is active in TerrainWorldEditor. 2025-02-08 08:04:13 +01:00
a46997b87f Added the ability to erase using the paint brush in TerrainWorldEditor. 2025-02-08 07:58:14 +01:00
f7a9f5201f Added liquid mode to the isolevel brush and paint brush tools in TerrainWorldEditor. 2025-02-08 07:49:26 +01:00
17e048a044 Added a new helper method to TerrainWorld. 2025-02-08 07:44:55 +01:00
16d62d3a34 Chunk remover tool initial setup in TerrainWorldEditor. 2025-02-07 14:45:40 +01:00
3f267dcbfc Make the expected tool settings shown by default in TerrainWorldEditor. 2025-02-07 12:58:50 +01:00
1da418523a Spawn brush initial setup in TerrainWorldEditor. 2025-02-07 12:57:16 +01:00
ba6a112efb Reorganized the tools in TerrainWorldEditor. Also made the Isolevel Brush the default. 2025-02-07 12:50:59 +01:00
ae987b83e9 Renamed the add and remove tools to add single and remove single voxel in TerrainWorldEditor. Also improved their gui a bit. 2025-02-07 12:47:06 +01:00
aeae3198ba Disable allow chunk creation for the paint brush and isolevel brush tools by default in TerrainWorldEditor. A new chunk spawner tool will be added instead soon. 2025-02-07 12:40:05 +01:00
70fe973810 Invert the logic of the isolevel brush smoothness calculation so it works as expected. 2025-02-07 12:34:54 +01:00
6539b25257 Start at max isolevel brush smoothness in TerrainWorldEditor. 2025-02-07 12:30:33 +01:00
5c2f5da950 Fix isolevel brush smoothness calculation in TerrainWorldEditor. 2025-02-07 12:27:12 +01:00
58698e2971 Allow 0 as the isolevel brush strength and smoothness in TerrainWorldEditor. 2025-02-07 12:19:08 +01:00
39b3a12b1a Handle a missing case when setting voxels in TerrainWorld. 2025-02-07 12:17:11 +01:00
39cb3e398f Reset the mesher's lod index in _reset() in TerrainTerrainJob. This fixes subsequent mesh generations. 2025-02-07 10:49:40 +01:00
2024a33ee9 Implemented chunk material invalidation support for TerrainLibraryMergerPCM. 2025-02-07 10:08:22 +01:00
e11e75e5ea Unlock the mutex after the rects are refreshed in the material cache in TerrainLibraryMergerPCM. 2025-02-07 08:49:11 +01:00
2688162cf9 Optimized editing in TerrainWorldEditor. 2025-02-06 17:42:53 +01:00
c13a4d08a5 Use the new immediate build mode in TerrainWorld's set_voxel_at_world_data_position(). 2025-02-06 17:22:42 +01:00
6be11c2bff Implemented an immediate build mode for TerrainChunk. 2025-02-06 17:22:10 +01:00
952553e9ad Clear meshes as needed in TerrainTerrainJob. 2025-02-06 17:21:35 +01:00
4a2d4af692 Clear meshes as needed in TerrainPropJob. 2025-02-06 17:21:24 +01:00
ac6be71368 Codestyle fix. 2025-02-06 17:20:58 +01:00
e435adde65 Codestyle fix. 2025-02-06 17:20:46 +01:00
26b6fc89f8 Fix crash on shutdown. 2025-02-05 20:35:32 +01:00
1a5be23b91 Udpate the gizmo size properly in TerrainWorldEditor. 2025-02-05 20:32:09 +01:00
66b98829a1 Optimized UndoRedo usage in TerrainWorldEditor. 2025-02-05 20:22:30 +01:00
b1e386fd73 Implemented the TerrainWorldGizmo. 2025-02-05 14:01:01 +01:00
dbff74222c Renamed the new gizmo. 2025-02-05 11:11:32 +01:00
91f6141b5c Initial gizmo setup for Terraman. 2025-02-05 11:05:42 +01:00
3610209f54 Moved the TerrainWorldEditor to a new folder. Also make sure it's only compiled in tools builds. 2025-02-05 09:35:16 +01:00
d345ddb9e1 Implemented the paint brush mode in TerrainWorldEditor. 2025-02-04 20:19:50 +01:00
4114c23649 Implemented the isolevel brush in TerrainWorldEditor. 2025-02-04 18:27:35 +01:00
9cd4da72c8 Added new helper methods to TerrainWorld. 2025-02-04 18:26:01 +01:00
0fd99be95a Added a strength slider for the isolevel brush in TerrainWorldEditor. 2025-02-04 14:17:43 +01:00
7e54c7d634 Added a button for setting the allow chunk creation option for the isolevel brush in TerrainWorldEditor. 2025-02-04 13:30:55 +01:00
7120ab24fd Include cleanups. 2025-02-04 13:22:18 +01:00
c199161646 Removed set_voxel_with_tool from TerrainWorld. 2025-02-04 13:10:28 +01:00
4201113680 Initial input handling refactor for TerrainWorldEditor. 2025-02-04 13:08:35 +01:00
45e5c77395 Added the option to select the channel in TerrainWorldEditor's Isolevel Brush. 2025-02-04 11:28:12 +01:00
6c7d5c9049 Gui and callback setup for the isolevel brush in TerrainWorldEditor. 2025-02-04 10:00:06 +01:00
f25c008f6d Small tweaks and reorganization in TerrainWorldEditor. 2025-02-04 09:02:19 +01:00
bb59a03e06 Small tweak. 2025-02-03 23:02:41 +01:00
c3b468027a TerrainWorldEditor cleanups and some initial rework for it's new functionality. 2025-02-03 18:19:14 +01:00
0f8a398f95 Tidy up the Isolevel clider of the TerrainWorldEditor. 2025-02-03 14:27:58 +01:00
a138cb10a4 Moved the control buttons of the TerrainWorldEditor to the side panel. 2025-02-03 14:25:35 +01:00
13a691bb37 Fix compile. 2025-02-03 14:16:21 +01:00
1bc26692f6 Fix variable names. 2025-02-03 14:12:52 +01:00
39c2c615a9 Fix property names. 2025-02-03 14:11:35 +01:00
857b010951 Use icons for the TerrainWorldEditor's buttons. 2025-02-03 14:06:53 +01:00
Travis Wrightsman
7cbdde61a6 Enable builds with miniupnpc API 18
Backports https://github.com/godotengine/godot/pull/97139 without
bumping the embedded miniupnpc library.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2025-02-03 13:03:57 +01:00
fe7f931dc8 Added next_column*() helper methods to PreparedStatement. 2024-12-11 16:59:27 +01:00
9da9dbc14c Now get_cell and is_cell_null in Sqlite3QueryResult will do a bounds check via error macros.
This means indexing errors will not result in a crash due to vectors
using CRASH_BAD_INDEX error macros.
2024-12-11 16:42:27 +01:00
e210e8dc0a Added get_stored_row_count() and get_cell_count() helper methods to QueryResult. 2024-12-11 16:34:00 +01:00
9e93b4426a Added get_next_cell*() helper methods to QueryBuilder. 2024-12-11 15:04:23 +01:00
c9ca35accd Added get_last_insert_rowid() method to PreparedStatement. 2024-12-11 13:27:57 +01:00
a52e1f168a Re-extracted class docs. 2024-12-10 23:00:02 +01:00
323016fcbe Added new classes to the web module's config.py. 2024-12-10 22:51:15 +01:00
1788749a8f Added a new LocaleSetupWebServerMiddleware. 2024-12-10 22:51:00 +01:00
9ee96b25f8 HTMLTemplateMultilang now also tries to use the locale helper method in WebServerRequest. 2024-12-10 22:36:30 +01:00
7e67160d53 Implement locale helper methods to WebServerRequest. 2024-12-10 22:29:12 +01:00
e0fc57e12a Bind methods in HTMLTemplateMultilang. 2024-12-10 22:28:19 +01:00
6bad54c4d2 Created a HTMLTemplateMultilang class. It can automatically select between multiple HTMLTemplates. 2024-12-10 22:13:56 +01:00
14100c3ac0 Added a method to get all users from the UserDB and UserManagers. 2024-11-20 21:57:35 +01:00
1a45e6371a Added the previous commit as patch. 2024-11-14 20:10:58 +01:00
ad572cdfdb Reapply SQLITE_NO_FCHOWN Pandemonium sqlite patch. 2024-11-14 20:07:24 +01:00
8022d4ab90 Updated sqlite to version 3.47.0. Also added a VERSION.txt to it's folder. 2024-11-14 20:02:59 +01:00
Rémi Verschelde
672cea4d08 CI: Update Ubuntu runners to 24.04, but keep 22.04 for Linux builds
Pin clang-format to version 16, and black to 24.10.0.
Keep using Ubuntu 22.04 for Linux builds for portability.
2024-11-13 23:48:04 +01:00
Capital
3fe6da64d4 Backport 65910 for Godot 3 2024-11-13 23:20:38 +01:00
a59cb3956b Backported from godot 4: Make SkeletonIk3D node usable
- warriormaster12

ddf93f3f59
2024-09-30 18:55:39 +02:00
506a0756c5 Update gdnative api. 2024-09-30 17:26:29 +02:00
6ac0c2bbc0 Undo unecessary breaking change to gdnative. 2024-09-30 16:26:52 +02:00
ee1e40f1b0 Renamed looking_at to create_looking_at, and from_scale to create_from_scale in Basis. 2024-09-30 16:17:19 +02:00
c09474ccd8 Re-extracted class docs. 2024-09-20 10:03:06 +02:00
b0cf8c6859 Use the engine's math singleton in proctree.cpp. 2024-09-08 17:33:30 +02:00
f73b16470a Simple initial docs for ProceduralTreeMesh. 2024-09-08 17:10:32 +02:00
36622694ee Re-extracted class docs. 2024-09-08 17:02:09 +02:00
5c24f0ba90 Added an icon for procedural tree mesh. 2024-09-08 17:00:16 +02:00