Skip to content

SpaRcle-Studio/SREngine

Repository files navigation

SpaRcle Engine

Project Status: Active – The project is under active delopment!. CodeFactor. GitHub Contributors. Issues. Commit Activity. Discord server.

Build statistics.

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

image_2023-05-31_21-40-59 image_2023-05-31_21-40-59

Supported compilers

  • MSVC (Stable)
  • MinGW
  • Cygwin
  • Clang
  • GCC

Supported platforms

  • Windows 10
  • Linux X11 (in development)
  • Linux Wayland
  • Android

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

Building

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)
  1. Clone repository via the command "git clone https://github.com/SpaRcle-Studio/SREngine"
  2. Switch to the "dev" (or another one) branch via the command "git checkout branch_name"
  3. 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)

Used libraries

Features

  • 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

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.