Skip to content

API Reference

Auto-generated from C++ header files in Source/URLab/Public/. All UPROPERTY specifiers, Blueprint access, and override flags are preserved.

Organised to match the source folder structure in Mujoco/.

Core

Main runtime actors: the physics manager, articulation, and robot.

Name Kind Description
EControlSource Enum
EMjDebugShaderMode Enum Per-body visual overlay mode applied during PIE.
EStepMode Enum Controls how the physics engine advances the simulation.
FMjEntityRecord Struct Cached non-articulation entity metadata: a UMjBody whose owner is
FMjRenderSnapshot Struct Single-frame snapshot of MuJoCo state for game-thread consumers.
FMuJoCoDebugData Struct Thread-safe buffer for debug visualization data.
FMuJoCoJointState Struct Complete runtime state of a 1-DOF joint.
FMuJoCoSpatialVelocity Struct Represents 6D spatial velocity (Linear + Angular).
AAMjManager Class Thin coordinator actor for the MuJoCo simulation within Unreal Engine.
AMjArticulation Class Represents a MuJoCo articulation (robot or multibody system).
UMjDebugVisualizer Class Handles debug visualization for the MuJoCo simulation (contact forces, collision wireframes, etc.).
UMjPhysicsEngine Class Core physics engine component that owns the MuJoCo simulation lifecycle.
UMjSimulationState Class Container for a complete MuJoCo simulation state snapshot.

Core — Spec

Internal spec wrapper types used during compilation.

Name Kind Description
FMujocoSpecWrapper Class Helper class to simplify building a MuJoCo mjSpec structure from Unreal Engine components.
IMjSpecElement Class Interface for components that can register themselves to a MuJoCo spec.

Components — Bodies

MuJoCo rigid body components (e.g., UMjBody).

Name Kind Description
EMjBodySleepPolicy Enum Per-body sleep policy, matching MuJoCo's mjtSleepPolicy.
UMjBody Class
UMjFrame Class Represents a MuJoCo (mjsFrame).
UMjWorldBody Class Represents the node in MuJoCo, functioning as the root scene component

Components — Actuators

Actuator types: Position, Velocity, Motor, Damper, Cylinder, Muscle, Adhesion.

Name Kind Description
EMjActuatorType Enum Defines the type of actuator dynamics for MuJoCo.
EMjDcMotorInput Enum Control input mode for the DC motor actuator. Matches the MuJoCo
UMjActuator Class Component representing a MuJoCo actuator.
UMjAdhesionActuator Class Specific Adhesion Actuator component.
UMjCylinderActuator Class Specific Cylinder Actuator component.
UMjDamperActuator Class Specific Damper Actuator component.
UMjDcMotorActuator Class Models a DC motor with optional electrical dynamics (inductance),
UMjGeneralActuator Class Represents a 'general' actuator in MuJoCo.
UMjIntVelocityActuator Class Specific IntVelocity Actuator component.
UMjMotorActuator Class Specific Motor Actuator component.
UMjMuscleActuator Class Specific Muscle Actuator component.
UMjPositionActuator Class Specific Position Actuator component.
UMjVelocityActuator Class Specific Velocity Actuator component.

Components — Joints

Joint subtypes: Hinge, Slide, Ball, Free.

Name Kind Description
EMjJointType Enum Defines the kinematic constraints of a MuJoCo joint.
UMjJoint Class Component representing a MuJoCo joint.
UMjBallJoint Class Autogenerated component representing the MuJoCo 'ball' element.
UMjFreeJoint Class Specific Free Joint component.
UMjHingeJoint Class Autogenerated component representing the MuJoCo 'hinge' element.
UMjSlideJoint Class Autogenerated component representing the MuJoCo 'slide' element.

Components — Sensors

Sensor types: joint, actuator, touch, rangefinder, tendon, energy, etc.

