Lighting in RenderMan is flexible but also very straightforward for users.
RenderMan includes a set of basic geometric lights, built-in. These specialized shapes - DomeLight, DistantLight, RectLight, and SphereLight (particularly the latter two) - can provide superior sampling behavior, compared with arbitrary geometry (i.e. standard geometric primitives with a light Bxdf attached). There's also a PortalLight to improve lighting interior scenes lit indirectly through openings like windows and skylights as well as a Daylight simulation.
Light Filters can also be used to modify and direct the lighting with even more control and artistic options. You can find real-world possibilities like Gobos and Cookies as well as advanced ways to link and control results like object specific intensities from a single light.
Note that due to these optimizations, the spherelight requires that all scale transforms be uniform, e. g. X,Y, and Z scale must all be the same so as not to skew the sphere shape into an ellipse or other form.
Note there are three main ways to light a scene:
- Analytic Lights - These are the preferred choice. These provide superior memory usage, flexibility, and speed. Their visibility is a simple on and off for camera visibility.
- Mesh Lights - These are great for using arbitrary shapes in lighting. These consume more memory since they are geometry and complex shapes may increase noise. These can make use of visibility like any other object: camera, shadow/transmission, and indirect visibility.
- Emissive Surfaces - These typically use a constant bxdf or "glow" parameter to light a scene indirectly. This is inefficient and should usually be avoided but may be useful for texture mapping "lights" onto futuristic objects and panels!
Analytic Light Types
- PxrDomeLight - The domelight acts as the environment light for a scene and is often mapped with a high dymanic range image (HDRI).
- PxrRectLight - The rectlight is the commonly used rectangle-shaped area light.
- PxrDistantLight - This light is perfect for use as a Sunlight or other distant source where light rays are nearly parallel and cover the whole scene.
- PxrDiskLight - Great for using as an area light or in combination with filters to make a spotlight.
- PxrSphereLight - For users that miss using a point light, this light can be useful to illuminate in all directions.
- PxrEnvDaylight - A daylight simulation shader where you can supply any time and location on Earth or simply place your sunlight where you like it.
- PxrPortalLight - For difficult lighting situations like indirectly lit interiors, this light along with the PxrDomeLight can be used to increase the quality and speed of your renders.
Geometric Light Types
- PxrMeshLight - The mesh light uses a piece of geometry and turns it into a light source. This is much more efficient than using glow or emission from a bxdf. It's great for things like neon lights.
Utility Light Types
- PxrAOVLight - This is a utility that's recognized as a light type but it doesn't illuminate anything. It's a useful tool for creating quick masks for objects through light linking.
Lights also have some special parameters regarding shadows and bidirectional path tracing made possible by the PxrVCM and PxrUPBP integrators. You can refer to the technical memo:
- Christophe Hery, Ryusuke Villemin, Florian Hecht. Towards Bidirectional Pathtracing at Pixar