Skip to content

Conversation

@andrewkaufman
Copy link
Contributor

@andrewkaufman andrewkaufman commented Sep 27, 2025

Description of Change(s)

These changes relate to PixarAnimationStudios/OpenUSD-proposals#82 and should be merged after (or along with) #3827. Between these 2 PRs, and the internal change ff68c36 I believe we have completed the proposal.

Here I have:

  • Enabled articulations on kinematic bodies (e.g. mocap driven articulations)
    • One slight difference from the proposal; I did not implement the intricate logic about partially simulated articulations. I was advised that this concept isn't in-scope for the upcoming spec, so thought it better to leave out of the implementation as the simpler approach implemented here is all that is strictly required.
  • Added a MassAPI validator
    • This wasn't called for explicitly in the proposal, but as the logic around mass is even more complex now, it seemed better to have one.
  • Updated the schema and overview docs to allow for nested bodies
  • Added a new nested articulation example (see screenshot below)
  • Fixed a broken filepath in the existing BoxOnBox example (see screenshot below)

Note that in the interest of time I have put up the PR before coordinating with @AlesBorovicka. It would be good to wait for his review as well as the internal Pixar review before merging.

Nested articulation example loaded in a reduced coordinate simulator
image

Current example is broken
image

Link to proposal (if applicable)

PixarAnimationStudios/OpenUSD-proposals#82
https://github.com/PixarAnimationStudios/OpenUSD-proposals/tree/main/proposals/physics_nested_bodies

Checklist

It is considered valid for kinematic bodies to be targetted by PhysicsJoints

> The reason the rigid body is identified as <kinematic> is so that it still takes part in the physics simulation as an element with predetermined motion, and it is still possible to e.g. attach joints to it.

Since ArticulationRootAPI is just a hint for reduced coordinate simulators to identify the root of the kinematic chain, and such simulators may want to use this predetermined motion with their articulation, it follows that ArticulationRootAPI should be allowed in kinematic bodies.
@andrewkaufman andrewkaufman force-pushed the physics-updates branch 2 times, most recently from 949e8b3 to d0df825 Compare September 27, 2025 04:33
@jesschimein
Copy link
Collaborator

Filed as internal issue #USD-11481

(This is an automated message. See here for more information.)

@tallytalwar
Copy link
Contributor

Thanks @andrewkaufman I have checked in the PR internally and will be available in the next dev push.

@pixar-oss pixar-oss closed this in f22ff12 Oct 3, 2025
@andrewkaufman andrewkaufman deleted the physics-updates branch October 3, 2025 21:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants