This project is in active alpha development. This means the API is unstable, features may be added or removed, and breaking changes are likely to occur frequently and without notice as the design is refined.
Newton is a GPU-accelerated physics simulation engine built upon NVIDIA Warp,
specifically targeting roboticists and simulation researchers.
It extends and generalizes Warp's existing warp.sim module, integrating
MuJoCo Warp as a primary backend.
Newton emphasizes GPU-based computation, differentiability, and user-defined extensibility, facilitating rapid iteration
and scalable robotics simulation.
Newton is maintained by Disney Research, Google DeepMind, and NVIDIA.
See the installation guide for instructions on how to set up and get started.
|
|
|
|
python -m newton.examples basic_pendulum
|
python -m newton.examples basic_urdf
|
python -m newton.examples basic_viewer
|
|
|
|
|
python -m newton.examples basic_shapes
|
python -m newton.examples basic_joints
|
|
|
|
|
python -m newton.examples cloth_bending
|
python -m newton.examples cloth_hanging
|
python -m newton.examples cloth_style3d
|
|
|
||
python -m newton.examples mpm_granular
|
|
|
|
|
python -m newton.examples selection_cartpole
|
python -m newton.examples selection_materials
|
python -m newton.examples selection_articulations
|
The examples support the following common line arguments:
| Argument | Description | Default |
|---|---|---|
--viewer |
Viewer type: gl (OpenGL window), usd (USD file output), rerun (ReRun), or null (no viewer). |
gl |
--device |
Compute device to use, e.g., cpu, cuda:0, etc. |
None (default Warp device) |
--num-frames |
Number of frames to simulate (for USD output). | 100 |
--output-path |
Output path for USD files (required if --viewer usd is used). |
None |
Some examples may add additional arguments (see their respective source files for details).
# Basic usage
python -m newton.examples basic_pendulum
# With uv
uv run python -m newton.examples basic_pendulum
# With viewer options
python -m newton.examples basic_viewer --viewer usd --output-path my_output.usd
# With device selection
python -m newton.examples basic_urdf --device cuda:0
# Multiple arguments
python -m newton.examples basic_viewer --viewer gl --num-frames 500 --device cpu