Commit Graph

84 Commits

Author SHA1 Message Date
541abb954d Now materials in Library are stored with vectors. This makes it possible to have different materials for every lod level for example. 2020-03-29 20:19:38 +02:00
a5c5a7b56b Remove -std=c++11 cppflag as it!s not needed. Also compile fix for msvc. 2020-03-24 16:56:04 +01:00
080e8f2437 Broke up VoxelChunk into VoxelChunk and VoxelChunkDefault. 2020-03-12 23:23:38 +01: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
a22be7208c The transvoxel mesher now won't allocate small arrays constantly during generation. 2020-03-08 23:40:22 +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
a457ed400c Added data margin start, and end property to VoxelWorld for easy access. Improved set_voxel, and get_voxel in VoxelChunk to accomodate for margins as originally intended (e.g. if start_margin is 1, indexes go from -1 to size + end margin). Fixed/updated indexing in VoxelMesherCubic. 2020-02-14 03:19:15 +01:00
601a61619b Added mesher index property to both VoxelMesher, and VoxelSurface. 2020-02-13 14:16:57 +01:00
8b08a9b14f Ported the TransvoxelMesher from BrokenSeals. 2020-02-13 13:21:30 +01:00
201ea0ce1f Now the built in bake_colors method will keep the original alpha in colors if set. Also Added uv2 support in build_mesh. 2020-02-13 03:25:47 +01:00
8a2524dc57 Improved multithreading a lot, it doesn't seem to crash anymore. Also made chunk mesh generation faster by letting build phases run one after an another without launching new threads (using is_phase_threaded). 2020-02-12 14:16:31 +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
ba46eafc19 Removed the mesh simplifier, it has it's own repository now. 2020-01-31 16:13:19 +01:00
b0b38396c4 Added mesh simplifier to the build, fixed compile, and started work on bindings. 2020-01-21 23:56:37 +01:00
3ef382b29f A few missing things. 2020-01-20 16:12:45 +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
4a8ed25544 Moved the transvoxel mesher into a folder. 2020-01-14 02:57:32 +01:00
010b20ee55 Fix a few of the issues with the cubic mesher. 2020-01-12 21:58:14 +01:00
a67d0393ca Clang format. 2020-01-09 04:29:05 +01:00
8e02dcb9e8 Fix build. 2019-12-24 03:22:17 +01:00
ce4020962e Now the mesher will set the material for the generated meshes directly, also it sets the material as surface material instead of an override material. 2019-12-03 19:22:04 +01:00
7885d49949 Implemented chunks's new functionality, and work on the bindings. 2019-11-18 23:50:06 +01:00
de103a3fdf Fixed compile. 2019-11-18 22:35:08 +01:00
d5acb28a90 More work on fixing compile. 2019-11-18 22:22:41 +01:00
9103db635f More work on compile. 2019-11-18 21:53:33 +01:00
5e323ce718 Removed a few old unused classes. 2019-11-18 20:17:54 +01:00
b60b8a96d6 More work on the build, and more api breakages. 2019-11-18 20:16:29 +01:00
4a5a903a7a Removed the dmc mesher. 2019-11-18 20:04:28 +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
b6afad3024 Fix 2 typos. 2019-11-06 17:56:45 +01:00
033fe750c0 Updated the color baking algorithm, and restructured build phases. 2019-11-06 17:43:51 +01:00
588ed550c8 Added texture to VoxelmanPropMesh, and added material, and uv_margin properties to VoxelMesher. 2019-11-05 21:22:39 +01:00
b32a028209 Fixed a few errors I found. 2019-09-05 22:30:20 +02:00
a39b8ae0ad Equiv class 4. 2019-09-05 21:39:32 +02:00
593cb66c88 Fixed equiv class 7. 2019-09-05 18:59:09 +02:00
e93a8f820b Equiv class 15. 2019-09-05 17:21:48 +02:00
5af8477bc6 Equivalence class 14. 2019-09-05 14:16:54 +02:00
5ff408758b Fixed equivalence class 13's uvs. 2019-09-05 13:01:27 +02:00
a51e7ab22f Just a tiny bit more work. 2019-09-05 02:57:59 +02:00