AAMjManager¶
Thin coordinator actor for the MuJoCo simulation within Unreal Engine.
Owns subsystem components and delegates to them: - UMjPhysicsEngine: simulation lifecycle, model/data, options, async loop - UMjDebugVisualizer: debug drawing, collision wireframes - UMjNetworkManager: ZMQ components, camera streaming - UMjInputHandler: keyboard hotkeys External code accesses subsystem state via Manager->PhysicsEngine->X, etc.
| Attribute | Value |
|---|---|
| Kind | Class |
| UE Macro | UCLASS |
| Inherits | AActor |
Properties¶
Public Properties¶
| Property | Type | Description |
|---|---|---|
PhysicsEngine |
UMjPhysicsEngine* | |
DebugVisualizer |
UMjDebugVisualizer* | |
NetworkManager |
UMjNetworkManager* | |
InputHandler |
UMjInputHandler* | |
Perturbation |
UMjPerturbation* | Mouse-driven body perturbation (simulate-style Ctrl+LMB/RMB drag). |
Instance |
static AAMjManager* | Set in BeginPlay, cleared in EndPlay. Use GetManager() from Blueprints. |
bAutoCreateSimulateWidget |
bool |
|
StepMode |
EStepMode | Step mode for the simulation. |
Seed |
int32 |
Deterministic seed written to m->opt.seed before compile. |
BridgeServer |
TObjectPtr<UURLabBridgeServer> | Owns the FURLabRpcDispatcher + transports. Created in BeginPlay, destroyed in EndPlay. |
ManagerOwnedPublishTransports |
TArray |
Manager-owned UObject publish transports |
ManagerOwnedSubscribeTransports |
TArray |
Manager-owned UObject subscribe transports |
m_MujocoComponents |
TArray<UMjQuickConvertComponent*> | |
m_articulations |
TArray<AMjArticulation*> | |
m_heightfieldActors |
TArray<AMjHeightfieldActor*> |
PhysicsEngine¶
- Type: UMjPhysicsEngine*
- Editor: 👁 VisibleAnywhere
- Blueprint: 🟢 ReadOnly
- Category: MuJoCo
DebugVisualizer¶
- Type: UMjDebugVisualizer*
- Editor: 👁 VisibleAnywhere
- Blueprint: 🟢 ReadOnly
- Category: MuJoCo
NetworkManager¶
- Type: UMjNetworkManager*
- Editor: 👁 VisibleAnywhere
- Blueprint: 🟢 ReadOnly
- Category: MuJoCo
InputHandler¶
- Type: UMjInputHandler*
- Editor: 👁 VisibleAnywhere
- Blueprint: 🟢 ReadOnly
- Category: MuJoCo
Perturbation¶
Mouse-driven body perturbation (simulate-style Ctrl+LMB/RMB drag).
- Type: UMjPerturbation*
- Editor: 👁 VisibleAnywhere
- Blueprint: 🟢 ReadOnly
- Category: MuJoCo
Instance¶
Set in BeginPlay, cleared in EndPlay. Use GetManager() from Blueprints.
- Type: static AAMjManager*
bAutoCreateSimulateWidget¶
- Type: bool
- Editor: ✏️ EditAnywhere
- Blueprint: 🔵 ReadWrite
- Category: MuJoCo|UI
StepMode¶
Step mode for the simulation.
- Type: EStepMode
- Editor: ✏️ EditAnywhere
- Blueprint: 🔵 ReadWrite
- Category: MuJoCo|Remote Stepping
Seed¶
Deterministic seed written to m->opt.seed before compile.
- Type: int32
- Editor: ✏️ EditAnywhere
- Blueprint: 🔵 ReadWrite
- Category: MuJoCo|Remote Stepping
BridgeServer¶
Owns the FURLabRpcDispatcher + transports. Created in BeginPlay, destroyed in EndPlay.
- Type: TObjectPtr<UURLabBridgeServer>
ManagerOwnedPublishTransports¶
Manager-owned UObject publish transports
- Type: TArray
UURLabPublishTransport\>>
ManagerOwnedSubscribeTransports¶
Manager-owned UObject subscribe transports
- Type: TArray
UURLabSubscribeTransport\>>
m_MujocoComponents¶
- Type: TArray<UMjQuickConvertComponent*>
- Editor: ✏️ EditAnywhere
- Blueprint: 🟢 ReadOnly
- Category: Mujoco Physics|Objects
m_articulations¶
- Type: TArray<AMjArticulation*>
- Editor: ✏️ EditAnywhere
- Blueprint: 🟢 ReadOnly
- Category: Mujoco Physics|Objects
m_heightfieldActors¶
- Type: TArray<AMjHeightfieldActor*>
- Editor: ✏️ EditAnywhere
- Blueprint: 🟢 ReadOnly
- Category: Mujoco Physics|Objects
Protected Properties¶
| Property | Type | Description |
|---|---|---|
m_ArticulationMap |
TMap |
O(1) articulation lookup built in PostCompile. Key = actor name. |
SnapshotPublishers |
TArray<FRegisteredSnapshotPublisher> |
Snapshot publishers registered by their owning components. Read on |
m_ArticulationMap¶
O(1) articulation lookup built in PostCompile. Key = actor name.
- Type: TMap
AMjArticulation\*>
Functions¶
Public Functions¶
General¶
| Function | Returns | Description |
|---|---|---|
GetEntities() |
const TArray<FMjEntityRecord>& | Non-articulation entity table built in PostCompile; empty until then. |
BuildEntityCache() |
void | Refresh the entity cache; called from PostCompile. |
RegisterSnapshotPublisher() |
void | Snapshot publishers share one per-step state_full payload — each |
GetEntities¶
Non-articulation entity table built in PostCompile; empty until then.
- Signature:
GetEntities() - Returns: const TArray<FMjEntityRecord>&
RegisterSnapshotPublisher¶
Snapshot publishers share one per-step state_full payload — each
- Signature:
RegisterSnapshotPublisher(IMjSnapshotPublisher* Publisher,class UObject*OwnerObj)
MuJoCo|Control¶
| Function | Returns | Description |
|---|---|---|
StepSync() |
void | Pauses the async loop, steps N times synchronously, then restores pause state. |
StepSync¶
Pauses the async loop, steps N times synchronously, then restores pause state.
- Signature:
StepSync(int32NumSteps) - Blueprint: 🔵 Callable
MuJoCo|Snapshot¶
| Function | Returns | Description |
|---|---|---|
RestoreSnapshot() |
void | Restore is scheduled for the next physics step (not applied immediately). |
RestoreSnapshot¶
Restore is scheduled for the next physics step (not applied immediately).
- Signature:
RestoreSnapshot(UMjSimulationState* Snapshot) - Blueprint: 🔵 Callable
MuJoCo|UI¶
| Function | Returns | Description |
|---|---|---|
ToggleSimulateWidget() |
void | Bound to Tab key. |