Commit Graph

45 Commits (04d15fe843ec8316093ca4e6b5ab6ca840aee366)

Author SHA1 Message Date
Marc Gilleron a8f8a03439 Added customizable bit depth to VoxelBuffer. UNTESTED 2020-01-04 19:20:49 +00:00
Marc Gilleron a11a95bcce Renamed CHANNEL_ISOLEVEL => CHANNEL_SDF 2020-01-02 21:03:44 +00:00
Marc Gilleron f2975e517a Add memory pool for VoxelBuffer channels 2020-01-02 20:31:05 +00:00
Marc Gilleron 6b05b9c9ce Expose VoxelBuffer.downscale_to 2019-12-26 20:30:20 +00:00
Marc Gilleron 2e974444c6 Implement VoxelTool for VoxelBuffer 2019-12-14 21:34:41 +00:00
Marc Gilleron 17c6b1f557 Fixed and tweaked a bunch of things, first working editing with LOD 2019-09-06 23:24:56 +01:00
Marc Gilleron 4ab688c9be Barebones edition, untested WIP 2019-09-05 02:24:16 +01:00
Marc Gilleron 2e1467edd7 Implemented nearest neighbor downscaling (to be tested) 2019-09-02 21:14:30 +01:00
Marc Gilleron 3074f8228d Fix wrong size checks in VoxelBuffer::copy_from 2019-08-24 23:08:04 +01:00
Marc Gilleron f0c841ff11 Expose region file settings conversion, tested case of equal block size 2019-08-20 20:50:09 +01:00
Marc Gilleron c272a37f1a Merge branch 'master' into persistence
# Conflicts:
#	terrain/block_thread_manager.h
#	terrain/voxel_terrain.cpp
2019-06-25 20:51:35 +01:00
Cory Petkovsek f6a9c5761a Fix gcc sign comparison warnings 2019-06-18 14:24:56 +09:00
Marc Gilleron 94c5d5a78c Merge branch 'master' into persistence
# Conflicts:
#	voxel_buffer.h
2019-06-01 19:53:16 +01:00
Marc Gilleron 04bbfcd182 Fix VoxelStreamImage.channel property inconsistency 2019-05-30 00:46:08 +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 2eb093e76b Rename VoxelBuffer.optimize() => compress_uniform_channels 2019-05-25 15:52:35 +01:00
Marc Gilleron c8fbf19814 Rename get/set_voxel_iso => get/set_voxel_f 2019-04-28 16:28:49 +01:00
Marc Gilleron 0f378fe218 Remove default channel from `is_uniform()` to prevent mistakes 2019-04-28 00:27:17 +01:00
Marc Gilleron 2e419db855 Fix default value for CHANNEL_ISOLEVEL, it should be the integer raw value, not the quantified one 2019-04-28 00:23:10 +01:00
Marc Gilleron 6d872160ab Added get_size() as Vector3 to VoxelBuffer 2019-04-27 02:06:09 +01:00
Marc Gilleron 10c2e69a0c Default values for CHANNEL_ISOLEVEL should be 1.0 (i.e maximum distance) 2019-04-27 02:05:40 +01:00
Marc Gilleron bed8ac8cb9 Drop gradient channels, fix misconception about what gradient is 2019-04-22 21:17:19 +01:00
Marc Gilleron 9108bfe0f6 Fix VoxelBuffer channel initialized with wrong value when allocated 2019-04-22 20:15:19 +01:00
Marc Gilleron 869b921ce8 Add VoxelBuffer::fill_iso() 2019-04-22 20:14:25 +01:00
Marc Gilleron 91a5c7ffa8 A bit of reorganization and tweaks:
- Moved HermiteValue in its own file
- VoxelBuffer channels are now predefined
- Create DualGridGenerator for easier passing of data
- Chunk size is no longer hardcoded
- Respect padding when polygonizing voxels
- BUG: due to the above, the way we build the octree is now breaking the result as mentionned in the TODO
2019-04-21 19:31:35 +01:00
Marc Gilleron d53e43f115 Added function to compute gradients from isolevels 2019-04-21 02:54:35 +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 b052f7fc2d Added try_set_voxel and fix fill_area in cases where the box is out of range 2018-10-04 23:13:03 +01:00
Marc Gilleron 8ffa7110c8 Optimize mesher: access channel directly and remove some push_backs 2018-09-30 01:55:09 +01:00
Marc Gilleron a0026dbbeb Fix includes 2018-09-19 20:25:04 +01:00
Marc Gilleron 7319fa1c56 Compilation fixes 2018-09-02 18:48:08 +01:00
Marc Gilleron 115e0e2870 Fixed view distance + dynamic load/unload around viewer 2017-08-28 01:48:36 +02:00
Marc Gilleron 51596fef95 Clang-format 2017-08-13 01:19:39 +02:00
Marc Gilleron 05dfddfa20 Fix type hints in method registration 2017-08-13 00:10:18 +02:00
Marc Gilleron a5a1ded2f3 Added smooth voxels (untextured at the moment) 2017-04-06 23:44:11 +02:00
Marc Gilleron 9cce2aabcb Make it easier to edit voxels one by one + a few fixes for that 2017-03-29 22:36:42 +02:00
Marc Gilleron fa5e419549 Upgraded to Godot 3.0 2017-03-25 01:23:36 +01:00
Marc Gilleron 06a399f932 Fixed set_voxel() and block force_update_blocks() 2017-01-05 02:39:40 +01:00
Marc Gilleron 8d1c8cc339 Spaces to tabs 2017-01-01 04:40:16 +01:00
Marc Gilleron e6213c50c7 Fixed VoxelBuffer::fill_area() 2016-05-10 03:10:20 +02:00
Marc Gilleron 5662dfde7b Added VoxelMap and VoxelTerrain + various fixes 2016-05-10 01:59:54 +02:00
Marc Gilleron e990286b54 Removed internal offset from VoxelBuffer and improved Vector3i 2016-05-08 02:12:47 +02:00
Marc Gilleron be630c05be Fixed VoxelBuffer binding mistakes and added fill and copy functions 2016-05-05 21:08:52 +02:00
Marc Gilleron 68cf221d1a VoxelBuffer storage is now flat to reduce memory usage and simplify code 2016-05-03 00:09:07 +02:00
Marc Gilleron 1acabf1307 Added project: first working prototype, but lots of TODOs 2016-05-01 15:00:02 +02:00