mirror of
https://github.com/SpaRcle-Studio/SREngine.git
synced 2026-03-23 20:09:08 +00:00
⚡ SpaRcle Engine - cross-platform 2D/3D game engine in C++.
https://sparcles.dev/
- C++ 81%
- Python 13.6%
- CMake 3.7%
- Batchfile 1%
- C 0.4%
- Other 0.3%
| .github | ||
| CI | ||
| Documentation | ||
| Engine | ||
| Platform | ||
| Resources | ||
| .gitignore | ||
| .gitmodules | ||
| CMakeLists.txt | ||
| CNAME | ||
| dev.sparcles.SREngine.desktop | ||
| dev.sparcles.SREngine.metainfo.xml | ||
| LICENSE | ||
| mkdocs.yml | ||
| README.md | ||
SpaRcle Engine
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.
Screenshots
Supported compilers
- MSVC (stable)
- GCC (stable)
- Clang (Stable)
- MinGW
- Cygwin
Supported platforms
- Windows 10/11
- Linux X11 (partial)
- Linux Wayland (in active development)
- Android
- iOS - not planned in near future
- MacOS - not planned in near future
Branches
- master - branch for releases
- dev - active development branch
- features/* - branches for new features
- tmp/* - temporary branches for dangerous experiments
- release/* - branches for release candidates
How to build?
See documentation
Documentation
Features
- Custom shader language with reflection and cross-compilation.
- Modular render graph with fully customizable pipeline.
- Vulkan-based renderer optimized for performance.
- Multi-camera rendering with support for multiple viewports and render targets.
- C++ hot-reload scripting with state preservation.
- Compile-time metadata & reflection system.
- Single-file ~80 MB executable that deploys only to its own directory and requires no installation.
Used libraries
FAQ
Why SpaRcle Engine?
It's a lightweight and simple Unity-like game engine that maximizes cross-platform
compatibility and utilizes fast and efficient C++ for scripting.
The engine offers the flexibility to customize the graphics pipeline
according to specific requirements.
The ability to create endless procedurally generated worlds is provided
wtih a system that divides the world into regions and chunks.