The natural RenderMan coordinate system is a left-handed one in which the x-axis points to the right (blue), the y-axis points up (green), and the z-axis points into the screen (red).
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.
|Internal coordinate system. The represents the active coordinate system and is context dependent.
|The world space coordinate system commonly used for shading. This space varies per object instance.
|Internal coordinate system. This space represents a translation offset from world space to provide greater floating point precision.
|Geometry local coordinates commonly used for shading. This space does not vary per object instance.
|Camera local space of the viewing camera.
|Screen space as defined by the screen window.
|Raster space is defined by the pixel coordinates from zero to resolution across the image.
|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.