Skip to content
This repository was archived by the owner on Sep 6, 2025. It is now read-only.

Jernesstar/VolcanicEngine

Repository files navigation

VolcanicEngine Version Licence Documentation

Vision

A simple, modular and capable game engine for programmers of all levels of expertise

Features & Architecture

  • Fast & Pure Entity Component System using flecs
  • Physics powered by NVIDIA PhysX
  • Intuitive UI system rendered with ImGui
  • Scripting simplified using Angelscript
  • Modern OpenGL utilizing advanced optimization techniques

and much more!

Project Structure

Provides the functions and abstractions used throughtout the rest of the project.
Defines the rendering architecture and abstractions.

Magma

Defines the Scene, and UIPage objects, as well as functions and classes for:

  • Audio
  • Scripting
  • Physics

Where your creativity gets to flow. The intuitive visual tools needed to bring your game to life.
Some features are:

  • Hot reloading of all assets, including shaders and scripts
  • Built-in script editor with:
    • Linting
    • On-hover descriptions for functions and classes
    • Line-by-line debugger with variable inspector
  • Fast in-editor testing of scenes and UI

The SceneTab

SceneTab

The UITab

UITab

Lava

Defines the App class, the bridge between your angelscript app and the VolcanicEngine's C++ application.
Also defines the numerous classes, functions and bindings for the scripting language

The application used to run the game as a standalone.

Download instructions

For Windows: Go to releases. Download the installer, run it and follow the instructions.
For Linux: Go to releases.
Download the .deb file, navigate to the directory where the .deb file is located and run

sudo dpkg -i ./VolcanicEngine.deb

Build instructions

Clone the repo and pull all submodules

git clone https://github.com/Jernesstar/VolcanicEngine.git
git submodule update --init

The build system uses premake. On Linux, run

scripts/Unix/premake.sh

and for Windows, run

scripts/Windows/premake.bat

Run the following instead for MSVC:

.\vendor\premake\bin\Windows\premake5.exe vs2022

This will generate the Makefiles/solution and project files for the project. After this step is complete, run

scripts/Unix/build.sh

and for Windows, run

scripts/Windows/build.bat

For MSVC, simply build the project.