Abstract base class for the shaders. More...
#include <openvdb/tools/RayTracer.h>
Public Types | |
| using | RayT = math::Ray<Real> |
Public Member Functions | |
| BaseShader () | |
| BaseShader (const BaseShader &)=default | |
| virtual | ~BaseShader ()=default |
| virtual Film::RGBA | operator() (const Vec3R &xyz, const Vec3R &nml, const Vec3R &dir) const =0 |
| Defines the interface of the virtual function that returns a RGB color. | |
| virtual BaseShader * | copy () const =0 |
Abstract base class for the shaders.
|
inline |
|
default |
|
virtualdefault |
|
pure virtual |
Implemented in DiffuseShader< GridT, SamplerType >, DiffuseShader< Film::RGBA, SamplerType >, DiffuseShader< Film::RGBA, SamplerType >, MatteShader< GridT, SamplerType >, MatteShader< Film::RGBA, SamplerType >, MatteShader< Film::RGBA, SamplerType >, NormalShader< GridT, SamplerType >, NormalShader< Film::RGBA, SamplerType >, NormalShader< Film::RGBA, SamplerType >, PositionShader< GridT, SamplerType >, PositionShader< Film::RGBA, SamplerType >, and PositionShader< Film::RGBA, SamplerType >.
|
pure virtual |
Defines the interface of the virtual function that returns a RGB color.
| xyz | World position of the intersection point. |
| nml | Normal in world space at the intersection point. |
| dir | Direction of the ray in world space. |
Implemented in DiffuseShader< GridT, SamplerType >, DiffuseShader< Film::RGBA, SamplerType >, DiffuseShader< Film::RGBA, SamplerType >, MatteShader< GridT, SamplerType >, MatteShader< Film::RGBA, SamplerType >, MatteShader< Film::RGBA, SamplerType >, NormalShader< GridT, SamplerType >, NormalShader< Film::RGBA, SamplerType >, NormalShader< Film::RGBA, SamplerType >, PositionShader< GridT, SamplerType >, PositionShader< Film::RGBA, SamplerType >, and PositionShader< Film::RGBA, SamplerType >.