Public Member Functions | |
PhotonShootingTask (int tn, float ti, Mutex &m, PhotonIntegrator *in, ProgressReporter &prog, bool &at, int &ndp, vector< Photon > &direct, vector< Photon > &indir, vector< Photon > &caustic, vector< RadiancePhoton > &rps, vector< Spectrum > &rpR, vector< Spectrum > &rpT, uint32_t &ns, Distribution1D *distrib, const Scene *sc, const Renderer *sr) | |
void | Run () |
Public Attributes | |
int | taskNum |
float | time |
Mutex & | mutex |
PhotonIntegrator * | integrator |
ProgressReporter & | progress |
bool & | abortTasks |
int & | nDirectPaths |
vector< Photon > & | directPhotons |
vector< Photon > & | indirectPhotons |
vector< Photon > & | causticPhotons |
vector< RadiancePhoton > & | radiancePhotons |
vector< Spectrum > & | rpReflectances |
vector< Spectrum > & | rpTransmittances |
uint32_t & | nshot |
const Distribution1D * | lightDistribution |
const Scene * | scene |
const Renderer * | renderer |
Definition at line 48 of file photonmap.cpp.
PhotonShootingTask::PhotonShootingTask | ( | int | tn, | |
float | ti, | |||
Mutex & | m, | |||
PhotonIntegrator * | in, | |||
ProgressReporter & | prog, | |||
bool & | at, | |||
int & | ndp, | |||
vector< Photon > & | direct, | |||
vector< Photon > & | indir, | |||
vector< Photon > & | caustic, | |||
vector< RadiancePhoton > & | rps, | |||
vector< Spectrum > & | rpR, | |||
vector< Spectrum > & | rpT, | |||
uint32_t & | ns, | |||
Distribution1D * | distrib, | |||
const Scene * | sc, | |||
const Renderer * | sr | |||
) | [inline] |
Definition at line 50 of file photonmap.cpp.
void PhotonShootingTask::Run | ( | ) | [virtual] |
Implements Task.
Definition at line 397 of file photonmap.cpp.
References abortTasks, AbsDot(), arena, BSDF_ALL, BSDF_ALL_REFLECTION, BSDF_ALL_TRANSMISSION, BSDF_REFLECTION, BSDF_SPECULAR, BSDF_TRANSMISSION, causticPhotons, Ray::d, Intersection::dg, BSDF::dgShading, directPhotons, Error(), Faceforward(), PhotonIntegrator::finalGather, MemoryArena::FreeAll(), Intersection::GetBSDF(), indirectPhotons, integrator, Scene::Intersect(), CoefficientSpectrum< nSamples >::IsBlack(), lightDistribution, Scene::lights, PhotonIntegrator::maxPhotonDepth, mutex, PhotonIntegrator::nCausticPaths, PhotonIntegrator::nCausticPhotonsWanted, nDirectPaths, PhotonIntegrator::nIndirectPaths, PhotonIntegrator::nIndirectPhotonsWanted, DifferentialGeometry::nn, nshot, BSDF::NumComponents(), DifferentialGeometry::p, progress, radiancePhotons, RNG::RandomFloat(), Intersection::rayEpsilon, renderer, BSDF::rho(), rng, rpReflectances, rpTransmittances, PermutedHalton::Sample(), BSDF::Sample_f(), Light::Sample_L(), Distribution1D::SampleDiscrete(), scene, taskNum, time, Renderer::Transmittance(), unsuccessful(), ProgressReporter::Update(), and RGBSpectrum::y().
Definition at line 68 of file photonmap.cpp.
Referenced by Run().
vector<Photon> & PhotonShootingTask::causticPhotons |
Definition at line 70 of file photonmap.cpp.
Referenced by Run().
vector<Photon>& PhotonShootingTask::directPhotons |
Definition at line 70 of file photonmap.cpp.
Referenced by Run().
vector<Photon> & PhotonShootingTask::indirectPhotons |
Definition at line 70 of file photonmap.cpp.
Referenced by Run().
Definition at line 66 of file photonmap.cpp.
Referenced by Run().
Definition at line 74 of file photonmap.cpp.
Referenced by Run().
Definition at line 65 of file photonmap.cpp.
Referenced by Run().
Definition at line 69 of file photonmap.cpp.
Referenced by Run().
uint32_t& PhotonShootingTask::nshot |
Definition at line 73 of file photonmap.cpp.
Referenced by Run().
Definition at line 67 of file photonmap.cpp.
Referenced by Run().
Definition at line 71 of file photonmap.cpp.
Referenced by Run().
Definition at line 76 of file photonmap.cpp.
Referenced by Run().
Definition at line 72 of file photonmap.cpp.
Referenced by Run().
vector<Spectrum> & PhotonShootingTask::rpTransmittances |
Definition at line 72 of file photonmap.cpp.
Referenced by Run().
const Scene* PhotonShootingTask::scene |
Definition at line 75 of file photonmap.cpp.
Referenced by Run().
Definition at line 63 of file photonmap.cpp.
Referenced by Run().
float PhotonShootingTask::time |
Definition at line 64 of file photonmap.cpp.
Referenced by Run().