#include "metrosampler.h"#include "memory.h"#include "scene.h"#include "dynload.h"Go to the source code of this file.
Defines | |
| #define | SAMPLE_FLOATS 7 |
| #define | rngGet(__pos) (modff(rngSamples[(rngBase + (__pos)) % rngN] + rngRotation[(__pos)], &rngDummy)) |
| #define | rngGet2(__pos, __off) (modff(rngSamples[(rngBase + (__pos) + (__off)) % rngN] + rngRotation[(__pos)], &rngDummy)) |
Functions | |
| static float | mutate (const float x, const float randomValue) |
| static float | mutateScaled (const float x, const float randomValue, const float mini, const float maxi, const float range) |
| static void | initMetropolis (MetropolisSampler *sampler, const Sample *sample) |
Variables | |
| static const u_int | rngN = 8191 |
| static const u_int | rngA = 884 |
| static float | rngDummy |
| static DynamicLoader::RegisterSampler < MetropolisSampler > | r ("metropolis") |
| #define rngGet | ( | __pos | ) | (modff(rngSamples[(rngBase + (__pos)) % rngN] + rngRotation[(__pos)], &rngDummy)) |
Definition at line 68 of file metrosampler.cpp.
Referenced by lux::MetropolisSampler::GetLazyValues(), and lux::MetropolisSampler::GetNextSample().
| #define rngGet2 | ( | __pos, | |||
| __off | ) | (modff(rngSamples[(rngBase + (__pos) + (__off)) % rngN] + rngRotation[(__pos)], &rngDummy)) |
Definition at line 69 of file metrosampler.cpp.
Referenced by lux::MetropolisSampler::GetLazyValues().
| #define SAMPLE_FLOATS 7 |
Definition at line 33 of file metrosampler.cpp.
| static void initMetropolis | ( | MetropolisSampler * | sampler, | |
| const Sample * | sample | |||
| ) | [static] |
Definition at line 110 of file metrosampler.cpp.
References lux::Sampler::contribBuffer, lux::Scene::contribPool, lux::Sample::dxD, lux::Sampler::film, lux::Sample::n1D, lux::Sample::n2D, lux::ContributionPool::Next(), lux::MetropolisSampler::normalSamples, lux::Sample::nxD, lux::MetropolisSampler::offset, lux::MetropolisSampler::rngBase, rngN, lux::MetropolisSampler::rngOffset, lux::MetropolisSampler::rngRotation, SAMPLE_FLOATS, lux::MetropolisSampler::sampleImage, lux::Film::scene, lux::MetropolisSampler::timeImage, lux::MetropolisSampler::totalSamples, and lux::MetropolisSampler::totalTimes.
Referenced by lux::MetropolisSampler::GetNextSample().
| static float mutate | ( | const float | x, | |
| const float | randomValue | |||
| ) | [static] |
Definition at line 36 of file metrosampler.cpp.
Referenced by lux::MetropolisSampler::GetLazyValues(), and lux::MetropolisSampler::GetNextSample().
| static float mutateScaled | ( | const float | x, | |
| const float | randomValue, | |||
| const float | mini, | |||
| const float | maxi, | |||
| const float | range | |||
| ) | [static] |
Definition at line 51 of file metrosampler.cpp.
Referenced by lux::MetropolisSampler::GetNextSample().
DynamicLoader::RegisterSampler<MetropolisSampler> r("metropolis") [static] |
Definition at line 66 of file metrosampler.cpp.
Referenced by lux::MetropolisSampler::MetropolisSampler().
float rngDummy [static] |
Definition at line 67 of file metrosampler.cpp.
Definition at line 65 of file metrosampler.cpp.
Referenced by lux::MetropolisSampler::GetNextSample(), initMetropolis(), and lux::MetropolisSampler::MetropolisSampler().
1.6.2-20100208