2016-05-01 06:00:02 -07:00
|
|
|
#include "register_types.h"
|
2019-04-28 09:58:29 -07:00
|
|
|
#include "meshers/blocky/voxel_mesher_blocky.h"
|
|
|
|
#include "meshers/dmc/voxel_mesher_dmc.h"
|
|
|
|
#include "meshers/transvoxel/voxel_mesher_transvoxel.h"
|
2019-08-23 17:44:27 -07:00
|
|
|
#include "streams/voxel_stream_block_files.h"
|
2019-05-27 16:40:09 -07:00
|
|
|
#include "streams/voxel_stream_file.h"
|
2019-05-25 08:16:03 -07:00
|
|
|
#include "streams/voxel_stream_image.h"
|
|
|
|
#include "streams/voxel_stream_noise.h"
|
2019-08-17 11:56:21 -07:00
|
|
|
#include "streams/voxel_stream_region_files.h"
|
2019-05-25 08:16:03 -07:00
|
|
|
#include "streams/voxel_stream_test.h"
|
2019-04-28 09:58:29 -07:00
|
|
|
#include "terrain/voxel_box_mover.h"
|
2019-05-03 16:02:10 -07:00
|
|
|
#include "terrain/voxel_lod_terrain.h"
|
2019-04-28 09:58:29 -07:00
|
|
|
#include "terrain/voxel_map.h"
|
|
|
|
#include "terrain/voxel_terrain.h"
|
2016-05-01 06:00:02 -07:00
|
|
|
#include "voxel_buffer.h"
|
2019-04-22 12:15:46 -07:00
|
|
|
#include "voxel_isosurface_tool.h"
|
2016-05-01 13:20:27 -07:00
|
|
|
#include "voxel_library.h"
|
2016-05-01 06:00:02 -07:00
|
|
|
|
|
|
|
void register_voxel_types() {
|
|
|
|
|
2019-04-28 09:58:29 -07:00
|
|
|
// Storage
|
2017-03-24 17:23:36 -07:00
|
|
|
ClassDB::register_class<VoxelBuffer>();
|
|
|
|
ClassDB::register_class<VoxelMap>();
|
2019-04-28 09:58:29 -07:00
|
|
|
|
|
|
|
// Voxel types
|
|
|
|
ClassDB::register_class<Voxel>();
|
|
|
|
ClassDB::register_class<VoxelLibrary>();
|
|
|
|
|
|
|
|
// Nodes
|
2017-03-24 17:23:36 -07:00
|
|
|
ClassDB::register_class<VoxelTerrain>();
|
2019-05-03 16:02:10 -07:00
|
|
|
ClassDB::register_class<VoxelLodTerrain>();
|
2019-04-28 09:58:29 -07:00
|
|
|
|
2019-05-27 16:40:09 -07:00
|
|
|
// Streams
|
2019-05-25 08:07:38 -07:00
|
|
|
ClassDB::register_class<VoxelStream>();
|
|
|
|
ClassDB::register_class<VoxelStreamTest>();
|
|
|
|
ClassDB::register_class<VoxelStreamImage>();
|
|
|
|
ClassDB::register_class<VoxelStreamNoise>();
|
2019-05-27 16:40:09 -07:00
|
|
|
ClassDB::register_class<VoxelStreamFile>();
|
2019-08-17 11:43:08 -07:00
|
|
|
ClassDB::register_class<VoxelStreamBlockFiles>();
|
2019-08-17 11:56:21 -07:00
|
|
|
ClassDB::register_class<VoxelStreamRegionFiles>();
|
2019-04-28 09:58:29 -07:00
|
|
|
|
|
|
|
// Helpers
|
2018-09-30 16:11:33 -07:00
|
|
|
ClassDB::register_class<VoxelBoxMover>();
|
2019-04-22 12:15:46 -07:00
|
|
|
ClassDB::register_class<VoxelIsoSurfaceTool>();
|
2019-04-28 09:58:29 -07:00
|
|
|
|
|
|
|
// Meshers
|
2019-04-28 12:48:59 -07:00
|
|
|
ClassDB::register_class<VoxelMesher>();
|
2019-04-28 09:58:29 -07:00
|
|
|
ClassDB::register_class<VoxelMesherBlocky>();
|
|
|
|
ClassDB::register_class<VoxelMesherTransvoxel>();
|
|
|
|
ClassDB::register_class<VoxelMesherDMC>();
|
2019-08-29 14:55:02 -07:00
|
|
|
|
|
|
|
#ifdef TOOLS_ENABLED
|
|
|
|
VoxelDebug::create_debug_box_mesh();
|
|
|
|
#endif
|
2016-05-01 06:00:02 -07:00
|
|
|
}
|
|
|
|
|
|
|
|
void unregister_voxel_types() {
|
2019-08-29 14:55:02 -07:00
|
|
|
|
|
|
|
#ifdef TOOLS_ENABLED
|
|
|
|
VoxelDebug::free_debug_box_mesh();
|
|
|
|
#endif
|
2016-05-01 06:00:02 -07:00
|
|
|
}
|