How medelbou3/sm-engine works
SM Engine is a desktop 3D creation and game-development platform. The principal workflow is to author and edit a scene, persist it in a project, run it through gameplay and rendering systems, then export a playable build. Its documented branches include modeling and sculpting, animation, environments, virtual-production capture, assets, and plugins. The graph combines README-level capability descriptions with sampled source; many subsystem links are therefore omitted where the actual caller was not sampled.
Main entry points: engine-core-functions.js Editor Workspace · SMGameModeRuntime.js Gameplay Runtime · SMProjectManager.js Project Manager · AssetStorageManager.js Asset Library
Components 21
Scene Authoring
- Editor Workspace
js/core/engine-core-functions.js - Mesh Modeling
processing/smengine-modeling.js - Mesh Sculpting
sculpting/wasm/sculpt_engine.cpp - Building Tools
engine/architecture-builder - Animation Tools
editor/animation - 2D Animation
engine/2d/2D-animation
Content Systems
- Asset Library
engine/logic/Managers/AssetStorageManager.js - Asset Pipeline
engine/asset-pipeline - Environment Systems
engine/2d/SM2DEnvironmentSystem.js - Plugin System
engine/plugins/core/SMPluginManager.js
Runtime and Render
- Gameplay Runtime
engine/game-play/SMGameModeRuntime.js - Player Systems
engine/player/SMPlayerSystem.js - Render Pipeline
rendering/SMRenderPipeline.js - Performance Control
engine/optimization/PerformanceManager.js
Media and Export
- Live Capture
engine/capture/core/SMCaptureSystem.js - Build and Export
engine/export/SMExportPipeline.js
Project Platform
- Project Manager
engine/project/SMProjectManager.js - Project Storage
engine/project/SMProjectStorage.js - Desktop Shell
electron-main.js - Script Loader
js/SMEngineScriptLoader.js
Other components
- Creator
Connections 21
- Creator → Editor Workspace: authors in
- Editor Workspace → Mesh Modeling: edits meshes
- Editor Workspace → Mesh Sculpting: sculpts meshes
- Editor Workspace → Building Tools: uses tools
- Editor Workspace → Animation Tools: edits animation
- Editor Workspace → 2D Animation: creates 2D
- Editor Workspace → Project Manager: manages project
- Project Manager → Project Storage: persists data
- Editor Workspace → Asset Library: manages assets
- Asset Library → Asset Pipeline: imports assets
- Editor Workspace → Environment Systems: configures environment
- Editor Workspace → Plugin System: extends editor
- Project Manager → Gameplay Runtime: loads project
- Gameplay Runtime → Player Systems: runs player
- Gameplay Runtime → Render Pipeline: renders scene
- Render Pipeline → Performance Control: reports performance
- Creator → Live Capture: provides media
- Creator → Build and Export: requests build
- Build and Export → Gameplay Runtime: packages runtime
- Desktop Shell → Editor Workspace: hosts editor
- Script Loader → Editor Workspace: loads scripts