Skip to content

Demos

NovaPhy includes a comprehensive set of demos using Polyscope for 3D visualization.

Rigid Body

Demo Description Physics
demo_pyramid_ball.py 4-3-2-1 pyramid with sphere projectile; --solver {semi_implicit,featherstone,xpbd} Free body / Featherstone / XPBD
demo_friction_ramp.py Boxes on 30-degree ramp, different friction Coulomb friction
demo_wall_break.py 5x5 wall hit by sphere Dynamic collision
demo_dominoes.py 20 dominoes chain reaction Angular impulse
demo_unified_collision.py Gallery of all collision pairs staged narrowphase
demo_pyramids_numerous.py Stress test: many pyramids Sequential Impulse
xpbd/demo_xpbd_stack.py Supported wall stack XPBD constraints
xpbd/demo_xpbd_weld.py Welded bodies XPBD weld constraint

Articulated Body (Featherstone)

Demo Description Physics
multibody_demo/demo_newtons_cradle_pendulum.py Newton's cradle with hinge suspension Revolute joints + contacts
multibody_demo/demo_rope.py 15-link chain released from horizontal Multi-joint chain
multibody_demo/demo_wrecking_ball.py Chain pendulum smashing a box tower Joint + rigid contacts
multibody_demo/demo_seesaw.py Box dropped onto revolute seesaw Joint + impact
multibody_demo/demo_motor_arm.py Motor-driven arm sweeping boxes Torque-level PD
demo_100_robots.py Quadruped grid via Featherstone / XPBD SolverFeatherstone / SolverXPBD

Robotics & Control

Demo Description Physics
demo_ik_arm.py Damped-least-squares IK Analytical Jacobian
demo_basic_urdf.py URDF loading smoke test URDF parser
demo_robot_sim_pipeline.py URDF to USD full pipeline with torque control Featherstone + export
demo_sensors.py Sensor system demo Sensor readings

Fluid

Demo Description Physics
demo_dam_break.py Rectangular fluid block collapses PBF solver
demo_fluid_box.py ~8000 particles sloshing in a moving box PBF + domain bounds
demo_ball_in_water.py Ball dropping into water Rigid-fluid coupling (Akinci)
demo_fluid_coupling.py Boxes and spheres splashing into water PBF + Akinci + rigid collision
demo_sph_fluid.py SPH fluid smoke / visualization demo SolverSPH CPU + optional CUDA

IPC

Demo Description Physics
demo_ipc_stack.py Box stacking with guaranteed no-penetration IPC via libuipc (CUDA)

VBD / AVBD

Demo Description Physics
vbd/demo_vbd_rigid.py CPU SolverVBD browser for restored demo3d contacts and supported joints SolverVBD rigid contacts, supported joints
vbd/demo_vbd_soft.py CPU SolverVBD cloth scenes SolverVBD particle cloth

Profiling

Demo Description
demo_performance_monitor.py Performance monitoring with --scene {rigid,fluid}

Running Demos

# Install visualization dependency
pip install polyscope

# Run any demo
python python/demos/demo_pyramid_ball.py

# Some demos accept solver selection
python python/demos/demo_pyramid_ball.py --solver featherstone

# Profiling demo with options
python python/demos/demo_performance_monitor.py --scene rigid --measured-steps 120