SpaRcle Engine is an ongoing game engine developed in C++. It aims to establish a strong base for game creation and is currently in the early stages of development, emphasizing the creation of a versatile and efficient architecture.
- MSVC (Stable)
- MinGW
- Cygwin
- Clang
- GCC
- Windows 10
- Linux X11 (in development)
- Linux Wayland
- Android
- master - branch for releases
- dev - active development branch
- features/* - branches for new features
- tmp/* - temporary branches for dangerous experiments
Important
Requirements:
- 0.1. Install Clion 2020.1 or newer / Visual Studio 2019 or newer
- 0.2. Install Vulkan SDK/Runtime 1.3.211.0 or newer
- 0.3. Install CMake 3.16.0 or newer
- 0.4. Install MS Build Tools for Visual Studio 16.11.29 or newer (if you are using CLion)
Clone repository via the command "git clone https://github.com/SpaRcle-Studio/SREngine"
Switch to the "dev" (or another one) branch via the command "git checkout branch_name"
Run command "git submodule update --init --recursive" in repository folder
4. Working with CMake (if you're using Visual Studio):
- 4.1 Open CMake GUI
- 4.2 Choose the path to the SREngine folder (where the source code is located).
- 4.3 Choose the path where to build the binaries (SREngine/Build).
- 4.4 Press "Configure" and choose your VS version.
- 4.5 Press "Generate"
- 4.6 Open Visual Studio solution
- 4.7 Set as startap project SREngine
- 4.8 Run build
5. Working with CLion:
- 5.1 Press Ctrl + Alt + S to open Settings window
- 5.2. Select "Build, Execution, Deployment" on the left
- 5.3. Select "Toolchains"
- 5.4. Add (Alt + Insert) Visual Studio compiler
- 5.5. Select amd64 in "Architecture:"
- 5.6. Repeat 5.2
- 5.7. Select "CMake"
- 5.8. Pass "-j*" argument as "Build options", while * is a number of your logical processors minus 2
- 5.9. In Project window right-click SREngine folder and click "Reload CMake Project"
- 5.10. Click "Run 'SREngine'" (Shift + F10)
- ImGUI
- ImGuizmo
- tinyobjloader
- imgui-node-editor
- EvoScript
- EvoVulkan
- Assimp
- Vulkan Memory Allocator
- stb
- glm
- Bullet3
- PhysX
- Box2D
- json
- SpaRcle Shader Language (SRSL)
- SpaRcle Logical Machine (SRLM) aka Blueprints
- Chunk system
- Render passes
- Custom framebuffers
- C++ scripting system
- Animations
- SSAO
- Cascaded shadow mapping
- Ray-marching
- Physics
- Font renderer
- Vulkan pipeline
- Multi-cameras renderer
- Geometry loader
- Texture loader