Name Kind Description
EMjCameraMode Enum What a UMjCamera captures. Read at SetStreamingEnabled(true) time —
EMjSensorType Enum Defines the type of sensor.
FCameraShmWriter Class Per-camera SHM publisher.
FCameraZmqWorker Class Background thread for publishing high-bandwidth camera frames via ZeroMQ.
UMjCamera Class Represents a MuJoCo element as an Unreal sensor component.
UMjSensor Class Component representing a sensor in the MuJoCo model.
UMjAccelerometer Class Autogenerated component representing the MuJoCo 'accelerometer' element.
UMjActuatorFrcSensor Class Autogenerated component representing the MuJoCo 'actuatorfrc' element.
UMjActuatorPosSensor Class Autogenerated component representing the MuJoCo 'actuatorpos' element.
UMjActuatorVelSensor Class Autogenerated component representing the MuJoCo 'actuatorvel' element.
UMjBallAngVelSensor Class Autogenerated component representing the MuJoCo 'ballangvel' element.
UMjBallQuatSensor Class Autogenerated component representing the MuJoCo 'ballquat' element.
UMjCamProjectionSensor Class Autogenerated component representing the MuJoCo 'camprojection' element.
UMjClockSensor Class Autogenerated component representing the MuJoCo 'clock' element.
UMjContactSensor Class Autogenerated component representing the MuJoCo 'contact' element.
UMjEKineticSensor Class Autogenerated component representing the MuJoCo 'e_kinetic' element.
UMjEPotentialSensor Class Autogenerated component representing the MuJoCo 'e_potential' element.
UMjForceSensor Class Autogenerated component representing the MuJoCo 'force' element.
UMjFrameAngAccSensor Class Autogenerated component representing the MuJoCo 'frameangacc' element.
UMjFrameAngVelSensor Class Autogenerated component representing the MuJoCo 'frameangvel' element.
UMjFrameLinAccSensor Class Autogenerated component representing the MuJoCo 'framelinacc' element.
UMjFrameLinVelSensor Class Autogenerated component representing the MuJoCo 'framelinvel' element.
UMjFramePosSensor Class Autogenerated component representing the MuJoCo 'framepos' element.
UMjFrameQuatSensor Class Autogenerated component representing the MuJoCo 'framequat' element.
UMjFrameXAxisSensor Class Autogenerated component representing the MuJoCo 'framexaxis' element.
UMjFrameYAxisSensor Class Autogenerated component representing the MuJoCo 'frameyaxis' element.
UMjFrameZAxisSensor Class Autogenerated component representing the MuJoCo 'framezaxis' element.
UMjGeomDistSensor Class Autogenerated component representing the MuJoCo 'distance' element.
UMjGeomFromToSensor Class Autogenerated component representing the MuJoCo 'fromto' element.
UMjGeomNormalSensor Class Autogenerated component representing the MuJoCo 'normal' element.
UMjGyro Class Autogenerated component representing the MuJoCo 'gyro' element.
UMjInsideSiteSensor Class Autogenerated component representing the MuJoCo 'insidesite' element.
UMjJointActFrcSensor Class Autogenerated component representing the MuJoCo 'jointactuatorfrc' element.
UMjJointLimitFrcSensor Class Autogenerated component representing the MuJoCo 'jointlimitfrc' element.
UMjJointLimitPosSensor Class Autogenerated component representing the MuJoCo 'jointlimitpos' element.
UMjJointLimitVelSensor Class Autogenerated component representing the MuJoCo 'jointlimitvel' element.
UMjJointPosSensor Class Specific JointPos Sensor component.
UMjJointVelSensor Class Autogenerated component representing the MuJoCo 'jointvel' element.
UMjMagnetometer Class Autogenerated component representing the MuJoCo 'magnetometer' element.
UMjPluginSensor Class Autogenerated component representing the MuJoCo 'plugin' element.
UMjRangeFinderSensor Class Autogenerated component representing the MuJoCo 'rangefinder' element.
UMjSubtreeAngMomSensor Class Autogenerated component representing the MuJoCo 'subtreeangmom' element.
UMjSubtreeComSensor Class Autogenerated component representing the MuJoCo 'subtreecom' element.
UMjSubtreeLinVelSensor Class Autogenerated component representing the MuJoCo 'subtreelinvel' element.
UMjTactileSensor Class Specific Tactile Sensor component.
UMjTendonActFrcSensor Class Autogenerated component representing the MuJoCo 'tendonactuatorfrc' element.
UMjTendonLimitFrcSensor Class Autogenerated component representing the MuJoCo 'tendonlimitfrc' element.
UMjTendonLimitPosSensor Class Autogenerated component representing the MuJoCo 'tendonlimitpos' element.
UMjTendonLimitVelSensor Class Autogenerated component representing the MuJoCo 'tendonlimitvel' element.
UMjTendonPosSensor Class Autogenerated component representing the MuJoCo 'tendonpos' element.
UMjTendonVelSensor Class Autogenerated component representing the MuJoCo 'tendonvel' element.
UMjTorqueSensor Class Autogenerated component representing the MuJoCo 'torque' element.
UMjTouchSensor Class Autogenerated component representing the MuJoCo 'touch' element.
UMjUserSensor Class Autogenerated component representing the MuJoCo 'user' element.
UMjVelocimeter Class Autogenerated component representing the MuJoCo 'velocimeter' element.

Components — Geometry

Geometry attached to bodies: geoms, sites, cameras.

