N-Dimensional cellular automaton. Currently project contain a lot of bugs and most of the features still not implemented
git clone https://github.com/Rejeq/CellNta
cd CellNta
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
cmake --build . -j 4
To build with the testing, add -DCELLNTA_TESTING=ON
cmake flag
To run tests: ctest .
in the build directory
The dependencies will be automatically loaded and compiled by default,
but if you have problems, you can install everything manually,
just disable fetching by adding cmake flag: CELLNTA_FETCHING=OFF
List of dependencies:
- Eigen3 - math library
- GLEW - openGL loader
- Boost - used only dynamic_bitset, so needed only headers
- Spdlog - logging system, optional, add
-DCELLNTA_LOGGING=OFF
to disable - Tracy - optional, profiling tools
- GoogleTest - optional, testing
For Desktop gui:
Most of these libraries can be automatically defined on your system, so you only need to install them.
But for some libraries, like imgui, you need to specify the -D[LIB]_DIR
variable (see ./cmake/Find[LIB]
.cmake for the exact name).
You can use a package manager, such as vcpkg, and install the dependencies with the following command:
vcpkg install sdl2 glew boost spdlog eigen3
Afterwards, when configuring with cmake, add the toolchain file flag:
-DCMAKE_TOOLCHAIN_FILE='[path to vcpkg]/scripts/buildsystems/vcpkg.cmake'
- NDCell - similar project
- TrueNgine - a N-Dimensional Renderer
- Perspective Projections - article about how the Nd camera works