metropolis.cpp File Reference

#include "stdafx.h"
#include "renderers/metropolis.h"
#include "renderers/samplerrenderer.h"
#include "scene.h"
#include "imageio.h"
#include "spectrum.h"
#include "camera.h"
#include "film.h"
#include "rng.h"
#include "progressreporter.h"
#include "paramset.h"
#include "parallel.h"
#include "probes.h"
#include "intersection.h"
#include "montecarlo.h"
#include "samplers/lowdiscrepancy.h"
#include "integrators/directlighting.h"

Go to the source code of this file.

Classes

struct  PathSample
struct  LightingSample
struct  MLTSample
struct  PathVertex
class  MLTTask

Functions

static void LargeStep (RNG &rng, MLTSample *sample, int maxDepth, float x, float y, float t0, float t1, bool bidirectional)
static void mutate (RNG &rng, float *v, float min=0.f, float max=1.f)
static void SmallStep (RNG &rng, MLTSample *sample, int maxDepth, int x0, int x1, int y0, int y1, float t0, float t1, bool bidirectional)
static uint32_t GeneratePath (const RayDifferential &r, const Spectrum &alpha, const Scene *scene, MemoryArena &arena, const vector< PathSample > &samples, PathVertex *path, RayDifferential *escapedRay, Spectrum *escapedAlpha)
float I (const Spectrum &L)
MetropolisRendererCreateMetropolisRenderer (const ParamSet &params, Camera *camera)

Function Documentation

MetropolisRenderer* CreateMetropolisRenderer ( const ParamSet params,
Camera camera 
)
static uint32_t GeneratePath ( const RayDifferential r,
const Spectrum alpha,
const Scene scene,
MemoryArena arena,
const vector< PathSample > &  samples,
PathVertex path,
RayDifferential escapedRay,
Spectrum escapedAlpha 
) [static]
float I ( const Spectrum L  )  [inline]
static void LargeStep ( RNG rng,
MLTSample sample,
int  maxDepth,
float  x,
float  y,
float  t0,
float  t1,
bool  bidirectional 
) [static]
static void mutate ( RNG rng,
float *  v,
float  min = 0.f,
float  max = 1.f 
) [inline, static]

Definition at line 114 of file metropolis.cpp.

References Assert, and RNG::RandomFloat().

Referenced by SmallStep().

static void SmallStep ( RNG rng,
MLTSample sample,
int  maxDepth,
int  x0,
int  x1,
int  y0,
int  y1,
float  t0,
float  t1,
bool  bidirectional 
) [static]
Generated on Sat Aug 28 20:00:12 2010 for pbrt by  doxygen 1.6.3