Use Articulated Objects
An articulated object exposes more than a rigid actor pose: tools and goals may need joint positions, limits, and machine state. Define that observation contract in your own environment module.
A practical progression is to inspect the installed button environment, whose observation entries include button state, then add a dedicated tool and goal for your mechanism. The button tutorial reuses this contract without rebuilding its articulation.
When creating your own mechanism:
- Load and initialize its articulation in the environment.
- Expose the needed joint or machine state in
_get_obs_extra. - Define a tool trajectory and verify the actual post-execution state.
- Define a stage goal using the same observation schema.
- Check snapshot restoration, including extra state not owned by physics.
allowed_moving_actors protects compatible entries in the saved actors mapping; do not assume it protects articulation joints. Use correct trajectories, goals, and state restoration for your mechanism.
See environments and transitions.