/
Coordinate Systems

Coordinate Systems

The natural RenderMan coordinate system is a left-handed one in which the x-axis points to the right (red), the y-axis points up (green), and the z-axis points into the screen (blue).

Built-in Coordinate Systems

The built-in coordinate systems are those that are implicitly defined by the renderer or scene description. They may be queried by name from a valid geometry or shading context.

Name

Description

Name

Description

current

Internal coordinate system. The represents the active coordinate system and is context dependent.

world

The world space coordinate system commonly used for shading. This space varies per object instance.

worldoffset

Internal coordinate system. This space represents a translation offset from world space to provide greater floating point precision.

object

Geometry local coordinates commonly used for shading. This space does not vary per object instance.

camera

Camera local space of the viewing camera.

screen

Screen space as defined by the screen window.

raster

Raster space is defined by the pixel coordinates from zero to resolution across the image.

NDC

Normalized Device Coordinates (NDC) are zero to one across the entire image. This space is useful for culling geometry based on the camera frustum.



RenderMan provides no guarantee for what "current" space means at any time. If computations or pattern evaluation require an explicit coordinate system, shaders should transform data from "current" space into the desired space. Never assume that "current" space means anything particular.

User Defined Coordinate Systems

RenderMan allows users to define their own named coordinate systems for use in shading. These coordinate systems are bound to geometry instances and may be queried by name. Different geometry instances may bind to different coordinate systems of the same name. This is useful when "scoping" coordinate systems inside a scene hierarchy.





Related content