Rasterizer#
The Rasterizer provides fast GPU-accelerated rendering using OpenGL. It’s the default renderer for real-time visualization and is suitable for training reinforcement learning agents.
Overview#
The Rasterizer offers:
High performance: 1000+ FPS for simple scenes
GPU acceleration: Leverages OpenGL for rendering
Multiple outputs: RGB, depth, segmentation, normals
Multi-environment support: Efficient batched rendering
Quick Start#
import genesis as gs
gs.init()
scene = gs.Scene()
# Add entities
scene.add_entity(gs.morphs.Plane())
robot = scene.add_entity(gs.morphs.URDF(file="path/to/robot.urdf"))
# Add rasterizer camera (default)
cam = scene.add_camera(
res=(640, 480),
pos=(3, 0, 2),
lookat=(0, 0, 0.5),
fov=40,
)
scene.build()
# Render images
for i in range(100):
scene.step()
rgb, _, _, _ = cam.render(rgb=True)
_, depth, _, _ = cam.render(depth=True)
_, _, segmentation, _ = cam.render(segmentation=True)
Configuration#
The Rasterizer is configured through RasterizerOptions:
rasterizer_options = gs.options.renderers.Rasterizer(
env_separate_rigid=True, # Separate rendering per environment
)
Output Types#
Output |
Type |
Description |
|---|---|---|
|
|
RGB color image |
|
|
Depth values in meters |
|
|
Entity/link segmentation IDs |
|
|
Surface normals |
API Reference#
See Also#
Raytracer - Photorealistic ray tracing renderer
BatchRenderer - High-throughput parallel renderer
gs.renderers.Rasterizer - Rasterizer options