#include <createprobes.h>
Public Member Functions | |
| CreateRadianceProbes (SurfaceIntegrator *surf, VolumeIntegrator *vol, const Camera *camera, int lmax, float probeSpacing, const BBox &bbox, int nIndirSamples, bool includeDirect, bool includeIndirect, float time, const string &filename) | |
| ~CreateRadianceProbes () | |
| void | Render (const Scene *scene) |
| Spectrum | Li (const Scene *scene, const RayDifferential &ray, const Sample *sample, RNG &rng, MemoryArena &arena, Intersection *isect, Spectrum *T) const |
| Spectrum | Transmittance (const Scene *scene, const RayDifferential &ray, const Sample *sample, RNG &rng, MemoryArena &arena) const |
Private Attributes | |
| SurfaceIntegrator * | surfaceIntegrator |
| VolumeIntegrator * | volumeIntegrator |
| const Camera * | camera |
| int | lmax |
| int | nIndirSamples |
| BBox | bbox |
| bool | includeDirectInProbes |
| bool | includeIndirectInProbes |
| float | time |
| float | probeSpacing |
| string | filename |
Definition at line 37 of file createprobes.h.
| CreateRadianceProbes::CreateRadianceProbes | ( | SurfaceIntegrator * | surf, | |
| VolumeIntegrator * | vol, | |||
| const Camera * | camera, | |||
| int | lmax, | |||
| float | probeSpacing, | |||
| const BBox & | bbox, | |||
| int | nIndirSamples, | |||
| bool | includeDirect, | |||
| bool | includeIndirect, | |||
| float | time, | |||
| const string & | filename | |||
| ) |
Definition at line 64 of file createprobes.cpp.
References bbox, camera, filename, includeDirectInProbes, includeIndirectInProbes, lmax, nIndirSamples, probeSpacing, surfaceIntegrator, time, and volumeIntegrator.
| CreateRadianceProbes::~CreateRadianceProbes | ( | ) |
Definition at line 81 of file createprobes.cpp.
References surfaceIntegrator, and volumeIntegrator.
| Spectrum CreateRadianceProbes::Li | ( | const Scene * | scene, | |
| const RayDifferential & | ray, | |||
| const Sample * | sample, | |||
| RNG & | rng, | |||
| MemoryArena & | arena, | |||
| Intersection * | isect, | |||
| Spectrum * | T | |||
| ) | const [virtual] |
Implements Renderer.
Definition at line 87 of file createprobes.cpp.
References Assert, RayDifferential::HasNaNs(), Scene::Intersect(), VolumeIntegrator::Li(), SurfaceIntegrator::Li(), Scene::lights, surfaceIntegrator, CameraSample::time, Ray::time, and volumeIntegrator.
| void CreateRadianceProbes::Render | ( | const Scene * | scene | ) | [virtual] |
Implements Renderer.
Definition at line 115 of file createprobes.cpp.
References bbox, BBox::BoundingSphere(), camera, Camera::CameraToWorld, Ceil2Int(), Ray::d, Intersection::dg, ProgressReporter::Done(), EnqueueTasks(), Faceforward(), filename, includeDirectInProbes, includeIndirectInProbes, INFINITY, Scene::Intersect(), Inverse(), lmax, Ray::maxt, nIndirSamples, DifferentialGeometry::nn, DifferentialGeometry::p, BBox::pMax, BBox::pMin, Integrator::Preprocess(), probeSpacing, RNG::RandomFloat(), Intersection::rayEpsilon, rng, Severe(), SHTerms(), Camera::shutterOpen, surfaceIntegrator, time, Translate(), UniformSampleSphere(), volumeIntegrator, WaitForAllTasks(), Scene::WorldBound(), Point::x, Point::y, and Point::z.
| Spectrum CreateRadianceProbes::Transmittance | ( | const Scene * | scene, | |
| const RayDifferential & | ray, | |||
| const Sample * | sample, | |||
| RNG & | rng, | |||
| MemoryArena & | arena | |||
| ) | const [virtual] |
Implements Renderer.
Definition at line 108 of file createprobes.cpp.
References VolumeIntegrator::Transmittance(), and volumeIntegrator.
BBox CreateRadianceProbes::bbox [private] |
Definition at line 57 of file createprobes.h.
Referenced by CreateRadianceProbes(), and Render().
const Camera* CreateRadianceProbes::camera [private] |
Definition at line 55 of file createprobes.h.
Referenced by CreateRadianceProbes(), and Render().
string CreateRadianceProbes::filename [private] |
Definition at line 60 of file createprobes.h.
Referenced by CreateRadianceProbes(), and Render().
bool CreateRadianceProbes::includeDirectInProbes [private] |
Definition at line 58 of file createprobes.h.
Referenced by CreateRadianceProbes(), and Render().
bool CreateRadianceProbes::includeIndirectInProbes [private] |
Definition at line 58 of file createprobes.h.
Referenced by CreateRadianceProbes(), and Render().
int CreateRadianceProbes::lmax [private] |
Definition at line 56 of file createprobes.h.
Referenced by CreateRadianceProbes(), and Render().
int CreateRadianceProbes::nIndirSamples [private] |
Definition at line 56 of file createprobes.h.
Referenced by CreateRadianceProbes(), and Render().
float CreateRadianceProbes::probeSpacing [private] |
Definition at line 59 of file createprobes.h.
Referenced by CreateRadianceProbes(), and Render().
Definition at line 53 of file createprobes.h.
Referenced by CreateRadianceProbes(), Li(), Render(), and ~CreateRadianceProbes().
float CreateRadianceProbes::time [private] |
Definition at line 59 of file createprobes.h.
Referenced by CreateRadianceProbes(), and Render().
Definition at line 54 of file createprobes.h.
Referenced by CreateRadianceProbes(), Li(), Render(), Transmittance(), and ~CreateRadianceProbes().
1.6.3