Use the build tool CMake to build cinnabar.
Choose Compiler:
- Desktop development with C++ (C++ core desktop features)
- MSVC V142 - VS 2016 C++ x64/x86 build tools (Latest)
- Windows 10 SDK (10.0.19041.0)
Download and extract the dependencies to a folder of your choosing,
set the environment variables of GLM_ROOT_DIR
and SDL2DIR
, add the bins of
pkg and glew to path, and put the .dll files in the res folder.
pacman -Syu
pacman -Su
pacman -S --needed base-devel mingw-w64-x86_64-toolchain
pacman -S cmake mingw-w64-x86_64-glew mingw-w64-x86_64-glm mingw-w64-x86_64-SDL2
On the gnome binaries website, navigate to win32 or win64 (for 32 or 64 bit), dependencies, and download the latest non-dev versions of gettext-runtime and pkg-config. Navigate back to the parent directory, glib, then download the latest non-dev version of glib.
sudo apt install build-essential cmake libglfw3-dev libglew-dev libglm-dev libassimp-dev
sudo pacman -S base-devel cmake glfw glew glm assimp
sudo dnf install kernel-devel cmake sdl // TODO
mkdir build
cd build
cmake ..
cmake --build .
Windows:
cd res
../build/run/cinnabar-engine.exe
Linux:
cd res
../build/run/cinnabar-engine
- Build Pipeline: CMake
- Library Helper: pkg-config
- Window: GLFW
- Rendering: OpenGL
- OpenGL Extention Loader: GLEW
- Maths: OpenGL Mathematics
- Image: STB Image
- Text Files: std:fstream
- Logger: Tumpnt Logger
- Time: TumbleTime
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Moved to: https://github.com/cinnabar-engine/cinnabar/projects/3
- Shapes
- Point
- Line segment
- Rectangular prism
- Sphere
- Cylinder
- Capsule
- Cone
- Ngon prism
- Elipsoid
- Mesh
- Shape collision
- Shape advanced collision (Get information like position, speeds, collision normals, etc. so that physics can be done)
- Physics
- Air resistance
- Friction
- Bounciness
- Buoyancy
- Fake fluid (fluid in small comtainers like bottles, get water level)
- Soft body
- Fluid
- Portals
- Port to Windows
- Port to MacOS
- Port to Emscripten
- Port to Android
- Port to iOS
- TODO: Make todo list
- States
- Scene Graph
- Map management
- XML based scene graph import
- Events System
- Make an Actual Game