editor.physicsasset.getInfo
Returns basic information about a physics asset.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
asset_path | string | Yes | PhysicsAsset path |
Returns:
| Name | Type | Description |
|---|---|---|
num_bodies | number | Number of physics bodies |
num_constraints | number | Number of constraints |
skeletal_mesh_path | string | Associated skeletal mesh path |
Example Request:
{ "jsonrpc": "2.0", "id": 1, "method": "editor.physicsasset.getInfo", "params": { "asset_path": "/Game/Characters/Hero_PhysicsAsset" } } editor.physicsasset.getBodies
Returns all physics bodies in a physics asset.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
asset_path | string | Yes | PhysicsAsset path |
Returns:
| Name | Type | Description |
|---|---|---|
bodies | array | Each: {body_name, bone_name, collision_type, mass, num_shapes} |
Example Request:
{ "jsonrpc": "2.0", "id": 1, "method": "editor.physicsasset.getBodies", "params": { "asset_path": "/Game/Characters/Hero_PhysicsAsset" } } editor.physicsasset.getConstraints
Returns all constraints in a physics asset.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
asset_path | string | Yes | PhysicsAsset path |
Returns:
| Name | Type | Description |
|---|---|---|
constraints | array | Each: {constraint_name, parent_bone, child_bone, constraint_type, is_enabled} |
Example Request:
{ "jsonrpc": "2.0", "id": 1, "method": "editor.physicsasset.getConstraints", "params": { "asset_path": "/Game/Characters/Hero_PhysicsAsset" } } editor.physicsasset.setBodyProperty
Sets a property on a physics body.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
asset_path | string | Yes | PhysicsAsset path |
body_name | string | Yes | Body name |
property | string | Yes | "mass" (number), "collision_enabled" (bool), or "physics_type" (string: "Default", "Kinematic", "Simulated") |
value | varies | Yes | Property value |
Returns:
| Name | Type | Description |
|---|---|---|
success | bool | Whether property was set |
Example Request:
{
"jsonrpc": "2.0", "id": 1, "method": "editor.physicsasset.setBodyProperty",
"params": { "asset_path": "/Game/Characters/Hero_PhysicsAsset", "body_name": "spine_01", "property": "mass", "value": 10.0 }
} editor.physicsasset.setConstraintProperty
Sets a property on a physics constraint.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
asset_path | string | Yes | PhysicsAsset path |
constraint_name | string | Yes | Constraint name |
property | string | Yes | "disable_collision" (bool), "parent_dominates" (bool), "enable_projection" (bool), "swing1_limit" (number), "swing2_limit" (number), "twist_limit" (number) |
value | varies | Yes | Property value |
Returns:
| Name | Type | Description |
|---|---|---|
success | bool | Whether property was set |
Example Request:
{
"jsonrpc": "2.0", "id": 1, "method": "editor.physicsasset.setConstraintProperty",
"params": { "asset_path": "/Game/Characters/Hero_PhysicsAsset", "constraint_name": "spine_01_spine_02", "property": "swing1_limit", "value": 30.0 }
} editor.physicsasset.setAllBodiesSimulatePhysics
Sets physics simulation mode for all bodies in a physics asset.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
asset_path | string | Yes | PhysicsAsset path |
simulate | bool | Yes | Whether to enable physics simulation |
Returns:
| Name | Type | Description |
|---|---|---|
success | bool | Whether operation succeeded |
bodies_updated | number | Number of bodies updated |
Example Request:
{
"jsonrpc": "2.0", "id": 1, "method": "editor.physicsasset.setAllBodiesSimulatePhysics",
"params": { "asset_path": "/Game/Characters/Hero_PhysicsAsset", "simulate": true }
} editor.physicsasset.getCollisionState
Checks whether collision is enabled between two bodies.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
asset_path | string | Yes | Physics asset path |
body_a | string | Yes | First body bone name |
body_b | string | Yes | Second body bone name |
Returns:
| Name | Type | Description |
|---|---|---|
collision_enabled | bool | Whether collision is enabled between the two bodies |
body_a | string | First body name |
body_b | string | Second body name |
Example Request:
{ "jsonrpc": "2.0", "id": 1, "method": "editor.physicsasset.getCollisionState", "params": { "asset_path": "/Game/Characters/Hero_PhysicsAsset", "body_a": "pelvis", "body_b": "spine_01" } } editor.physicsasset.setCollisionState
Enables or disables collision between two bodies.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
asset_path | string | Yes | Physics asset path |
body_a | string | Yes | First body bone name |
body_b | string | Yes | Second body bone name |
enabled | bool | Yes | Whether to enable collision |
Returns:
| Name | Type | Description |
|---|---|---|
success | bool | Whether collision state was changed |
Example Request:
{ "jsonrpc": "2.0", "id": 1, "method": "editor.physicsasset.setCollisionState", "params": { "asset_path": "/Game/Characters/Hero_PhysicsAsset", "body_a": "pelvis", "body_b": "spine_01", "enabled": false } } editor.physicsasset.getConstraintLimits
Gets constraint limit values (linear, swing, twist) for a physics constraint.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
asset_path | string | Yes | Physics asset path |
constraint_index | number | No | Constraint index (use this or bone_name) |
bone_name | string | No | Bone name to find constraint |
Returns:
| Name | Type | Description |
|---|---|---|
constraint_index | number | Constraint index |
joint_name | string | Joint name |
bone1 | string | First bone |
bone2 | string | Second bone |
linear_limit | number | Linear limit distance |
linear_x_motion | string | X axis motion (Free/Limited/Locked) |
linear_y_motion | string | Y axis motion |
linear_z_motion | string | Z axis motion |
swing1_limit | number | Swing 1 angle limit |
swing2_limit | number | Swing 2 angle limit |
twist_limit | number | Twist angle limit |
swing1_motion | string | Swing 1 motion type |
swing2_motion | string | Swing 2 motion type |
twist_motion | string | Twist motion type |
Example Request:
{ "jsonrpc": "2.0", "id": 1, "method": "editor.physicsasset.getConstraintLimits", "params": { "asset_path": "/Game/Characters/Hero_PhysicsAsset", "constraint_index": 0 } } editor.physicsasset.setConstraintLimits
Sets constraint limit values. Only provided values are changed.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
asset_path | string | Yes | Physics asset path |
constraint_index | number | Yes | Constraint index |
linear_limit | number | No | Linear limit distance |
swing1_limit | number | No | Swing 1 angle limit |
swing2_limit | number | No | Swing 2 angle limit |
twist_limit | number | No | Twist angle limit |
Returns:
| Name | Type | Description |
|---|---|---|
success | bool | Whether limits were set |
constraint_index | number | Constraint index |
Example Request:
{ "jsonrpc": "2.0", "id": 1, "method": "editor.physicsasset.setConstraintLimits", "params": { "asset_path": "/Game/Characters/Hero_PhysicsAsset", "constraint_index": 0, "swing1_limit": 45.0, "twist_limit": 30.0 } } editor.physicsasset.getBodyDetails
Gets detailed information about a specific physics body setup.
Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
asset_path | string | Yes | Physics asset path |
body_name | string | Yes | Body bone name |
Returns:
| Name | Type | Description |
|---|---|---|
bone_name | string | Bone name |
body_index | number | Body index in the asset |
simulate_physics | bool | Whether physics is simulated |
collision_response | string | Collision enabled type |
physics_type | string | Default/Kinematic/Simulated |
num_spheres | number | Sphere collision shapes |
num_boxes | number | Box collision shapes |
num_capsules | number | Capsule collision shapes |
num_convex | number | Convex collision shapes |
num_tapered_capsules | number | Tapered capsule shapes |
mass_override_set | bool | Whether mass is overridden |
mass_override_kg | number | Mass override value in kg |
Example Request:
{ "jsonrpc": "2.0", "id": 1, "method": "editor.physicsasset.getBodyDetails", "params": { "asset_path": "/Game/Characters/Hero_PhysicsAsset", "body_name": "pelvis" } }