#include <ambientocclusion.h>
Public Member Functions | |
AmbientOcclusionIntegrator (int ns, float md) | |
Spectrum | Li (const Scene *scene, const Renderer *renderer, const RayDifferential &ray, const Intersection &isect, const Sample *sample, RNG &rng, MemoryArena &arena) const |
Private Attributes | |
int | nSamples |
float | maxDist |
Definition at line 36 of file ambientocclusion.h.
AmbientOcclusionIntegrator::AmbientOcclusionIntegrator | ( | int | ns, | |
float | md | |||
) | [inline] |
Definition at line 38 of file ambientocclusion.h.
References maxDist, nSamples, and RoundUpPow2().
Spectrum AmbientOcclusionIntegrator::Li | ( | const Scene * | scene, | |
const Renderer * | renderer, | |||
const RayDifferential & | ray, | |||
const Intersection & | isect, | |||
const Sample * | sample, | |||
RNG & | rng, | |||
MemoryArena & | arena | |||
) | const [virtual] |
Implements SurfaceIntegrator.
Definition at line 34 of file ambientocclusion.cpp.
References Ray::d, Intersection::dg, BSDF::dgShading, Dot(), Faceforward(), Intersection::GetBSDF(), Scene::IntersectP(), maxDist, DifferentialGeometry::nn, nSamples, DifferentialGeometry::p, RNG::RandomUInt(), Sample02(), and UniformSampleSphere().
float AmbientOcclusionIntegrator::maxDist [private] |
Definition at line 44 of file ambientocclusion.h.
Referenced by AmbientOcclusionIntegrator(), and Li().
int AmbientOcclusionIntegrator::nSamples [private] |
Definition at line 43 of file ambientocclusion.h.
Referenced by AmbientOcclusionIntegrator(), and Li().