Name Kind Description
EMjGeomType Enum Defines the geometric primitive type for the MuJoCo geom.
EMjSiteType Enum Defines the geometric shape of a MuJoCo site. Mirrors the
UMjGeom Class
UMjSite Class Represents a MuJoCo site element within Unreal Engine.
UMjBoxSite Class
UMjCapsuleSite Class
UMjCylinderSite Class
UMjEllipsoidSite Class
UMjMeshGeom Class Mesh geometry component. Thin wrapper around UMjGeom that sets the type to Mesh.
UMjSphereSite Class

Components — Primitives

Built-in primitive geom shapes: Box, Sphere, Cylinder.

Name Kind Description
UMjBox Class Box primitive geometry.
UMjCapsule Class Capsule primitive geometry.
UMjCylinder Class Cylinder primitive geometry.
UMjEllipsoid Class Autogenerated component representing the MuJoCo 'ellipsoid' element.
UMjPlane Class Autogenerated component representing the MuJoCo 'plane' element.
UMjSdf Class Autogenerated component representing the MuJoCo 'sdf' element.
UMjSphere Class Sphere primitive geometry.

Components — Physics

Physics configuration: inertial, contact pairs, contact exclusions.

Name Kind Description
UMjInertial Class

Components — Quick Convert

Convert existing UE actors and terrain to MuJoCo physics with one component.

Name Kind Description
AMjHeightfieldActor Class An actor that samples terrain height within its bounding box and registers
UMjQuickConvertComponent Class Component that enables physically simulated MuJoCo behavior for an Actor.

Networking

ZMQ bridge, sensor broadcaster, and control subscriber for external control.

Name Kind Description
FMjInputBinding Struct
UMjInputMapping Class Binds Enhanced Input Actions directly to MuJoCo Actuators.

Replay

Record and replay physics simulation frames.

Name Kind Description
FMjBodyKinematics Struct Stores kinematics (Position/Velocity) for a single joint or body (if free joint).
FMjReplayFrame Struct A snapshot of the entire simulation physics state at a specific time.
FReplayArticulationBinding Struct Per-articulation replay settings (enabled, relative position).
FReplaySession Struct A named collection of replay frames with source metadata.
AMjReplayManager Class

UI

Unreal UMG widgets for runtime simulation control.

Name Kind Description
EMjPropertyType Enum Defines the type of control displayed by the property row.
UMjCameraFeedEntry Class UMG widget row that binds to a single UMjCamera and displays its live feed.
UMjPropertyRow Class A reusable widget base for a single property row (Label + Control + ValueDisplay).
UMjSimulateWidget Class Main dashboard mimicking MuJoCo's "simulate" UI.

Utilities

Helper utilities, logging, mesh tools, and fake-robot debugging actors.

Name Kind Description
ActuatorView Struct Lightweight wrapper around MuJoCo actuator data.
BodyView Struct Lightweight wrapper around MuJoCo body data.
FMjCompilerSettings Struct Compiler settings parsed from the element of an MJCF file.
GeomView Struct Lightweight wrapper around MuJoCo geom data (model and data).
JointView Struct Lightweight wrapper around MuJoCo joint data.
MjOrientationUtils Class If true, angles (euler, axisangle, joint range) are in degrees.
MjUtils Class Static utility class for common MuJoCo <-> Unreal Engine conversions and helper functions.
MjXmlUtils Class Static utility functions for parsing MuJoCo XML nodes.
SensorView Struct Lightweight wrapper around MuJoCo sensor data.
SiteView Struct Lightweight wrapper around MuJoCo site data.
TendonView Struct Lightweight wrapper around MuJoCo tendon data.

Other

Miscellaneous top-level types.

Name Kind Description
AURLabGameMode Class

Bridge

