The Untold Editor is a companion tool for the Untold Engine.
It provides a visual environment for managing assets, scenes, and entities in projects built with the engine.
The editor is not required to use the engine, but it makes iteration faster by giving developers and designers a user-friendly interface.
- Scene Graph – Organize and visualize entity hierarchies
- Inspector – View/edit components on selected entities
- Asset Browser – Import, organize, and assign models, textures, materials
- Gizmo Tools – Translate / rotate / scale entities directly in the viewport
- Edit / Play Modes – Tweak, then simulate
- External Asset Folder – Import assets at runtime without rebuilding the app
- macOS 14+
- Xcode 15+ (or Swift 5.10+ toolchain)
- Metal-capable Mac
Clone this repository:
git clone https://github.com/untoldengine/UntoldEditor.git
cd UntoldEditorThe Editor is a Swift Package with an executable target named UntoldEditor. It declares a dependency on the Untold Engine package; Xcode/SwiftPM will resolve it automatically.
- Open Xcode → File ▸ Open → select the Package.swift in this repo
- Xcode will create a workspace view for the package
- Choose the UntoldEditor scheme → Run
swift build
swift run UntoldEditorBy default, this repo pins Untold Engine to a released version. If you want the latest engine changes:
- In the project navigator: Package Dependencies → UntoldEngine
- Set Dependency Rule to Branch and type develop
.dependencies = [
.package(url: "https://github.com/untoldengine/UntoldEngine.git", branch: "develop")
]Then reload packages:
xcodebuild -resolvePackageDependencies
# or in Xcode: File ▸ Packages ▸ Resolve Package Versions- Create / Open a Project – Use the start screen or File menu
- Set Asset Folder – Choose an external directory for your project’s assets
- Import Assets – Drag files in or use the Asset Browser “+”
- Build Your Scene – Create entities, add components, use gizmos to position
- Play Mode – Toggle to simulate and validate behavior
- Save / Load – Save project and scene files; reopen later to continue
💡 Why an external asset folder?
It enables runtime importing and iteration without copying everything into the app bundle.
-
Editor scheme not visible
- Make sure you opened the package (its
Package.swift) or the generated workspace, not a single source file - Product ▸ Scheme ▸ Manage Schemes… → ensure Shared is checked for
UntoldEditor - File ▸ Packages ▸ Reset Package Caches if dependencies look stale
- Make sure you opened the package (its
-
Can’t switch to
develop- If the Dependency Rule control is disabled, edit
Package.swift(see “Pinning the Engine Dependency”) and re-resolve packages
- If the Dependency Rule control is disabled, edit
We welcome PRs!
- Fork the repository
- Create a feature branch (
git checkout -b feature/my-feature) - Commit your changes
- Push the branch and open a Pull Request
See CONTRIBUTING.md and CODE_OF_CONDUCT.md (coming soon).
- Engine Core: Untold Engine
- Examples / Starter Projects: UntoldEngineExamples
Licensed under GNU LGPL v3.0.
See LICENSE for details.
