Defines two simple but multithreaded renders, a level-set ray tracer and a volume render. To support these renders we also define perspective and orthographic cameras (both designed to mimic a Houdini camera), a Film class and some rather naive shaders.
More...
|
class | LevelSetRayTracer< GridT, IntersectorT > |
| A (very) simple multithreaded ray tracer specifically for narrow-band level sets. More...
|
|
class | VolumeRender< IntersectorT, SamplerT > |
| A (very) simple multithreaded volume render specifically for scalar density. More...
|
|
class | Film |
| A simple class that allows for concurrent writes to pixels in an image, background initialization of the image, and PPM file output. More...
|
|
struct | Film::RGBA |
| Floating-point RGBA components in the range [0, 1]. More...
|
|
class | BaseCamera |
| Abstract base class for the perspective and orthographic cameras. More...
|
|
class | PerspectiveCamera |
|
class | OrthographicCamera |
|
class | BaseShader |
| Abstract base class for the shaders. More...
|
|
class | MatteShader< GridT, SamplerType > |
| Shader that produces a simple matte. More...
|
|
class | MatteShader< Film::RGBA, SamplerType > |
|
class | NormalShader< GridT, SamplerType > |
| Color shader that treats the surface normal (x, y, z) as an RGB color. More...
|
|
class | NormalShader< Film::RGBA, SamplerType > |
|
class | PositionShader< GridT, SamplerType > |
| Color shader that treats position (x, y, z) as an RGB color in a cube defined from an axis-aligned bounding box in world space. More...
|
|
class | PositionShader< Film::RGBA, SamplerType > |
|
class | DiffuseShader< GridT, SamplerType > |
| Simple diffuse Lambertian surface shader. More...
|
|
class | DiffuseShader< Film::RGBA, SamplerType > |
|
|
template<typename GridT > |
void | rayTrace (const GridT &, const BaseShader &, BaseCamera &, size_t pixelSamples=1, unsigned int seed=0, bool threaded=true) |
| Ray-trace a volume. More...
|
|
template<typename GridT , typename IntersectorT > |
void | rayTrace (const GridT &, const IntersectorT &, const BaseShader &, BaseCamera &, size_t pixelSamples=1, unsigned int seed=0, bool threaded=true) |
| Ray-trace a volume using a given ray intersector. More...
|
|
Defines two simple but multithreaded renders, a level-set ray tracer and a volume render. To support these renders we also define perspective and orthographic cameras (both designed to mimic a Houdini camera), a Film class and some rather naive shaders.
- Author
- Ken Museth
- Note
- These classes are included mainly as reference implementations for ray-tracing of OpenVDB volumes. In other words they are not intended for production-quality rendering, but could be used for fast pre-visualization or as a starting point for a more serious render.