Key Concepts

This section covers the core abstractions and design principles of ProtoMotions.

Overview

ProtoMotions is designed to support many combinations:

  • Simulators: IsaacGym, IsaacLab, Newton, Genesis

  • Robots: SMPL, G1, H1, custom morphologies

  • Algorithms: PPO, AMP, ASE, MaskedMimic

  • Environments: Mimic, Steering, PathFollower

This necessitates modular abstractions that allow mixing and matching components without code changes.

Quick Reference

Concept

Purpose

Location

Architecture Overview

High-level system design

Overview

Core Abstractions

Core component classes

protomotions/components/, envs/, simulator/

PoseLib Toolkit

MJCF parsing, FK/IK utilities

protomotions/components/pose_lib.py

Simulator State

Robot and object state representation

protomotions/simulator/base_simulator/simulator_state.py