Commit Graph

44 Commits

Author SHA1 Message Date
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
64b9476eca Moved the texture scale property to VoxelMesher. 2020-08-25 23:09:41 +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
61a8b9224f Removed _add_chunk_liquid from VoxelMesher as it's not used anymore. 2020-06-12 18:06:41 +02:00
1d51be2f0b Moved 4.0 compatibility code into a new defines.h (like in ESS). 2020-05-23 10:34:47 +02:00
a722f807fe Fix building for 3.2. 2020-04-09 15:45:51 +02:00
073e1aeb97 Fix build for 4.0. 2020-04-09 12:34:39 +02:00
a4fc573f85 Optional module dependencies are actually optional now. 2020-04-06 22:47:03 +02:00
b9ba0c0bf9 Moved _bake_colors and _bake_liquid_colors into VoxelMesherDefault. Also made the other meshers inherit it. 2020-04-06 14:21:46 +02:00
9da5d2e2d0 VoxelChunk now inherits from Resource instead of from Spatial. This is to make the scene cleaner (especially after I implement the world editor plugin). As a small bonus this should also make multithreading-related crashes harder to create, as manipulating the Scenetree from a thread by accident is now a lot harder. 2020-04-02 21:28:19 +02:00
9154009250 Added remove_doubles, and remove_doubles_hashed methods to VoxelMesher, the hashed version is actually about 40-ish percent faster usually, but if hash might occur with it. The TransvoxelMesher now automatically simplifies it's meshes after a buffer is added, using the hashed version (to see in practice how common hash collisions are). 2020-03-09 00:17:50 +01:00
45976ca387 Reworked VoxelMesher's api a bit, now it works like SurfaceTool. Also it now stores data the same way i.e. 1 container, with a Vertex struct (I took the Vertex struct, and it's hasher from Surface Tool (because the hasher was private)). This will make mesh post processing a lot easier. 2020-03-08 22:36:58 +01:00
e4b094a27c VoxelMesher's build_collider now returns an array, also it is now bound. 2020-03-06 15:39:15 +01:00
b9f1de7dd9 VoxelMesher doesn't use SurfaceTool internally anymore. 2020-03-04 23:06:30 +01:00
6c39845387 Removed a few now unneeded methods from VoxelChunk, they got merged into _build_phase. Also added build_mesh_into to VoxelMesher, it's equivalent to the old build_mesh. 2020-02-20 13:44:38 +01:00
8b734eec11 Mesher's build_mesh function now has no argument, and returns an array. 2020-02-20 13:19:54 +01:00
07afd06c2a Now chunks can properly use multiple meshers at the same time. 2020-02-14 19:02:31 +01:00
601a61619b Added mesher index property to both VoxelMesher, and VoxelSurface. 2020-02-13 14:16:57 +01:00
fd1ff4b4ff Better chunk building setup. And smaller fixes and tweaks. 2020-02-10 23:39:57 +01:00
db77530ec1 Updated the license for 2020, and added it to the top of my cpp files. 2020-01-31 19:52:37 +01:00
7e8cbc1fb5 Compile fix. 2020-01-20 15:10:30 +01:00
531599dd1d Moved everything to a new class. 2020-01-20 11:52:54 +01:00
83806f4bc1 More work on porting. 2020-01-20 11:45:46 +01:00
7a35337367 Started porting/integrating Whinarn's UnityMeshSimplifier into VoxelMesher. (https://github.com/Whinarn/UnityMeshSimplifier). 2020-01-20 03:34:07 +01:00
a95973eeba Replaced Vectors to PoolVectors in VoxelMesher. Also added uv2 methods. 2020-01-19 18:25:03 +01:00
a67d0393ca Clang format. 2020-01-09 04:29:05 +01:00
8e02dcb9e8 Fix build. 2019-12-24 03:22:17 +01:00
d5acb28a90 More work on fixing compile. 2019-11-18 22:22:41 +01:00
f00933bb71 More work on fixing the build. 2019-11-18 20:03:40 +01:00
e0deb2ea66 Added liquid, and clutter mesh allocations into Chunk, also related modifications. 2019-11-10 13:42:59 +01:00
588ed550c8 Added texture to VoxelmanPropMesh, and added material, and uv_margin properties to VoxelMesher. 2019-11-05 21:22:39 +01:00
9b842c159a -Moved the basic mesh color baking into the base VoxelMesher, as well as the 2 light specific parameters.
-Added a binding from the AO VoxelBuffer enum value.
-Renamed back draw_debug_voxels_colored to draw_debug_voxels.
2019-07-24 02:14:02 +02:00
47f3fa2a7f Now the props use transforms internally, instead of vectors. And improved the design a bit. 2019-07-20 14:48:56 +02:00
4ad2faca86 Started reworking the mesher, and the cunk's interface. 2019-07-19 20:54:09 +02:00
029f241005 Implemented props. 2019-07-18 18:56:42 +02:00
9c036f0706 Now VoxelChunk uses the VisualServer, and PhysicsServer directly. 2019-07-18 01:43:58 +02:00
469773a9fd Fixed the voxel mesher, and converted it to c++. Also small bugfixes, and binding improvements. ALso moved a few export variables from GDscript to bindings. 2019-07-17 17:01:12 +02:00
115750a66f Added 2 voxel meshers from godot_voxel. 2019-06-10 01:41:57 +02:00
71de54d9a0 Now voxelman can actually make meshes. 2019-06-08 19:47:17 +02:00
ba05f93aa2 -Removed Voxel, not needed.
-Huge cleanup.
-Moved the voxel query to a new folder, also it's not in the build anymore. Will be removed shortly.
2019-06-07 19:13:07 +02:00
9fb6a4e1c1 Progress on getting voxelman to work again, also cleanups. 2019-06-07 01:33:41 +02:00
e2c8c5c2ca Added in 2 more classes and the updated vector3i from https://github.com/Zylann/godot_voxel. Also added their license to the top of these files. 2019-05-31 23:28:33 +02:00
bc9896b695 Added in the classes which I want to salvage from my test voxel engine. Some of the classes contain horrible code because I learned godot engine development with these, the will be cleaned up. The Vector3i is from Zylann's godot_voxel module, I'll properly credit him a bit later. 2019-05-31 22:54:31 +02:00