VCore was originally developed for loading and optimizing various voxel formats. Evolving beyond its origins, VCore now focuses on real-time meshing, making it suitable for applications such as games.
Please be aware that, at the current stage of development, the public API may undergo changes at any time. Keep this in mind when using the library.
- Import of different voxelformats
- Multithreaded meshers with options including Simple, Greedy, and Marching Cubes
- Export capabilities to diverse 3D file formats such as Wavefront OBJ, GLTF, PLY, and Godot ESCN
- Voxel model export as sprite stacking images
- Basic frustum culling
- Animation support
- Occlusion culling
- Hardware-accelerated meshers (OpenCL, Cuda, Vulkan, OpenGL or ROCm)
- Terrain editing
- LOD mesh generation
Ensure you have the following prerequisites before getting started:
- cmake
- C++ compiler supporting at least C++14 (Currently tested with gcc, compatibility with LLVM and MSVC expected)
- git (optional)
- scons (Only for the Godot build)
Follow these steps to build the library:
-
Clone this repo
git clone https://github.com/VOptimizer/VCore.git
-
Build the library
cd VCore/lib
mkdir build
cd build
cmake ..
cmake --build .
- Copy the static library and the
include
directory of the source tree to your project.
git clone --recursive https://github.com/godotengine/godot-cpp -b 3.5 # Call inside the root directory of vcore
cd godot-cpp
scons platform=<your platform> generate_bindings=yes
cd ..
cd gnative
mkdir build
cd build
cmake ..
cmake --build .
Replace <your platform>
with either windows
, linux
, osx
or android
.
For more information please visit the official repository.
cd cli
mkdir build
cd build
cmake ..
cmake --build .
The cli will be statically linked with VCore.
Explore the examples directory for detailed usage examples of this library or look at the Sourcetree documentation for a deep dive into the source code.
For a more seamless integration of VCore into your engine or framework, additional information are available in the Customization README.
This library is under the MIT License