Skip to content

UMjFrame

Represents a MuJoCo (mjsFrame).

Frames supply a coordinate offset that the MuJoCo compiler bakes into the pos/quat of their child elements; they don't survive into mjModel/mjData, so no runtime view or Bind work is needed. Spec creation goes through MjFrame::Setup, which is dispatched by the parent UMjBody during its own Setup walk and recursively visits the frame's UE child components.

Attribute Value
Kind Class
UE Macro UCLASS
Inherits UMjComponent
Blueprint Spawnable ✅ Yes

Properties

Public Properties

Property Type Description
Pos FVector
Quat FQuat
childclass FString

Pos

Override-enabled (bOverride_Pos)

  • Type: FVector
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|MjFrame|Spatial Pose

Quat

Override-enabled (bOverride_Quat)

  • Type: FQuat
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|MjFrame|Orientation

childclass

Override-enabled (bOverride_childclass)

  • Type: FString
  • Editor: ✏️ EditAnywhere
  • Blueprint: 🔵 ReadWrite
  • Category: MuJoCo|MjFrame

Private Properties

Property Type Description
m_SpecElements TArray<TScriptInterface<IMjSpecElement>> Cached list of child elements for registration.

m_SpecElements

Cached list of child elements for registration.

Functions

Public Functions

General

Function Returns Description
Setup() void Recursive spec registration entry point for frames. Creates the
ExportTo() void Codegen-owned: writes the frame's hand-rolled childclass and any
Bind() void Empty: frames are compiled away.
RegisterToSpec() void Frame registration is driven by Setup (called from UMjBody).
ImportFromXml() void Codegen-owned: imports pos/orientation/childclass from .
Setup

Recursive spec registration entry point for frames. Creates the

  • Signature: Setup(USceneComponent* Parent, mjsBody* ParentBody, class FMujocoSpecWrapper* Wrapper)
ExportTo

Codegen-owned: writes the frame's hand-rolled childclass and any

  • Signature: ExportTo(mjsFrame* Element, mjsDefault* Default)
Bind

Empty: frames are compiled away.

  • Signature: Bind(mjModel* Model, mjData* Data, const FString& Prefix)
RegisterToSpec

Frame registration is driven by Setup (called from UMjBody).

ImportFromXml

Codegen-owned: imports pos/orientation/childclass from .

  • Signature: ImportFromXml(const class FXmlNode* Node, const struct FMjCompilerSettings& CompilerSettings)