Name Kind Description
FOpDecl Struct Cross-module registry for RPC handlers. Each handler is registered
FURLabBridgeServerConfig Struct Persisted settings for the bridge server. Lives in
FURLabMsgpackUtil Class Bidirectional FJsonObject <-> msgpack helpers (Epic's msgpack-cxx in
FURLabRpcDispatcher Class Transport-agnostic step-server core.
UURLabBridgeServer Class Owns the FURLabRpcDispatcher and every RPC transport.

Cinematics

Name Kind Description
FMjCameraWaypoint Struct A single camera keyframe: position, rotation, and time.
AMjKeyframeCameraActor Class A cinematic camera that lerps through manually placed waypoints.
AMjOrbitCameraActor Class A cinematic orbit camera that auto-detects MjArticulations via a box trigger

Components/Constraints

Name Kind Description
EMjEqualityType Enum Defines the type of equality constraint.
UMjEquality Class Component representing a MuJoCo equality constraint.
UMjConnectEquality Class
UMjFlexEquality Class
UMjFlexStrainEquality Class
UMjFlexVertEquality Class
UMjJointEquality Class
UMjTendonEquality Class
UMjWeldEquality Class

Components/Controllers

Name Kind Description
FActuatorBinding Struct Maps a MuJoCo actuator to its associated joint DOF addresses.
FMjKeyframePose Struct A named pose with joint targets and a hold duration.
UMjArticulationController Class Abstract base for custom articulation control laws.
UMjKeyframeController Class Cycles through a list of keyframe poses on an MjArticulation.
UMjPDController Class Proportional-Derivative controller running at MuJoCo physics rate.
UMjPassthroughController Class Writes control values directly to d->ctrl without modification.

Components/Defaults

Name Kind Description
UMjDefault Class Component that defines a MuJoCo class.

Components/Deformable

Name Kind Description
EMjFlexcompType Enum
UMjFlexcomp Class Component representing a MuJoCo flexcomp deformable body.

Components/Forces

Name Kind Description
AMjImpulseLauncher Class Applies a one-shot MuJoCo force impulse to a target MjBody.

Components/Keyframes

Name Kind Description
UMjKeyframe Class Component representing a MuJoCo keyframe.

Components/Tendons

Name Kind Description
EMjTendonWrapType Enum Defines the type of each wrap entry within a tendon.
FMjTendonWrap Struct Represents a single wrap entry in a MuJoCo tendon.
UMjTendon Class Component representing a MuJoCo tendon.
UMjFixedTendon Class
UMjSpatialTendon Class

Generated

Name Kind Description
EMjActuatorTrnType Enum EMjActuatorTrnType — mirror of MuJoCo's mjtTrn.
EMjBiasType Enum EMjBiasType — mirror of MuJoCo's mjtBias.
EMjCameraProjection Enum EMjCameraProjection — mirror of MuJoCo's mjtProjection.
EMjCameraTrackingMode Enum EMjCameraTrackingMode — mirror of MuJoCo's mjtCamLight.
EMjCone Enum EMjCone — mirror of MuJoCo's mjtCone.
EMjDynType Enum EMjDynType — mirror of MuJoCo's mjtDyn.
EMjFlexcompDof Enum EMjFlexcompDof — URLab editorial enum (no mjt counterpart).
EMjFluidShape Enum EMjFluidShape — URLab editorial enum (no mjt counterpart).
EMjGainType Enum EMjGainType — mirror of MuJoCo's mjtGain.
EMjGeomInertia Enum EMjGeomInertia — URLab editorial enum (no mjt counterpart).
EMjIntegrator Enum EMjIntegrator — mirror of MuJoCo's mjtIntegrator.
EMjObjType Enum EMjObjType — mirror of MuJoCo's mjtObj.
EMjSolver Enum EMjSolver — mirror of MuJoCo's mjtSolver.
FMjOptionGenerated Struct
FMjStatistic Struct
FMjVisualGlobal Struct
FMjVisualHeadlight Struct
FMjVisualMap Struct
FMjVisualQuality Struct
FMjVisualRgba Struct
FMjVisualScale Struct
FMjsCompilerOptions Struct
FMjsSpec Struct

Input

Name Kind Description
UMjInputHandler Class Handles keyboard hotkeys for the MuJoCo simulation (debug toggles, pause, reset, etc.).
UMjPerturbation Class Mouse-driven body perturbation matching MuJoCo simulate's behaviour.
UMjTwistController Class Captures WASD/gamepad input and stores twist commands (vx, vy, yaw_rate)

Transport

Name Kind Description
FMjDirectStepCommand Struct Heap-allocated wrapper passed by raw pointer through the SPSC queue
FMjPushStateRequest Struct One Puppet-mode push-state request. The client owns the integrator;
FMjShmHeader Struct Cross-platform shared-memory region for the URLab SHM transport: a
FMjShmRegion Class Owning wrapper around a file-backed mmap region.
FMjSnapshotProducer Class Build the per-step state snapshot that drives live clients.
FMjStepRequest Struct One Direct-mode step request, parsed from a client RPC and pushed to
IMjSnapshotPublisher Class Wire-agnostic transport for state-full snapshots.
UMjNetworkManager Class Manages camera streaming. (ZMQ broadcaster + subscriber are
UURLabPublishTransport Class Abstract base for server -> client streaming transports.
UURLabRpcTransport Class Abstract base for request/reply transports owned by the bridge.
UURLabSubscribeTransport Class Abstract base for client -> server streaming transports.
UURLabShmRpcTransport Class Shared-memory implementation of the bridge's RPC transport.
UURLabZmqRpcTransport Class ZMQ REQ/REP adapter. Owned by UURLabBridgeServer; binds a
UURLabZmqSubscribeTransport Class ZMQ SUB transport draining inbound control / xfrc messages on