![]() |
Ember
|
A modern Linux behavior tree editor and visualizer
documentation
Ember is a modern, cross-platform behavior tree editor and visualizer designed for game developers, robotics engineers, and AI researchers. Built with C++14 and wxWidgets, it provides a powerful yet intuitive interface for creating, editing, and debugging behavior trees.
Ember is built with a clean separation between core logic and UI:
| Component | Description |
|---|---|
| EmberCore | Framework-agnostic core library for behavior tree operations |
| EmberForge | wxWidgets-based GUI application |
See System Architecture for detailed architecture documentation.
| Guide | Purpose |
|---|---|
| User Guide | User Guide — How to use the application, workflows, and features |
| Development | Developer Guide — Build, architecture, contribution, and API reference |
| Module | Description |
|---|---|
| Core Components | Behavior tree data structures (Node, BehaviorTree, Blackboard) |
| Parsing System | XML parsing, serialization, and configuration |
| Tree Adapters | Abstraction layer for tree visualization |
| Abstract Interfaces | Pure virtual interfaces for extensibility |
| Module | Description |
|---|---|
| Application | Main application and frame window |
| Panels | Dockable panel system |
| Tabs | Tab components for different views |
| Dialog Windows | Modal dialogs for user interaction |
| Scenes | Scene containers and visualizations |
| Utilities | Helper classes and converters |
See Getting Started for a complete tutorial.
Ember is open source software. See the LICENSE file for details.
Contributions are welcome! Please read the contributing guidelines before submitting pull requests.