This guide is intentionally high level. It documents the current expected workflow instead of preserving the older citation-heavy snapshot docs.
- The runtime is expected to enter through the normal engine bootstrap so scripting, updater checks, and backend initialization share the same path.
- Example desktop wiring lives under
Engine/examples/ConsoleApplication1/. - Multi-context behavior depends heavily on the configuration macros documented
in
aengineconfig_flags.md.
- Script sources are expected to live in the script source tree used by the runtime/example launcher.
- Reload flow is task-graph driven and intended to surface compile/load/execute failures as explicit diagnostics instead of silent stalls.
- Treat hot reload as an active development feature, not a release guarantee: it is powerful, but it still benefits from targeted smoke coverage.
- The engine logger is the preferred way to tag subsystem output.
- Keep backend-specific noise behind subsystem names so multi-context runs stay readable.
- Repeated identical startup/error lines should collapse instead of flooding the console; one tagged line per repeated condition is the goal, with backend detail still carried in the subsystem tag and source location.
- For release/version reporting, prefer the shared version helpers instead of duplicating hard-coded version strings.
- OpenGL is the main GPU renderer today.
- SDL, Raylib, and SFML are active context integrations with different levels of stability.
- Software rendering remains valuable as a fallback and debugging path.
- Vulkan should still be treated as experimental unless you are actively finishing that path.
- Right-drag orbits the editor preview camera.
- Left-drag pans the preview focus across the grid plane.
- Mouse wheel zooms the editor preview camera in and out.
- The preview should show a visible look-hit marker where the center camera ray intersects the grid, which makes it easier to read the active focus spot during multi-context runs without a floating false-collision marker.
- The editor should expose real scene/entity actions from the live UI instead of placeholder logging buttons.
- The current asset/outliner path is expected to support adding meshes, lights, spawns, duplicating the current selection, and deleting the current selection.
- The AI chat panel depends on the same runtime input plumbing as the rest of the GUI. On Windows docked contexts, wheel/key/text messages must be routed from the child HWNDs into the GUI event queue or the chat/input surfaces will look present but behave dead.
- Verify the expected context/render macros are enabled.
- Launch Windows smoke tests from
x64/Debug/orx64/Release/so the editor host and docked backend panes share the colocated runtime assets. - Keep Windows
.rc, icon, and resource headers underEngine/resource/so MSVC and CMake stay aligned on the same resource root. - Use fresh build directories when changing compilers, module scanning flags, or backend combinations.
- If reload behavior becomes inconsistent, check script diagnostics first, then task-graph saturation, then backend context health.
- When investigating backend issues, prefer backend-local fixes over broad multiplexer behavior changes unless you have proven the shared layer is at fault.