Add missing gravity attribute authoring to Mjcf SdfFileFormat plugin.

PiperOrigin-RevId: 779239797
Change-Id: I039b1089e5b436498d14df384c1aee830fd4b48a
This commit is contained in:
Sam Haves
2025-07-04 11:24:58 -07:00
committed by Copybara-Service
parent 45d4cacc45
commit be3c3ef8a9
2 changed files with 42 additions and 0 deletions
@@ -554,6 +554,16 @@ class ModelWriter {
break;
}
pxr::GfVec3f gravity(spec_->option.gravity[0], spec_->option.gravity[1],
spec_->option.gravity[2]);
// Normalize will normalize gravity in place and return the magnitude before normalization.
float gravity_magnitude = gravity.Normalize();
WriteUniformAttribute(physics_scene_path, pxr::SdfValueTypeNames->Float,
pxr::UsdPhysicsTokens->physicsGravityMagnitude, gravity_magnitude);
WriteUniformAttribute(physics_scene_path, pxr::SdfValueTypeNames->Vector3f,
pxr::UsdPhysicsTokens->physicsGravityDirection, gravity);
pxr::GfVec3d wind(spec_->option.wind[0], spec_->option.wind[1],
spec_->option.wind[2]);
WriteUniformAttribute(physics_scene_path, pxr::SdfValueTypeNames->Double3,