Fermat
Public Methods | Static Public Methods | Public Members | List of all members
BPT Struct Reference

Detailed description

A bidirectional path tracing renderer built on top of the BPTLib library.

#include <bpt.h>

Inheritance diagram for BPT:
RendererInterface

Public Methods

void init (int argc, char **argv, RenderingContext &renderer)
 
void render (const uint32 instance, RenderingContext &renderer)
 [BPT::render]
 
void destroy ()
 
void regenerate_primary_light_vertices (const uint32 instance, RenderingContext &renderer)
 
- Public Methods inherited from RendererInterface
virtual uint32 auxiliary_channel_count ()
 
virtual void register_auxiliary_channels (FBufferStorage &fbuffer, const uint32 channel_offset)
 
virtual void update_scene (RenderingContext &renderer)
 
virtual void keyboard (unsigned char character, int x, int y, bool &invalidate)
 
virtual void mouse (RenderingContext &renderer, int button, int state, int x, int y)
 
virtual void draw (RenderingContext &renderer)
 
virtual void dump_speed_stats (FILE *stats)
 

Static Public Methods

static RendererInterfacefactory ()
 

Public Members

BPTOptions m_options
 
TiledSequence m_sequence
 
BPTQueuesStorage m_queues
 
VertexStorage m_light_vertices
 
uint32 m_n_light_subpaths
 
uint32 m_n_eye_subpaths
 
cugar::LFSRGeneratorMatrix m_generator
 
cugar::LFSRRandomStream m_random
 
float m_time
 

Member Function Documentation

◆ destroy()

void BPT::destroy ( )
inlinevirtual

this method is responsible for destroying the object itself

Reimplemented from RendererInterface.

◆ init()

void BPT::init ( int  argc,
char **  argv,
RenderingContext renderer 
)
virtual

this method is responsible for any command options parsing / initializations the renderer might need to perform

Reimplemented from RendererInterface.


The documentation for this struct was generated from the following files: