Scene Objects
We define scene objects as the various constructs that describe a scene. This section includes attribute descriptions for all of these scene objects, along with some contextual information and examples.
Scene objects in MoonRay have several canonical types and include the following:
Camera
MoonRay has several standard cameras (Orthographic, Perspective) as well as several camera shaders used to generate map data (BakeCamera, SphericalCamera).
Displacement
Shader nodes that can displace geometry given an input map and/or displacement amount.
DisplayFilter
Compositing nodes that can alter pixel values as a post-process in MoonRay.
Geometry
Procedurals that generate MoonRay primitives for rendering.
Layer
Assigns scene objects (e.g. materials, volumes, lights, etc) to geometry objects or parts.
Light
Abstract entities that inject light into the scene. Lights in MoonRay are not treated as solid objects.
LightSet
A high-level grouping of lights, whose purpose is primarily to specify which lights influence which specific geometry object.
LightFilter
Used to alter a light, giving it a different shape, color, etc.
LightFilterSet
A high-level grouping of light filters, whose purpose is to specify which light filters influence which specific geometry object.
Material
Define BSDFs (bidirectional scattering distribution functions) which describe to the integrator how a surface scatters light at a given point which determines its appearance.
Map
Generate patterns that are evaluated for each shading sample.
MetaData
A list of attributes, along with their types and values. It is often used to specify arbitrary image header data.
NormalMap
Used to alter the shading normals of a surface to produce a textured, light-responsive effect.
RenderOutput
Used to specify any output the renderer produces including the beauty pass and any AOVs.
SceneVariables
Global rendering settings.
ShadowSet
Prevent the associated geometry from casting shadows originating from the lights in this ShadowSet.
ShadowReceiverSet
A mechanism for suppressing the casting of designated shadows.
TraceSet
A list of geometries and parts. It is used to specify a set of geometric primitives that a ray can trace. This can be useful in subsurface scattering, to trace rays through geometries that have similar, but different, subsurface materials.
UserData
An object used to encapsulate arbitrary, user-specified primitive attributes.
Volumes
MoonRay supports both homogenous volumes with BaseVolume, and heterogeneous volumes with VdbVolume.