Marc Gilleron
4d033a2bb4
Added collision update delay to accelerate edit spam a little.
...
Not easy to use yet, might need the user to use voxel raycast instead of
physics because the hit points will not update often as they sculpt
2021-02-18 19:50:47 +00:00
Marc Gilleron
094bbc1fe1
Refactored API to allow editor inspection and preview
2021-02-14 21:55:31 +00:00
Marc Gilleron
6856f4b491
Moved instancing stuff under a folder
2021-02-07 21:40:55 +00:00
Marc Gilleron
4daf6718f8
Moved instance generation to its own class
2021-02-07 21:30:07 +00:00
Marc Gilleron
22471aafd0
Merge branch 'master' into instancing
2021-02-02 00:00:01 +00:00
Marc Gilleron
b66b9a01a9
Removed VoxelStreamFile
2021-02-01 22:25:25 +00:00
Marc Gilleron
4353939eb4
Move region stuff to a folder
2021-01-31 16:51:42 +00:00
Marc Gilleron
01e5e18922
Implemented VoxelStreamSQLite
2021-01-28 22:02:49 +00:00
Marc Gilleron
0816d1fc09
Merge branch 'master' into instancing
2021-01-23 01:33:11 +00:00
Marc Gilleron
a3bad1af64
Register `VoxelToolBuffer` because otherwise it gets initialized lazily, causing crashes in threads
2021-01-17 22:18:41 +00:00
Marc Gilleron
973cf729cd
Added FastNoise2 for SIMD noise, but it won't be integrated yet.
...
It requires C++17, while Godot uses C++14. I was unable to override it,
and I'm not sure how compatible this will be with the runtime.
At least this would be doable in Godot 4.
2021-01-09 16:35:40 +00:00
Marc Gilleron
c8dcbc55e3
Added FastNoiseLite
2021-01-02 00:59:12 +00:00
Marc Gilleron
a34710f74c
Added VoxelInstancer. First working API, script only.
2020-12-29 22:25:22 +00:00
Marc Gilleron
6d9fd2f8a0
Voxel terrain nodes now have a common abstract base class. Also explicitely made a few other classes abstract
2020-12-18 22:58:41 +00:00
Marc Gilleron
2018625b34
Moved simple generators under a simple/ folder
2020-12-18 21:19:02 +00:00
Marc Gilleron
d52f882ae1
VoxelMap is no longer bound, it had no use in the API
2020-11-21 18:31:11 +00:00
Marc Gilleron
10d6e5bd8a
Script-based generators and streams have their own class, should fix C# API
2020-10-31 22:11:25 +00:00
Marc Gilleron
d158a92f57
Show bounds and octrees of VoxelLodTerrain with debug drawing
2020-10-24 00:08:14 +01:00
Marc Gilleron
6c80da0425
Moved VoxelBuffer and VoxelMemoryPool under storage/ directory
2020-09-14 19:33:02 +01:00
Marc Gilleron
7064f6e471
Color palette support in .vox loader and Cubes mesher
2020-09-13 02:17:11 +01:00
Marc Gilleron
e1b9a25db7
Added utility class to load MagicaVoxel .vox files
2020-09-12 21:10:05 +01:00
Marc Gilleron
79d73e3f5a
Added cubes mesher with greedy meshing support
2020-09-11 00:36:23 +01:00
Marc Gilleron
81e1872f8b
Implemented viewers for VoxelTerrain
2020-09-06 19:01:12 +01:00
Marc Gilleron
b8c97ebc55
Switch VoxelLodTerrain to VoxelServer
2020-08-31 21:51:30 +01:00
Marc Gilleron
aa2b848102
Workaround crash on exit because the GDScript module is freed before voxel
...
See https://github.com/Zylann/godot_voxel/issues/189
2020-08-29 22:55:52 +01:00
Marc Gilleron
d4d2b6fd9e
No longer copy voxels before scheduling threaded tasks. VoxelBuffers now have a lock.
2020-08-29 22:09:54 +01:00
Marc Gilleron
bcfc8ce04e
Add some stats
2020-08-26 21:17:57 +01:00
Marc Gilleron
56c2a0856a
Initial integration on VoxelTerrain with static camera, fixed a bunch of things
2020-08-25 23:00:38 +01:00
Marc Gilleron
23ce65d789
Show terrain in editor, with option to turn it off. A scripted stream will turn it off by default.
2020-08-14 20:33:09 +01:00
Marc Gilleron
7316e415dc
Implemented block events for VoxelTerrain
2020-08-10 20:57:03 +01:00
Marc Gilleron
27f37ea56c
Move voxel graph editor under its own folder
2020-07-30 18:50:45 +01:00
Marc Gilleron
0cdf5ea550
Added random tick API for blocky voxels
2020-07-28 20:32:33 +01:00
Marc Gilleron
4991b682d9
Exposed block serializer
2020-07-25 21:56:23 +01:00
Marc Gilleron
e7c720ceeb
Added barebones editor plugin to edit VoxelGeneratorGraph (does nothing for now)
2020-03-01 18:12:16 +00:00
Marc Gilleron
f4a5b36fe9
Moved node DB to its own file
2020-02-23 19:08:14 +00:00
Marc Gilleron
07905ba580
Renamed `evaluate` in ProgramGraph to a more descriptive name
2020-02-22 22:45:22 +00:00
Marc Gilleron
af09121c9f
Fixed a bunch of things
2020-02-19 21:59:41 +00:00
Marc Gilleron
515751a3e6
WIP VoxelGeneratorGraph, compiled and untested
2020-02-19 19:26:14 +00:00
Marc Gilleron
c33f46a437
Split VoxelGeneratorTest into VoxelGeneratorWaves and VoxelGeneratorFlat
2020-02-17 22:05:16 +00:00
Marc Gilleron
3ec2275ffb
Moved Voxel and VoxelLibrary under the blocky mesher directory, since that's what they are actually used for
2020-01-27 00:04:13 +00:00
Marc Gilleron
b937020d16
Rename files to match class names
2020-01-26 22:43:47 +00:00
Marc Gilleron
8879d9b2e7
Moved all generators under their own base class and folder
2020-01-26 22:34:26 +00:00
Marc Gilleron
0ac1b7e6dc
Moved edition-related classes to a sub-folder
2020-01-26 20:29:44 +00:00
Marc Gilleron
20dc0008f4
Removed legacy marching cubes mesher
2020-01-26 20:18:21 +00:00
Marc Gilleron
7161942ee1
Fix memory leak in VoxelBuffer::fill()
2020-01-26 01:59:53 +00:00
Marc Gilleron
df3a649e18
Added VoxelStreamNoise2D
2020-01-21 23:52:25 +00:00
Marc Gilleron
b90e6b8207
Abstract most of VoxelStreamImage into VoxelStreamHeightmap
2020-01-21 22:41:55 +00:00
Marc Gilleron
c493aec343
Use StringNames when applicable
2020-01-17 20:43:28 +00:00
Marc Gilleron
9dc09618be
ZProfiler is now usable from anywhere including threads
2020-01-07 20:32:36 +00:00
Marc Gilleron
716b820599
Remove VoxelIsoSurfaceTool, superseded by VoxelTool
2020-01-02 21:07:23 +00:00
Marc Gilleron
f2975e517a
Add memory pool for VoxelBuffer channels
2020-01-02 20:31:05 +00:00
Marc Gilleron
68e35744b2
Rewrite profiler dump to not use Godot API, also allow to use a singleton
2020-01-02 20:24:20 +00:00
Marc Gilleron
6977133006
Forked Transvoxel mesher into an MC one with overlap seam mode.
...
It's mostly because the transvoxel mesher is going to change,
and the MC mesher will only act as a simplified legacy mesher.
It has experimental support for overlap seams, but it didn't work
well due to Z-buffer precision being too weak.
2019-12-23 21:41:30 +00:00
Marc Gilleron
e783c75242
Register missing class to fix C# binding
2019-09-24 18:48:30 +01:00
Marc Gilleron
b284541219
Cleanup includes
2019-09-05 19:43:25 +01:00
Marc Gilleron
4ab688c9be
Barebones edition, untested WIP
2019-09-05 02:24:16 +01:00
Marc Gilleron
eb01f99c2c
First WIP at paging LOD
2019-08-29 22:55:02 +01:00
Marc Gilleron
f14b374931
Made block size and a few other params modifiable (not so easy, though)
2019-08-24 01:44:27 +01:00
Marc Gilleron
808f22fb35
Rename VoxelStreamRegion => VoxelStreamRegionFiles
2019-08-17 19:56:21 +01:00
Marc Gilleron
ece3a355af
Rename VoxelStreamVXB => VoxelStreamBlockFiles
2019-08-17 19:43:08 +01:00
Marc Gilleron
01b1ee0170
Added first working version of region save format, still WIP
2019-08-14 20:34:06 +01:00
Marc Gilleron
82502d3397
Simple file-per-block saving WIP. Compiles but didn't test.
2019-05-28 00:40:09 +01:00
Marc Gilleron
4a90ca10a5
Rename "provider" files to "stream"
2019-05-25 16:16:03 +01:00
Marc Gilleron
2e1b13ffea
Rename VoxelProvider* => VoxelStream*
2019-05-25 16:07:38 +01:00
Marc Gilleron
fc4dee54d7
Added VoxelProviderNoise for testing
2019-05-05 18:27:33 +01:00
Marc Gilleron
9bab6c04d1
Added VoxelLodTerrain, focused on LOD. No seam management, no editing yet.
2019-05-04 00:02:10 +01:00
Marc Gilleron
faefde721a
Add base class to all meshers, gather common things in it
2019-04-28 20:48:59 +01:00
Marc Gilleron
12a97cca5a
Reorganize all files and rename a few things
2019-04-28 17:58:29 +01:00
Marc Gilleron
1defe3bdbd
Added VoxelIsoSurfaceTool
2019-04-22 20:15:46 +01:00
Marc Gilleron
35ff5fd546
Rename VoxelMesherSmooth => VoxelMesherTransvoxel
2019-04-21 14:47:50 +01:00
Marc Gilleron
1181cfa59f
Dual marching cubes WIP (only octree and dual grid extraction, untested)
2019-04-20 17:32:10 +01:00
Marc Gilleron
b03df8c079
Added box mover utility for quick move and slide physics
2018-10-01 00:11:33 +01:00
Marc Gilleron
e79dd98d69
Fix compilation
2018-09-29 17:51:09 +01:00
Marc Gilleron
44bdc63c6f
Added an image-based terrain generator for testing (ported from the GDScript demo)
2018-09-28 01:11:28 +01:00
Marc Gilleron
a5a1ded2f3
Added smooth voxels (untextured at the moment)
2017-04-06 23:44:11 +02:00
Marc Gilleron
fa5e419549
Upgraded to Godot 3.0
2017-03-25 01:23:36 +01:00
Marc Gilleron
cefa371d83
Added more features to VoxelProviderTest
2017-01-02 23:58:51 +01:00
Marc Gilleron
c75d1e78b2
Voxels are loaded through VoxelProvider
2017-01-02 02:15:57 +01:00
Marc Gilleron
8d1c8cc339
Spaces to tabs
2017-01-01 04:40:16 +01:00
Marc Gilleron
5662dfde7b
Added VoxelMap and VoxelTerrain + various fixes
2016-05-10 01:59:54 +02:00
Marc Gilleron
7305fd7b27
Renamed VoxelMeshBuilder => VoxelMesher
2016-05-08 01:09:00 +02:00
Marc Gilleron
d1d685124f
Added VoxelLibrary, texture coordinates and random stuff
2016-05-01 22:20:27 +02:00
Marc Gilleron
1acabf1307
Added project: first working prototype, but lots of TODOs
2016-05-01 15:00:02 +02:00