Options#

An options object is a typed group of parameters that configures one component of a scene. You construct the objects you need and pass them to gs.Scene(...) and to scene.add_entity(...); anything you omit falls back to its defaults. For the concepts behind these objects and how a setting given in two places is resolved, see Options system.

Every class here derives from gs.options.Options, a Pydantic model. Fields are typed and validated on construction, and unknown fields are rejected, so a misspelled or out-of-range argument raises immediately rather than failing later inside a step. You never instantiate Options directly; use one of the concrete subclasses below. Many of them, though they live in gs.options, are also exposed directly under the gs namespace for convenience: gs.morphs, gs.surfaces, gs.textures, and gs.renderers.

The classes group into families:

  • Simulator, coupler, and solver options: SimOptions for the simulation as a whole, one options class per physics solver (RigidOptions, MPMOptions, SPHOptions, FEMOptions, SFOptions, PBDOptions, and others), and the coupler that governs how solvers interact (BaseCouplerOptions with the LegacyCouplerOptions, SAPCouplerOptions, and IPCCouplerOptions variants). See Simulator, coupler and solver options.

  • Morph options: the geometry and initial pose of an entity, loaded from primitives, meshes, URDF, MJCF, terrain, or USD. See Morph.

  • Surface options: how an entity looks when rendered, including its textures. See Surface.

  • Texture options: the color, image, and batched textures a surface draws from. See Texture.

  • Miscellaneous options: profiling and FPS reporting (ProfilingOptions), particle-fluid foam generation (FoamOptions), and convex decomposition (CoacdOptions). See Miscellaneous options.

Renderer options (RendererOptions and its Rasterizer, RayTracer, and BatchRenderer variants) and the viewer and visualization options (ViewerOptions, VisOptions) are documented alongside the components they configure, in Visualization and rendering.

The base class itself is documented in gs.options.Options.