Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Light filters implement the RixLightFilter interface found in RixLightFilter.h.  A light filter must implement three methods: the five methods of the RixShadingPlugin interface, Init(), Finalize(), GetParamTable(), Synchronize() and CreateInstanceData(), and the three methods of the RixLightFilter interface, Filter(), GetProperty(), and GetRadianceModifier().

...

Like bxdfs, light filters can be parameters to other light filters. The last filter given before an AreaLightSource call an Light call (the root filter in a tree of filters) is responsible for delegating to the filters in its parameter list. Furthermore, light filters can be disabled on a gprim basis. To respect this, it is the responsibility of the filter to call RixLightFilterContext::IsEnabled(). If the upstream filter is not enabled, don't run it. IsEnabled() also returns a pointer to the upstream filter's instanceData, which should be passed to its Filter() method.

...