108 Commits

Author SHA1 Message Date
Marc Gilleron
d1207bdd96 Reorganized some utility files 2021-02-17 20:34:35 +00:00
Marc Gilleron
b65b0b8045 Implemented saving and loading of modified instances in SQLite 2021-02-07 17:22:50 +00:00
Marc Gilleron
dce6ddc3f5 No longer save terrain automatically when it gets destroyed.
If the user wants to save, save_modified_blocks() must be called explicitely.
2021-02-07 17:12:30 +00:00
Marc Gilleron
b66b9a01a9 Removed VoxelStreamFile 2021-02-01 22:25:25 +00:00
Marc Gilleron
23765f7c20 Merge branch 'master' into multithreaded_generators 2021-01-18 18:55:18 +00:00
Marc Gilleron
4ec60074bb Refactor generators and streams
- VoxelGenerator no longer inherit VoxelStream
- VoxelStream is now more focused on files
- Nodes have separate stream and generator properties
- Generators use 2 dedicated threads instead of sharing a single one with streams
- TODO Image.lock() is problematic for multithreading
- TODO Voxel graph can cause RWLock contention if edited while it runs
- TODO Saving generator output no longer works, need to put it back
2021-01-17 17:18:05 +00:00
Marc Gilleron
94810f4d04 Rename statistic property back to its old name, I think it didnt need to change 2021-01-16 13:05:50 +00:00
Marc Gilleron
e988cb9124 Show main thread tasks 2020-12-25 17:08:40 +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
791bdafff1 Meshers are now resources assigned on terrain nodes 2020-12-18 21:01:50 +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
85bb3d7b28 VoxelTerrain can be transformed 2020-10-25 00:55:57 +01:00
Marc Gilleron
4e65c8d937 Added bounds support to VoxelLodTerrain (rounded to octree size) 2020-10-22 22:43:31 +01:00
Marc Gilleron
2dfcc76600 Better fix for VoxelLodTerrain task drop 2020-10-20 23:58:55 +01:00
Marc Gilleron
5dd8475091 Fix GCC warning (4) 2020-09-20 20:28:45 +01:00
Marc Gilleron
64ee592a0e Allow to specify bounds in VoxelTerrain 2020-09-13 22:36:28 +01:00
Marc Gilleron
4b6ae21ce9 Fix GCC warnings 2020-09-09 18:58:58 +01:00
Marc Gilleron
b12500ed34 Don't request or even calculate blocks to load when streaming is not possible 2020-09-08 21:34:35 +01:00
Marc Gilleron
7a235be108 Cancel block tasks if they are too far away 2020-09-06 23:57:41 +01:00
Marc Gilleron
fb8a1210e3 Comment and formatting 2020-09-06 19:59:08 +01:00
Marc Gilleron
a4611031e1 Fix viewer not being unpaired when destroyed 2020-09-06 19:29:56 +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
17ff16aa48 Neighbors are optional when sending meshing requests 2020-08-30 04:00:45 +01:00
Marc Gilleron
d81ffb95f4 Detect usage of Tracy, add some profiler scopes 2020-08-30 04:00:01 +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
d8a8936f34 Remove usage of VoxelDataLoader from VoxelTerrain 2020-08-26 19:49:30 +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
6ed4ef32b7 Separated baked data from config data in VoxelLibrary and introduced thread-safety with blocky mesher 2020-08-11 23:52:42 +01:00
Marc Gilleron
7316e415dc Implemented block events for VoxelTerrain 2020-08-10 20:57:03 +01:00
Marc Gilleron
404de21c9b Don't error when a custom stream can't be used in editor, show warning instead 2020-08-02 18:58:04 +01:00
Marc Gilleron
f9e2d9cc12 Stop using NULL 2020-07-25 23:19:08 +01:00
Marc Gilleron
b7fe71ff45 Fix block not copied when the save of a single one is triggered 2020-07-25 21:57:36 +01:00
Marc Gilleron
ec6bc00562 Added methods to trigger saves manually 2020-07-25 16:29:16 +01:00
Marc Gilleron
1a08cd31d6 Use a macro to print debug stuff only in verbose mode 2020-07-08 20:48:52 +01:00
Marc
e57a39d467
Merge pull request #141 from nwdamgaard/master
Generate a collision mesh for each surface
2020-05-08 17:24:13 +01:00
Nathan
a17ab8bbe7 clean up for Zylann 2020-05-07 17:33:16 -07:00
Nathan
6b43c9a187 General improvements 2020-05-07 13:55:16 -07:00
Marc Gilleron
600942564c Fix crash when a VoxelTerrain is used without a stream 2020-05-07 21:13:47 +01:00
Nathan
713c57388a Changing the approch once again due to misunderstanding Zylann 2020-05-06 19:47:00 -07:00
Nathan
c69afee67f Clean up some stuff that should not have happened 2020-05-06 16:14:11 -07:00
Nathan
89691f6ece Added function in mesher to create collision mesh 2020-05-06 14:42:46 -07:00
Nathan
e045c0f350 Generate a collision mesh for each surface 2020-04-28 21:50:37 -07:00
Marc Gilleron
f5001fdc07 Merge branch 'master' into custom_blocky_mesh
# Conflicts:
#	util/array_slice.h
2020-02-22 22:55:50 +00:00
Cory Petkovsek
63514efd76 Update pr 2020-02-16 23:07:10 +08:00
Cory Petkovsek
1a251a3c63 VT/VLT Detect channel type from generators. Other convenience features. 2020-02-16 22:13:28 +08:00
Marc
db98d5865d
Merge branch 'master' into fix_gcc_warnings 2020-02-15 16:40:32 +00:00
Marc Gilleron
17e3651d0e Fix release compilation 2020-02-15 16:37:23 +00:00
Cory Petkovsek
40e3fdc878 Adjust PR 2020-02-15 04:09:31 +08:00