Adapter for visualizing BehaviorTree runtime using unified renderer.
More...
#include <BTDebugAdapter.h>
Adapter for visualizing BehaviorTree runtime using unified renderer.
Usage in BehaviorTreeDebugWindow:
ComponentTypeID GetComponentTypeID_Static()
static SDL_Renderer * renderer
Adapter for visualizing BehaviorTree runtime using unified renderer.
Definition at line 54 of file BTDebugAdapter.h.
◆ BTDebugAdapter()
Construct a debug adapter for a behavior tree.
- Parameters
-
| tree | BehaviorTree runtime asset to visualize |
| layoutEngine | Layout engine for node positioning |
◆ ~BTDebugAdapter()
| Olympe::NodeGraphShared::BTDebugAdapter::~BTDebugAdapter |
( |
| ) |
|
◆ ApplyRuntimeHighlighting()
| void Olympe::NodeGraphShared::BTDebugAdapter::ApplyRuntimeHighlighting |
( |
| ) |
|
|
private |
◆ CenterOnActiveNode()
| void Olympe::NodeGraphShared::BTDebugAdapter::CenterOnActiveNode |
( |
| ) |
|
Center view on active node.
◆ ClearRuntimeState()
| void Olympe::NodeGraphShared::BTDebugAdapter::ClearRuntimeState |
( |
| ) |
|
Clear all runtime highlighting.
◆ ConvertBehaviorTreeToDocument()
| void Olympe::NodeGraphShared::BTDebugAdapter::ConvertBehaviorTreeToDocument |
( |
| ) |
|
|
private |
◆ EnsureGraphDocumentConverted()
| void Olympe::NodeGraphShared::BTDebugAdapter::EnsureGraphDocumentConverted |
( |
| ) |
|
|
private |
◆ FitToView()
| void Olympe::NodeGraphShared::BTDebugAdapter::FitToView |
( |
| ) |
|
Fit graph to view (auto-zoom)
◆ GetActiveNodeId()
| uint32_t Olympe::NodeGraphShared::BTDebugAdapter::GetActiveNodeId |
( |
| ) |
const |
|
inline |
◆ Initialize()
| void Olympe::NodeGraphShared::BTDebugAdapter::Initialize |
( |
NodeGraph::NodeGraphRenderer * |
renderer, |
|
|
const NodeGraph::RenderConfig * |
config = nullptr |
|
) |
| |
Initialize the adapter with a renderer instance.
- Parameters
-
| renderer | NodeGraphRenderer to use (must outlive adapter) |
| config | Optional render configuration (nullptr = use defaults) |
◆ IsEditorMode()
| bool Olympe::NodeGraphShared::BTDebugAdapter::IsEditorMode |
( |
| ) |
const |
|
inline |
◆ IsInitialized()
| bool Olympe::NodeGraphShared::BTDebugAdapter::IsInitialized |
( |
| ) |
const |
|
inline |
◆ RecomputeLayout()
| void Olympe::NodeGraphShared::BTDebugAdapter::RecomputeLayout |
( |
float |
nodeSpacingX, |
|
|
float |
nodeSpacingY, |
|
|
float |
zoomFactor |
|
) |
| |
Recompute layout (call after tree structure changes)
- Parameters
-
| nodeSpacingX | Horizontal spacing between nodes |
| nodeSpacingY | Vertical spacing between nodes |
| zoomFactor | Current zoom level |
◆ Render()
| void Olympe::NodeGraphShared::BTDebugAdapter::Render |
( |
float |
deltaTime | ) |
|
Render the behavior tree using unified pipeline.
- Parameters
-
| deltaTime | Time since last frame (for animations) |
◆ SetActiveNode()
| void Olympe::NodeGraphShared::BTDebugAdapter::SetActiveNode |
( |
uint32_t |
nodeId | ) |
|
Set the currently executing node (for highlighting)
- Parameters
-
| nodeId | ID of active node (0 = none) |
◆ SetEditorMode()
| void Olympe::NodeGraphShared::BTDebugAdapter::SetEditorMode |
( |
bool |
enabled | ) |
|
Enable editor mode (allows modifications via commands)
- Parameters
-
| commandStack | Command stack for undo/redo (nullptr = read-only) |
◆ Shutdown()
| void Olympe::NodeGraphShared::BTDebugAdapter::Shutdown |
( |
| ) |
|
Shutdown and cleanup resources.
◆ SyncLayoutToDocument()
| void Olympe::NodeGraphShared::BTDebugAdapter::SyncLayoutToDocument |
( |
| ) |
|
|
private |
◆ UpdateNodePosition()
Update a single node position (user drag in editor mode)
- Parameters
-
| nodeId | Node to move |
| x | New X position |
| y | New Y position |
- Returns
- true if position updated successfully
◆ m_activeNodeId
| uint32_t Olympe::NodeGraphShared::BTDebugAdapter::m_activeNodeId |
|
private |
◆ m_currentLayout
| std::vector<BTNodeLayout> Olympe::NodeGraphShared::BTDebugAdapter::m_currentLayout |
|
private |
◆ m_document
◆ m_documentDirty
| bool Olympe::NodeGraphShared::BTDebugAdapter::m_documentDirty |
|
private |
◆ m_editorMode
| bool Olympe::NodeGraphShared::BTDebugAdapter::m_editorMode |
|
private |
◆ m_lastNodeSpacingX
| float Olympe::NodeGraphShared::BTDebugAdapter::m_lastNodeSpacingX |
|
private |
◆ m_lastNodeSpacingY
| float Olympe::NodeGraphShared::BTDebugAdapter::m_lastNodeSpacingY |
|
private |
◆ m_lastZoomFactor
| float Olympe::NodeGraphShared::BTDebugAdapter::m_lastZoomFactor |
|
private |
◆ m_layoutEngine
◆ m_renderer
| NodeGraph::NodeGraphRenderer* Olympe::NodeGraphShared::BTDebugAdapter::m_renderer |
|
private |
◆ m_tree
The documentation for this class was generated from the following file: