Commit Graph

473 Commits

Author SHA1 Message Date
ad311181c8 Switched to the new scriptable terrain meshing system. 2022-02-09 12:54:46 +01:00
e0b2ac8d79 Material cache keys weren't supposed to be serialized. I did keep , PROPERTY_USAGE_EDITOR, so they are visible in the editor. It's nice to have for debugging purposes. 2022-02-09 12:53:44 +01:00
a01988fb06 Update initialization of all 3 VoxelWorld implementations to use the new style. (It is not yet enabled.) 2022-02-09 12:45:32 +01:00
277182a73e Add note. 2022-02-09 10:25:06 +01:00
8d7289b0b3 Changed the default lod stup for VoxelWorldDefault::_create_chunk, as nothing supports normal lods in this module. (Normal lods would be lods created with the Transvoxel algorithm for example.) 2022-02-09 10:24:49 +01:00
edfd23365a Also mention 5 suggested material to VoxelLibrary::prop_material_lod_get's error message. 2022-02-09 10:20:43 +01:00
048469148a Better error messages when no materials are set into the VoxelLibrary. 2022-02-09 01:08:20 +01:00
e5bae8fb7e Remove unnecessary check. 2022-02-09 00:37:19 +01:00
1486959067 Fix SpatialMaterial support for the merger libraries. 2022-02-09 00:34:54 +01:00
e9269bc0b3 Also update VoxelWorldDefault::_create_chunk. 2022-02-09 00:19:26 +01:00
f1e10c89b0 Ported the phase_terrain_mesh from Terraman to the terrain job. I added it as a new method for now. I haven't yet switched to it. 2022-02-09 00:15:43 +01:00
53f3ff60c1 Ported the helper methods for the terrain job from Terraman. Did not touch the ectual meshing code yet, 2022-02-09 00:05:16 +01:00
9940dedb88 Port lod index parameter to VexelMesher from Terraman. 2022-02-09 00:04:24 +01:00
96d00c4068 Also port the new methods that are required for caching from Terraman to VoxelLibrary. 2022-02-08 23:41:17 +01:00
c694c04768 Ported TerrainMesherJobStep from Terraman 2022-02-08 22:53:50 +01:00
3410575387 Ported the Material Cache and the VoxelLibraryMergerPCM classes from Terraman. 2022-02-08 22:47:06 +01:00
fe4a83b909 Changed the Voxelman prefix of the classes to just Voxel as suggested by filipworksdev. Closes #5. Thanks. 2022-02-08 12:36:37 +01:00
950453f9eb Fix typo. 2022-02-07 00:25:51 +01:00
abe5db00cb Work on fixing compile for 4.0. 2022-02-07 00:15:44 +01:00
9ea3cf8de2 Fixed compile for recent versions of 3.x. Closes #4, thanks! 2022-02-06 18:10:10 +01:00
9253cc53c6 Fixed compile when mesh_data_resource is present, and props is not. Closes #3, thanks! 2021-02-08 15:41:09 +01:00
d9c523de59 Fix standalone compilation. Closes #2 2021-02-08 15:34:08 +01:00
547aeaad4d Fix compile for 4.0. 2021-02-06 11:51:50 +01:00
fd464c042c Work on BlockVoxelStructure. 2020-10-30 02:36:34 +01:00
9a151ffc6c Same treatment to methods in VoxelManLibrary. 2020-10-27 23:24:24 +01:00
37346845b4 Fix indent in readme.md sample code. Also remove trailing ;. 2020-10-27 19:20:08 +01:00
f4ba38ecd0 Same treatment to the mesh related methods in VoxelChunkDefault. 2020-10-27 19:04:20 +01:00
9c5aed85df Did the same to the generation queue related methods in VoxelWorld. 2020-10-27 18:36:10 +01:00
1da900a5e8 Same treatment to the chunk related methods in VoxelWorld. I kept the virtuals the same. 2020-10-27 18:22:18 +01:00
82d1f46e2e Fix typo. 2020-10-27 16:42:51 +01:00
be363ca7de Same change to voxel structure related methods in VoxelWorld. 2020-10-27 16:40:56 +01:00
494fe18746 add_prop -> prop_add in VoxelWorld. 2020-10-27 13:26:59 +01:00
0f69a9dce3 Same treatment to light related methods in VoxelWorld. 2020-10-27 13:24:40 +01:00
7e647cf8ba Same treatment to the area related methods in VoxelWorld. 2020-10-27 13:05:20 +01:00
8124f19c5d Same treatment to props related methods in VoxelChunk. 2020-10-27 12:56:34 +01:00
2dec05f80f Also renamed the channel-related methods in VoxelChunk. 2020-10-27 12:45:15 +01:00
1d1fdf5c56 Same treatment to jobs in VoxelChunk. 2020-10-26 18:29:05 +01:00
851b4efb52 Same change to the collider-related method in VoxelChunk. 2020-10-26 17:24:22 +01:00
98155939c2 Renamed the mesh data resource getters in VoxelChunk to a new format, where the mesh_data_resource in the name is a prefix and not a postfix. This makes VoxelChunk's in engine documentation much more usable. 2020-10-26 16:52:38 +01:00
f14faead25 Add voxel structure storage to VoxelChunk aswell. 2020-10-25 17:05:15 +01:00
7311297906 Chunks that are stored inside worlds in scenes will properly generate their meshes now on load. Had to change _create_chunk a bit, now it will be called for all chunks, and it needs to check whether it has to init jobs or not. 2020-10-24 22:18:23 +02:00
4ecc424b84 VoxelJob should be a inherited from Reference if ThreadPool is not available. 2020-10-24 22:08:39 +02:00
b069d38265 Properly break circular reference if a job gets cancelled while working 2020-10-24 22:04:57 +02:00
0f5158edeb Better _set_voxel_with_tool for the Marching Cubes world. 2020-10-24 17:53:34 +02:00
cd341b9475 Fix typo in comment. 2020-10-24 17:53:14 +02:00
cf370025fc Moved the position calculation from the world editor to a virtual method inside VoxelWorld. 2020-10-24 02:41:32 +02:00
c4eb758d20 Added _THREAD_SAFE_CLASS_ declaration to VoxelChunk and also made job-related methods thread safe. 2020-10-23 19:47:04 +02:00
9824738095 Make sure VoxelPropJob calls next job and sets itself to complete properly on every codepath. 2020-10-20 22:04:29 +02:00
50701f1740 Also add the new lod generation code to the prop job. 2020-10-20 17:10:26 +02:00
6e68267bd0 My mesh utils module is now an optional dependency. The terrarin job will use it to simplify meshes over lod level 4. 2020-10-20 16:29:39 +02:00