v0.1 · raylib core
repository →

lightweight, Lua‑scriptable
3D game engine

Built with Raylib, using custom AABB physics, modular scripting, and a no‑bloat philosophy. you control the logic, we handle the core.

Buy Me a Coffee

Raylib 3D

Hardware-accelerated rendering, lightweight and cross‑platform.

Lua Scripting

Full game logic via NLua, OnStart, OnUpdate, custom behaviours.

AABB Physics

Gravity, sliding, jumping, collision callbacks. Deterministic.

GUI System

Anchored frames, text, health bars. screen space UI.

dependencies
LibraryVersionRole
Raylib_cs8.0.0+bindings for rendering, input, audio
NLua1.7.9+Lua state integration, scripting host
.NET8.0+runtime / core host
quick start
git clone https://github.com/ORB-I/AxiomForge.git
cd AxiomForge
dotnet add package Raylib-cs --version 8.0.0
dotnet add package NLua --version 1.7.3
dotnet restore
dotnet run
scripting (Lua, no sugar)
-- place .lua files inside 'Scripts/' folder
function OnStart()
    print("AxiomForge :: engine ready")
    -- spawn part: CreateBox("myBox", 2, 2, 2)
end

function OnUpdate()
    local player = GetPlayer()
    if InputPressed("space") then
        player:Jump()
    end
    -- update custom logic
end

function OnCollisionEnter(other)
    print("hit: " .. other.name)
end

Scripts folder is auto-loaded from executable directory.

core modules & capabilities
  • 3D rendering – boxes, spheres, custom meshes
  • Modular parts – spawn & transform objects at runtime
  • Player API – position, velocity, jump, input
  • Third-person camera – orbit + drag controls
  • Screen GUI - anchored frames, dynamic text, bars
  • AABB collisions – sliding & callbacks
build & footprint
# requirements
- .NET SDK 8.0
- OpenGL 3.3+ compatible GPU

# build release
dotnet build -c Release
./bin/Release/net8.0/AxiomForge

Lua 5.1 · NLua no external editor required
~ minimal overhead, single-file deployment