Feature dependency graph#

Edges point from a feature to the feature(s) it depends on (e.g. FET003_BASE_PHYSXFET003_BASE_NEUTRAL). Data is taken from docs/features/*.json dependencies arrays.

Mermaid diagram (top-down: dependency above → dependant below)#

flowchart TD
    FET003N["FET003_BASE_NEUTRAL 0.1.0"]
    FET004N["FET004_BASE_NEUTRAL 0.1.0"]
    FET003P["FET003_BASE_PHYSX 0.1.0"]
    FET004P["FET004_BASE_PHYSX 0.1.0"]
    FET004RN["FET004_ROBOT_PHYSX 0.1.0"]
    FET024N["FET024_BASE_ARTICULATION_NEUTRAL 0.1.0"]

    FET003P --> FET003N
    FET004N --> FET003N
    FET004P --> FET003P
    FET004P --> FET004N
    FET006I["FET006_BASE_ISAACSIM 0.1.0"] --> FET003P
    FET100["FET100_BASE_ISAACSIM 0.1.0"] --> FET003P
    FET022N["FET022_DRIVEN_JOINTS_NEUTRAL 0.1.0"] --> FET004N
    FET022P["FET022_DRIVEN_JOINTS_PHYSX 0.1.0"] --> FET004RN
    FET022I["FET022_DRIVEN_JOINTS_ISAAC 0.1.0"] --> FET022P
    FET024P["FET024_BASE_ARTICULATION_PHYSX 0.1.0"] --> FET024N

Mermaid diagram (left-right: dependency left → dependant right)#

flowchart LR
    subgraph roots["Roots (no dependencies)"]
        FET000["FET000_CORE\n0.1.0"]
        FET001["FET001_BASE_NEUTRAL\n0.1.0"]
        FET002["FET002_BASE_NEUTRAL\n0.1.0"]
        FET003N["FET003_BASE_NEUTRAL\n0.1.0"]
        FET004RN["FET004_ROBOT_PHYSX\n0.1.0"]
        FET005["FET005_BASE_NEUTRAL\n0.1.0"]
        FET006MDL["FET006_BASE_MDL\n0.1.0"]
        FET021_01["FET021_ROBOT_CORE_ISAAC\n0.1.0"]
        FET021_02["FET021_ROBOT_CORE_ISAAC\n0.2.0"]
        FET021_R["FET021_ROBOT_CORE_RUNNABLE\n0.2.0"]
        FET023["FET023_ROBOT_MATERIALS\n0.1.0"]
        FET024N["FET024_BASE_ARTICULATION_NEUTRAL\n0.1.0"]
    end

    FET003P["FET003_BASE_PHYSX\n0.1.0"] --> FET003N
    FET004N["FET004_BASE_NEUTRAL\n0.1.0"] --> FET003N
    FET004P["FET004_BASE_PHYSX\n0.1.0"] --> FET003P
    FET004P --> FET004N
    FET006I["FET006_BASE_ISAACSIM\n0.1.0"] --> FET003P
    FET100["FET100_BASE_ISAACSIM\n0.1.0"] --> FET003P
    FET022N["FET022_DRIVEN_JOINTS_NEUTRAL\n0.1.0"] --> FET004N
    FET022P["FET022_DRIVEN_JOINTS_PHYSX\n0.1.0"] --> FET004RN
    FET022I["FET022_DRIVEN_JOINTS_ISAAC\n0.1.0"] --> FET022P
    FET024P["FET024_BASE_ARTICULATION_PHYSX\n0.1.0"] --> FET024N

Edge list (feature → depends on)#

Feature

Version

Depends on

FET003_BASE_PHYSX

0.1.0

FET003_BASE_NEUTRAL 0.1.0

FET004_BASE_NEUTRAL

0.1.0

FET003_BASE_NEUTRAL 0.1.0

FET004_BASE_PHYSX

0.1.0

FET003_BASE_PHYSX 0.1.0, FET004_BASE_NEUTRAL 0.1.0

FET006_BASE_ISAACSIM

0.1.0

FET003_BASE_PHYSX 0.1.0

FET100_BASE_ISAACSIM

0.1.0

FET003_BASE_PHYSX 0.1.0

FET022_DRIVEN_JOINTS_NEUTRAL

0.1.0

FET004_BASE_NEUTRAL 0.1.0

FET022_DRIVEN_JOINTS_PHYSX

0.1.0

FET004_ROBOT_PHYSX 0.1.0

FET022_DRIVEN_JOINTS_ISAAC

0.1.0

FET022_DRIVEN_JOINTS_PHYSX 0.1.0

FET024_BASE_ARTICULATION_PHYSX

0.1.0

FET024_BASE_ARTICULATION_NEUTRAL 0.1.0

No dependencies (roots or standalone)#

  • FET000_CORE 0.1.0

  • FET001_BASE_NEUTRAL 0.1.0, 1.0.0

  • FET002_BASE_NEUTRAL 0.1.0

  • FET003_BASE_NEUTRAL 0.1.0

  • FET004_ROBOT_PHYSX 0.1.0

  • FET005_BASE_NEUTRAL 0.1.0

  • FET006_BASE_MDL 0.1.0

  • FET021_ROBOT_CORE_ISAAC 0.1.0, 0.2.0

  • FET021_ROBOT_CORE_RUNNABLE 0.2.0

  • FET023_ROBOT_MATERIALS 0.1.0

  • FET024_BASE_ARTICULATION_NEUTRAL 0.1.0

(Other feature JSONs without a dependencies key or with empty dependencies are also dependency roots.)

Dependency chains (examples)#

  • PhysX RBD: FET003_BASE_NEUTRAL → FET003_BASE_PHYSX

  • Multibody: FET003_BASE_NEUTRAL → FET004_BASE_NEUTRAL; FET004_BASE_NEUTRAL + FET003_BASE_PHYSX → FET004_BASE_PHYSX

  • Isaac composition: FET003_BASE_PHYSX → FET006_BASE_ISAACSIM, FET100_BASE_ISAACSIM

  • Driven joints: FET004_BASE_NEUTRAL → FET022_DRIVEN_JOINTS_NEUTRAL; FET004_ROBOT_PHYSX → FET022_DRIVEN_JOINTS_PHYSX → FET022_DRIVEN_JOINTS_ISAAC

  • Articulation: FET024_BASE_ARTICULATION_NEUTRAL → FET024_BASE_ARTICULATION_PHYSX