Mesh Lights in RfK 2.0

Mesh Lights in RfK 2.0

Creating Mesh Lights

Any piece of geometry can be used as a geometric area light. For these arbitrary geometric area lights (also referred to as "mesh lights") the geometry needs to be attached to the light using a specific attribute that RfK looks for when processing the lights. This is done by creating a string attribute on the light named "geometry.areaLightGeometrySource" and setting this attribute to be a geometry location.

The geometry can be rendered with or without a bxdf. Without a bxdf the geometry itself will not appear in the final render (i.e. the light will be "invisible"). If an emissive bxdf is assigned to the geometry then the geometry will be rendered according to the characteristics of that shader. Note that the shader attached to needs to have emissive capability; i.e. it needs to call the emit shadeop in prelighting.

The built-in bxdf PxrLightEmission can be used to simply render the geometry using the characteristics of the light to which the geometry is assigned.

This capability is demonstrated in the mesh light example scene.

images/rfkMeshLightRIS.png

Wider improvements to RfK's lighting workflow are on their way in a future version of PRMan. One element of this upgrade involves the simplification of creating and managing both analytic and arbitrary geometric area lights. For example, automatically setting the geometry assignment attribute if a mesh location is dropped onto a light. Until the new tools are in place, however, the user will need to create both a light in the gaffer and a separate place where the areaLightGeometrySource attribute is set.

  • Note:
In RIS the "indirect" visibility has been changed to default to "ON". PrmanObjectSettings uses a default of "OFF" which matches the original pre-RIS setting. We are working on a way of presenting the correct UI via split PrmanObjectSettings (and PrmanGlobalSettings) but in the meantime we recommend setting indirect visibility explicitly.

In addition it is recommended that you increase the shading rate for the primitive for improved performance (see the Notes section of the RPS Geometric Area Light documentation for more information).