How shimakaze09/engine works
This is a C++ game engine whose main user workflow is authoring a project through Lua and the editor, then running it in the editor or standalone player. Runtime bootstraps the project and frame loop, simulates a world, prepares and renders frames, and provides scripting, physics, audio, and content services. Asset cooking and scene validation are supporting product capabilities. Edges use README statements or SOURCE INDEX references; unsampled subsystem internals and uncertain call paths are not expanded.
Main entry points: engine_pipeline.cpp Engine run loop · render_prep_pipeline.cpp Render preparation · asset_catalog.cpp Asset catalog · editor.cpp Editor
Components 17
Applications
- Editor app
app/main.cpp - Player app
player/main.cpp
Runtime
- Project handling
runtime/src/project.cpp - Engine run loop
runtime/src/engine_pipeline.cpp - World simulation
runtime/src/world.cpp - Lua scripting
scripting/src/scripting.cpp
Authoring
- Editor
editor/src/editor.cpp - Scene validation
tools/engine_validate/main.cpp
Content and Rendering
- Asset catalog
content/src/asset_catalog.cpp - Asset cooking
tools/asset_packer/main.cpp - Asset residency
renderer/src/asset_manager.cpp - Render preparation
runtime/src/render_prep_pipeline.cpp - Renderer
renderer/src/command_buffer_flush.cpp
Engine Services
- Physics
physics/src/physics.cpp - Audio
audio/src/audio.cpp - Platform and core
core/src/platform.cpp
Other components
- Game author
Connections 19
- Game author → Editor: authors with
README.md - Game author → Lua scripting: authors Lua
README.md - Editor app → Engine run loop: starts
app/main.cpp - Player app → Engine run loop: runs
player/main.cpp - Editor → Engine run loop: edits through
README.md - Engine run loop → Project handling: opens project
README.md - Engine run loop → Platform and core: uses platform
- Engine run loop → World simulation: simulates
README.md - Engine run loop → Lua scripting: runs scripts
README.md - Engine run loop → Physics: steps physics
- Engine run loop → Audio: uses audio
- Engine run loop → Asset catalog: streams assets
runtime/src/engine_pipeline.cpp - Engine run loop → Render preparation: prepares frame
- Render preparation → World simulation: reads world
- Render preparation → Renderer: builds commands
- Asset catalog → Asset residency: tracks requests
- Asset residency → Renderer: loads meshes
- Asset cooking → Asset catalog: cooks assets
README.md - Scene validation → Project handling: checks scenes
tools/engine_validate/main.cpp