This directory contains scripts and examples for generating demonstration materials.
Unitree G1 humanoid in the INRIA kitchen scene — pipeline panel,
static-vs-tracked bg comparison, and 16-frame animation. Full
write-up in the project README.
File: mugs_showcase.jpg
Three-panel comparison showing:
- Left: MuJoCo simulation (physics-accurate but unrealistic visuals)
- Middle: 3D Gaussian Splatting (photorealistic but no physics)
- Right: MuGS Hybrid (best of both worlds)
Use for: Papers, presentations, README
File: mugs_demo.gif
8-frame animation showing robot pick-and-place motion with MuGS rendering.
- Loop: forward + reverse playback
- Frame rate: 500ms per frame
- Demonstrates real-time hybrid rendering
cd /home/ununtu/metabot-workspace/mugs
TORCH_CUDA_ARCH_LIST="8.6" python examples/yam_standalone_demo.pyThis creates individual component images in outputs/yam_standalone_demo/.
from mugs.sensors import GaussianSensor, GaussianSensorConfig
# Render with return_components=True
result = sensor.render(model, data, camera_name, return_components=True)
# Access components
mujoco_only = result['foreground'] # Physics simulation
background = result['background'] # 3DGS photorealistic
hybrid = result['rgb'] # MuGS hybrid
mask = result['mask'] # Blending maskSee examples/yam_wrist_camera_demo.py for keyframe animation example.
Key steps:
- Define motion keyframes (joint positions)
- Render each frame with MuGS
- Collect frames and save as GIF with PIL
- Camera:
robot/camera_d405on YAM link_6 - View: First-person gripper perspective
- Use: Matches actual RL task observations
- Demo:
examples/yam_wrist_camera_demo.py
- Camera: Fixed third-person view
- View: Shows full scene and robot motion
- Use: Better visual impact for demonstrations
- Demo:
examples/yam_standalone_demo.py
- Use 640×480 or higher resolution
- Add good lighting in scene XML
- Set
headlight ambient="0.5 0.5 0.5"for visibility
RTX 4090 with CUDA 11.6 requires:
TORCH_CUDA_ARCH_LIST="8.6" python script.py- Hybrid rendering: ~5000 FPS (640×480)
- Background caching enabled by default
- First render loads PLY (~2 seconds), subsequent renders are fast
Use mugs_showcase.jpg - clean three-panel comparison with annotations.
Use mugs_demo.gif or generate custom animation showing:
- Robot manipulation tasks
- Multiple camera angles
- Different objects/scenes
Use yam_standalone_demo.py as starting point for real-time demos.