Rendu
A lightweight rendering engine for experimentations
Loading...
Searching...
No Matches
Classes | Functions
Path tracer

A basic diffuse path tracing demo, with an interactive viewer to place the camera.

Classes

class  BVHRenderer
 Renderer coupled with a basic diffuse path tracer. The user can move the camera anywhere and trigger a path-traced rendering. Can also display the raycaster acceleration structure. More...
 
class  PathTracerConfig
 Path tracer demo configuration. Parameters for offline rendering. More...
 
class  MaterialGGX
 CPU methods for evaluating the Cook-Torrance BRDF (Lambert+GGX/Towbridge-Reitz) for a given set of parameters, and sample a ray following the distribution of normals. More...
 
class  MaterialSky
 CPU methods for evaluating the atmospheric scattering model used by the sky background. More...
 
class  PathTracer
 Unidirectional path tracer. Generates renderings of a scene by emitting rays from the user viewpoint and letting them bounce in the scene, forming paths. Lighting and materials contributions are accumulated along each path to compute the color of the associated sample. More...
 
class  PathTracerApp
 Viewer coupled with a basic diffuse path tracer. The user can move the camera anywhere and trigger a path-traced rendering. Can also display the raycaster acceleration structure. More...
 

Functions

void renderOneShot (const PathTracerConfig &config)
 
int main (int argc, char **argv)
 

Function Documentation

◆ main()

int main ( int  argc,
char **  argv 
)

The main function of the demo.

Parameters
argcthe number of input arguments.
argva pointer to the raw input arguments.
Returns
a general error code.

◆ renderOneShot()

void renderOneShot ( const PathTracerConfig config)

Load a scene and performs a path tracer rendering using the settings in the configuration. The camera used will be the scene reference viewpoint defined in the scene file. The output will be saved to the path specified in the configuration.

Parameters
configthe run configuration