|
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 |
|
|
5a9b99c199
|
Missing guards, and fixed an ERR_FAIL_INDEX_V.
|
2020-10-12 18:53:35 +02:00 |
|
|
e14bc67da8
|
Implement isolevel support for the voxel editor.
|
2020-10-12 16:39:52 +02:00 |
|
|
33030e485a
|
properly call set_complete in VoxelLightJob. This fixes non-threaded chunk builds.
|
2020-10-08 11:23:27 +02:00 |
|
|
9de15f0b0f
|
Uncomment a mesh data resource check. Also handle if phase gets too high in VoxelTerrarinJob.
|
2020-10-07 11:54:30 +02:00 |
|
|
e42931597c
|
Fix compile for 4.0.
|
2020-10-06 23:15:32 +02:00 |
|
|
0e4e59e970
|
Remove create_mesher and _create_mesher from chunks. Mesher creating now should be handled by the world itself in _create_chunk. This makes worlds able to use different chunk mesher setups for different parts of a world. Also this cust down the amount of classes that you need to create if you are implementing a new mesher.
|
2020-10-06 19:43:49 +02:00 |
|
|
3add3daef4
|
VoxelPropJob now works.
|
2020-10-06 19:24:58 +02:00 |
|
|
989e82b332
|
Small cleanups.
|
2020-10-06 12:29:16 +02:00 |
|
|
8c06a778f2
|
Now generation works again. Also removed some stray debug prints, and small cleanups.
|
2020-10-06 00:05:06 +02:00 |
|
|
14735b8569
|
Fix running the first job.
|
2020-10-05 22:34:11 +02:00 |
|
|
08c2fc8fc1
|
More work on the logic.
|
2020-10-03 21:58:24 +02:00 |
|
|
eb1d55f05b
|
More work on the logic, and api fixes.
|
2020-10-03 17:18:43 +02:00 |
|
|
235943f7ca
|
Removed the old meshing implementation, and replaced most logic to the new one. The code compiles, but it won't work for now. Also other cleanups.
|
2020-10-02 23:47:39 +02:00 |
|
|
0db9475db1
|
Added get_current_job_index and next_job tp VoxelChunk.
|
2020-10-02 16:49:36 +02:00 |
|
|
46132202b0
|
Added generation specific process and physics process to VoxelChunk and VoxelJob.
|
2020-10-02 16:45:08 +02:00 |
|
|
43bb7dfa66
|
Add back the next_phase call into the new jobs.
|
2020-10-02 14:53:45 +02:00 |
|
|
3f04002453
|
Fix errors with bindings
|
2020-10-02 12:24:00 +02:00 |
|
|
a25862527c
|
More work on VoxelJob's api.
|
2020-10-02 12:19:24 +02:00 |
|
|
643f76f7e8
|
Also add the reset code to VoxelPropJob.
|
2020-10-01 23:51:10 +02:00 |
|
|
8ff53e4299
|
Added VoxelPropJob.
|
2020-10-01 23:43:04 +02:00 |
|
|
9cca71355f
|
Added VoxelLightJob.
|
2020-10-01 21:44:59 +02:00 |
|
|
3f23be12bc
|
VoxelTerrarinJob now has the necessary code in it as methods.
|
2020-10-01 21:31:39 +02:00 |
|
|
bf17467879
|
Clear the 2 vectors in the destructor.
|
2020-10-01 21:05:37 +02:00 |
|
|
394214b758
|
Added the meshers and liquid meshers api from VoxelChunk into VoxelTerrarinJob.
|
2020-10-01 21:01:39 +02:00 |
|
|
579e4263d0
|
Added VoxelTerrarinJob.
|
2020-10-01 20:57:42 +02:00 |
|
|
be2cd7a4b3
|
Added a vector of jobs and an api for it into VoxelChunk.
|
2020-10-01 20:49:54 +02:00 |
|
|
71f69666cd
|
Moved VoxelJob to a new folder. Also added generate_ao and generate_random_ao from voxel chunk into it.
|
2020-10-01 20:18:43 +02:00 |
|
|
6f8e54879b
|
Added channel allocation queries to VoxelChunk.
|
2020-09-05 20:06:23 +02:00 |
|
|
142809d0cb
|
Add an alternative type and isolevel to the default channels enum.
|
2020-08-21 20:02:47 +02:00 |
|
|
5938f7f783
|
Now the type and isolevel channels are customizable in the meshers.
|
2020-08-21 20:02:22 +02:00 |
|
|
5358c99646
|
Now VoxelChunkDefault supports coloring MeshDataResources that span multiple chunks.
|
2020-08-16 18:20:16 +02:00 |
|
|
d8cf2af059
|
Same change to BUILD_PHASE_MESH_DATA_RESOURCES aswell.
|
2020-08-04 15:36:03 +02:00 |
|
|
6af711322d
|
BUILD_PHASE_TERRARIN_MESH now can also distribute it's calculations onto multiple frames.
|
2020-08-04 15:30:34 +02:00 |
|
|
469927cc3b
|
Now BUILD_PHASE_COLLIDER, and BUILD_PHASE_LIGHTS can both distribute their work onto multiple frames.
|
2020-08-04 14:53:10 +02:00 |
|
|
0a4d07c582
|
The terrarin mesh setup phase can now distribute it's calculations onto multiple frames.. Also small fixes to the single threaded logic.
|
2020-08-04 14:40:40 +02:00 |
|
|
b0a888d595
|
Removed limit execution time, and made everything a simple stub when ThreadPool is not present.
|
2020-08-04 10:52:27 +02:00 |
|
|
f1bee24803
|
Set start time in execute().
|
2020-08-04 10:21:01 +02:00 |
|
|
919620031b
|
Fix compile if ThreadPool is not present.
|
2020-08-04 10:08:04 +02:00 |
|
|
10b588f576
|
Cancel the job if complete is false.
|
2020-08-04 09:51:16 +02:00 |
|
|
bf58b94a99
|
Removed the thread from VoxelChunkDefault.
|
2020-08-04 09:49:40 +02:00 |
|
|
cff203fc49
|
Now the threading is handled by ThreadPool.
|
2020-08-04 09:44:18 +02:00 |
|
|
b95f055acd
|
Add lod falloff property to VoxelWorldDefault. Also improved _update_lods().
|
2020-08-03 19:05:40 +02:00 |
|
|
768728139e
|
Fix compile for 4.0.
|
2020-07-29 00:02:42 +02:00 |
|
|
f8663879dd
|
bake_mesh_array_uv in VoxelChunk now can't index outside the image's size.
|
2020-07-20 21:21:09 +02:00 |
|
|
c9ee935af3
|
Added an add_mesh_data_resource variant to VoxelChunk, also added the apply_voxel_scale parameter to them. Also added a few transform helpers.
|
2020-07-20 01:06:34 +02:00 |
|
|
698f6083ea
|
Add MESH_DATA_RESOURCE_PRESENT around a piece of code.
|
2020-07-18 14:19:13 +02:00 |
|
|
18ad178b1e
|
Moved the create_meshers call from BUILD_PHASE_SETUP to _build. This causes it to run on the main thread. This is the first time I got a crash related to this, also the engine docs suggests that only scenetree manipulation is unsafe from threads, so this might have been caused by something else.
|
2020-07-18 13:12:29 +02:00 |
|
|
dee38b1588
|
Fix light's position, as it expects it's coordinates in voxel world data space. Will probably change this eventually.
|
2020-07-07 18:01:21 +02:00 |
|
|
5ee5b12a4e
|
Update _bake_light in VoxelChunkDefault to use the new apis.
|
2020-07-07 17:35:44 +02:00 |
|
|
eac68265c1
|
Fix transforms in add_prop.
|
2020-07-07 17:02:30 +02:00 |
|
|
b8aaaf499b
|
Implemented add_prop in VoxelWorld. (Some of the transform calculations still need to be fixed.)
|
2020-07-07 02:22:45 +02:00 |
|
|
6f7c4fbc8a
|
Removed VoxelChunkPropData, the api of VoxelWorld, and VoxelChunk now uses PropDatas directly.
|
2020-07-07 01:06:46 +02:00 |
|
|
1355c301e8
|
Update draw_debug_mdr_colliders's logic to use the new api. Also fix error spam when a mesh data doens't have a collider.
|
2020-06-30 20:28:37 +02:00 |
|
|
3190217284
|
Moved simple collider storage from VoxelChunkDefault to VoxelChunk and separated it from the mesh data resource api.
|
2020-06-30 18:55:50 +02:00 |
|
|
138614f743
|
Update MeshDataResource offsets, as now they are Transforms.
|
2020-06-30 15:24:11 +02:00 |
|
|
a4b5400a4e
|
Fix debug collider offsets.
|
2020-06-30 15:10:48 +02:00 |
|
|
7777056af3
|
Fix collider transform.
|
2020-06-30 11:59:22 +02:00 |
|
|
bb2f13b075
|
Small improvements. Also added commented out code for debugging the terrarin meshes (They will need to be converted be lines).
|
2020-06-29 23:44:54 +02:00 |
|
|
b54a1021d4
|
Moved away from using ImmediateGeometry for debug meshes. Also implemented debugging mdr colliders.
|
2020-06-29 23:08:52 +02:00 |
|
|
2e69796d08
|
Implement collider transforms.
|
2020-06-28 21:55:00 +02:00 |
|
|
9e2d71169b
|
Add prop uv rect query into the library, and make add_mesh_data_resource use it.
|
2020-06-28 21:31:26 +02:00 |
|
|
1996f60f0f
|
Fix indexing.
|
2020-06-28 21:30:26 +02:00 |
|
|
21d135fb0b
|
Now chunk can only have one prop mesher.
|
2020-06-28 20:04:40 +02:00 |
|
|
70d9cdf6db
|
Removed unused member.
|
2020-06-28 19:16:11 +02:00 |
|
|
0138c02bf8
|
Implemented meshing chunk's mesh data resources.
|
2020-06-28 19:02:49 +02:00 |
|
|
cb6d8f5156
|
Added mesh data resources to VoxelChunk.
|
2020-06-28 16:57:53 +02:00 |
|
|
be4876c2f1
|
Fix compile if the props module isn't present.
|
2020-06-27 18:25:23 +02:00 |
|
|
a991de9d2e
|
Moved PropData to the props modue.
|
2020-06-27 17:04:40 +02:00 |
|
|
78be4a6666
|
A bit more work on props.
|
2020-06-23 19:32:37 +02:00 |
|
|
7aa0edf98e
|
Work on updating the prop meshing implementation (does not work yet).
|
2020-06-23 14:30:49 +02:00 |
|
|
19a255c4dd
|
Fix typo.
|
2020-06-23 01:13:04 +02:00 |
|
|
15659929b2
|
Added a few const qualifiers.
|
2020-06-23 01:05:41 +02:00 |
|
|
88ab910eb8
|
Brought back the old Prop implementation, and PropTool, because not only this implementation was already done, it will work better than spawning possibly thousands of nodes with the props module, but I also found a way to eventually make it more user friendly.
|
2020-06-22 21:49:58 +02:00 |
|
|
b88e430950
|
Remove unused import.
|
2020-06-20 22:07:50 +02:00 |
|
|
7219d7b2d4
|
Added a Cubic chunk and World.
|
2020-06-12 19:34:47 +02:00 |
|
|
7c95171944
|
Added a MarchingCubes World and Chunk.
|
2020-06-12 18:36:00 +02:00 |
|
|
7c93cc8f52
|
VoxelWorldDefault will not update lods automatically for now.
|
2020-05-23 21:59:58 +02:00 |
|
|
1d51be2f0b
|
Moved 4.0 compatibility code into a new defines.h (like in ESS).
|
2020-05-23 10:34:47 +02:00 |
|
|
703acd1b56
|
Fix world to voxel calculations when the voxel scale is not 1.
|
2020-05-19 00:50:19 +02:00 |
|
|
edce32b190
|
Fix compile for 4.0.
|
2020-05-16 21:32:02 +02:00 |
|
|
19f3c1f8ff
|
Fix compile for javascript.
|
2020-04-26 00:34:34 +02:00 |
|
|
af0c4d6586
|
add_chunk will error out now if a chunk is already owned by an another world. Also smaller improvements to set_chunks and the exit tree notification.
|
2020-04-22 15:57:00 +02:00 |
|
|
a2a9c1f714
|
Fix an in-editor scene-saving related crash.
|
2020-04-22 12:35:48 +02:00 |
|
|
9475986ee0
|
Added is_inside_tree() property to VoxelChunk.
|
2020-04-22 12:33:14 +02:00 |
|
|
b970c86264
|
Hide a few properties from the editor, and also from serialization.
|
2020-04-22 12:26:53 +02:00 |
|
|
49af0c9f30
|
Fix potential crash.
|
2020-04-22 12:23:49 +02:00 |
|
|
efd08f69bf
|
Allow the level generator to be null, without failing.
|
2020-04-22 12:21:50 +02:00 |
|
|
a34ceedf6a
|
Now merge_mesh_array and bake_mesh_array_uv will work properly even if the supplied arrays don't have all the expected channels.
|
2020-04-22 12:20:33 +02:00 |
|
|
a306f8cf91
|
Add queued generation the VoxelChunkDefault.
|
2020-04-22 12:16:31 +02:00 |
|
|
f00dd13c43
|
Fix typo.
|
2020-04-20 18:19:33 +02:00 |
|
|
5235641122
|
Only build liquid colliders inside the editor.
|
2020-04-20 17:41:37 +02:00 |
|
|
61c246c069
|
Disabled area generation for now.
|
2020-04-20 17:33:04 +02:00 |
|
|
9635ef064c
|
A bit more work on areas. They don't work properly yet, they might need to have a closed mesh.
|
2020-04-20 17:30:22 +02:00 |
|