Introduction
Introduction
Section titled “Introduction”SolEngine is a C++20 game engine built on Vulkan with a Qt6 + ImGui editor and Lua scripting. It is designed to be fully understandable, hackable, and fast — without the abstraction walls of Unity or Unreal.
What you get
Section titled “What you get”| Layer | Tech |
|---|---|
| Renderer | Vulkan — PBR, IBL, CSM shadows, SSAO, SSR, TAA, Bloom |
| Editor | Qt6 + ImGui — hierarchy, inspector, material editor, script editor |
| Scripting | Lua 5.4 (LuaBridge) — full scene, physics, audio, and input access |
| Physics | Jolt Physics — raycasts, rigid/character bodies, Area3D callbacks |
| Audio | miniaudio — 3D positional, OGG/WAV/MP3 |
| Scenes | Node-tree, .solscene JSON, ResourceCache |
Node Types
Section titled “Node Types”SolEngine has 17 built-in node types across 4 categories:
- Spatial —
Node3D,MeshNode,ModelNode,Camera3D - Lighting —
DirectionalLight,PointLight - Physics —
RigidBody3D,StaticBody3D,CharacterBody3D,CollisionShape3D,Area3D - Logic —
ScriptNode,LuaComponent,AudioStreamPlayer,AudioStreamPlayer3D,WorldEnvironment,SceneInstance
Architecture
Section titled “Architecture”sol_editor.exe — Qt6 editor (loads sol_engine.dll)sol_engine.dll — all subsystems: renderer, physics, audio, Lua, sceneGame logic lives in Lua scripts attached to scene nodes — no engine recompilation needed.
Next Steps
Section titled “Next Steps”- Getting Started — Build from source and run the demo
- Lua API Reference — Script the engine with Lua
- Node Types Reference — Full node type catalogue
- GitHub — Source, issues, contributions