How prowlengine/prowl works
Prowl is a Unity-like C# game engine with a standalone runtime and a full editor. The main authoring workflow is to open a project, import assets, edit and save scenes, compile scripts, then play or build a standalone game. The graph also preserves major runtime capabilities documented in the README, including rendering, physics, audio, navigation, and UI. Runtime links are grounded in the sampled source where available; other capability links reflect the README and file tree, so their internal wiring is not inferred.
Main entry points: GameObject.cs GameObject scenes · EditorSceneManager.cs Scene editing · BuildSettingsPanel.cs Build profiles · EditorAssetBackend.cs Asset database
Components 22
Editor Workflow
- Editor application
Prowl.Editor/Core/EditorApplication.cs - Project settings
Prowl.Editor/Projects/Project.cs - Scene editing
Prowl.Editor/GUI/SceneView/EditorSceneManager.cs - Inspector and panels
Prowl.Editor/GUI/Panels/InspectorPanel.cs - Save coordination
Prowl.Editor/Projects/SaveManager.cs - Script compilation
Prowl.Editor/Projects/Scripting/ScriptAssemblyManager.cs - Scene hot reload
Prowl.Editor/Projects/Scripting/SceneHotReload.cs - Build profiles
Prowl.Editor/GUI/Panels/BuildSettingsPanel.cs
Project Content
- Asset database
Prowl.Editor/AssetsDatabase/EditorAssetBackend.cs - Asset importers
Prowl.Editor/AssetsDatabase/Importers/AssetImporter.cs
Game Runtime
- Game lifecycle
Prowl.Runtime/Game.cs - GameObject scenes
Prowl.Runtime/GameObject/GameObject.cs - Physics and collision
Prowl.Runtime/Components/Physics/CharacterController.cs - Navigation meshes
Prowl.Runtime/Navigation/NavMeshBuilder.cs - Spatial audio
Prowl.Runtime/Audio/AudioContext.cs - Game UI
Prowl.Runtime/Components/UI/UIRenderTree.cs
Rendering
- Render pipeline
Prowl.Runtime/Rendering/DefaultRenderPipeline.cs - Render batching
Prowl.Runtime/Rendering/RenderPipeline.cs - Graphics commands
Prowl.Runtime/Graphics/Commands/CommandBuffer.cs
Other components
- Developer
- Desktop player
Players/Desktop/DesktopPlayer.cs - Standalone game
Connections 24
- Developer → Editor application: uses
- Editor application → Project settings: opens
- Project settings → Asset database: configures
- Asset database → Asset importers: dispatches imports
- Developer → Scene editing: edits scenes
- Scene editing → GameObject scenes: loads scene
- Developer → Inspector and panels: inspects content
- Inspector and panels → Asset database: resolves assets
- Scene editing → Save coordination: saves scene
- Developer → Script compilation: requests compile
- Script compilation → Scene hot reload: reloads scripts
- Scene hot reload → GameObject scenes: migrates live scene
- Developer → Build profiles: configures build
- Build profiles → Desktop player: targets player
- Desktop player → Game lifecycle: starts runtime
- Game lifecycle → GameObject scenes: runs scene
- GameObject scenes → Physics and collision: uses components
- GameObject scenes → Navigation meshes: uses components
- GameObject scenes → Spatial audio: uses components
- GameObject scenes → Game UI: renders canvases
- GameObject scenes → Render pipeline: collects renderables
- Render pipeline → Render batching: draws renderables
- Render batching → Graphics commands: encodes commands
- Build profiles → Standalone game: produces build