How to update skeleton/bone transforms with the Python API

Isaac Sim Version

4.5.0

Operating System

Ubuntu 24.04

GPU Information

  • Model: RTX 5070 Ti
  • Driver Version: 570.133.20

Topic Description

Is it possible to change the joint/bone transforms of an armature/skeleton with the python API?

When the simulation is running, the transform values always jump back to the original value. I assume these values are controlled by some other component that i don’t know how to turn off.
I tried to update the values under “Animation and Pose Modes” but that didn’t help either.

My goal is to update the joint/bone rotations in each physics step manually.

Related Issues

To help diagnose why your bone/joint transforms are resetting, could you share all the details about your setup?

I attached a minimal .blendfile with a skinned skeleton and the same exported as a .usdc .
The video demonstrates how the joint transforms reset while the simulation is playing.

isaac_sim_bend_example.zip (197.8 KB)

The .usdc file doesn’t look like the one in the video. It has no OmniJoint. Could you upload the correct one?

Thank you for checking it! The uploaded .usdc is the same as the one on the video (just downloaded to double-check it). You might need to enable the omni.anim.skelJoint extension to see the OmniJoints. (Thanks, i didn’t know that term, i’m already finding more docs :)

The attached .blend file is also the same scene if you want to try a fresh export.

To piggyback off of this, is it possible to make the skeleton interact with the physics objects? Need to have an animation interact with the environment but can only obtain static collider meshes

@VickNV Did you manage to run the example? Can you provide any information about whether this is supported, not supported, will, or will not be supported? Thank you!