Renderer Class Reference

Abstract rendering engine which attempts to evaluate a rendering equation over a given 2D domain (the film plane) and pipes its output to an equally abstract RenderOutput (generally an image wrapper, but allowing for distributed rendering). More...

#include <Renderer.h>

Inheritance diagram for Renderer:

PropertyMap OpenGLRenderer PointSampleRenderer BidirectionalPathTracer RayTracer PathTracer RayCaster WhittedRayTracer

List of all members.

Public Member Functions

Constructors
 Renderer (Camera *camera=NULL, Scene *scene=NULL)
virtual ~Renderer ()
Initialization routines
virtual void init ()
 Performs any initialization which may be necessary before beginning to render the underlying scene.
Main usage interface
virtual void render ()=0
Accessors / Mutators
CameragetCamera ()
void setCamera (Camera *camera)
ScenegetScene ()
void setScene (Scene *scene)
virtual bool supportsOpenGL ()
DirectIlluminationgetDirectIllumination ()
const TimergetTimer () const
virtual std::string getElapsedTime () const

Protected Attributes

Cameram_camera
Scenem_scene
bool m_initted
DirectIlluminationm_directIllumination
Timer m_timer


Detailed Description

Abstract rendering engine which attempts to evaluate a rendering equation over a given 2D domain (the film plane) and pipes its output to an equally abstract RenderOutput (generally an image wrapper, but allowing for distributed rendering).

Author:
Travis Fischer (fisch0920@gmail.com)

Matthew Jacobs (jacobs.mh@gmail.com)

Date:
Fall 2008

Definition at line 25 of file Renderer.h.


Constructor & Destructor Documentation

Renderer::Renderer ( Camera camera = NULL,
Scene scene = NULL 
) [inline]

Definition at line 30 of file Renderer.h.

Renderer::~Renderer (  )  [virtual]

Definition at line 21 of file Renderer.cpp.


Member Function Documentation

void Renderer::init (  )  [virtual]

Performs any initialization which may be necessary before beginning to render the underlying scene.

Note:
Default implementation ensures we have a valid scene and camera and calls init on both of them respectively

Reimplemented in PathTracer, RayCaster, and WhittedRayTracer.

Definition at line 27 of file Renderer.cpp.

virtual void Renderer::render (  )  [pure virtual]

Renders the underlying scene

Implemented in PointSampleRenderer, and OpenGLRenderer.

Camera* Renderer::getCamera (  )  [inline]

Definition at line 68 of file Renderer.h.

void Renderer::setCamera ( Camera camera  )  [inline]

Definition at line 72 of file Renderer.h.

Scene* Renderer::getScene (  )  [inline]

Definition at line 76 of file Renderer.h.

void Renderer::setScene ( Scene scene  )  [inline]

Definition at line 80 of file Renderer.h.

virtual bool Renderer::supportsOpenGL (  )  [inline, virtual]

Reimplemented in OpenGLRenderer.

Definition at line 84 of file Renderer.h.

DirectIllumination* Renderer::getDirectIllumination (  )  [inline]

Definition at line 88 of file Renderer.h.

const Timer& Renderer::getTimer (  )  const [inline]

Definition at line 92 of file Renderer.h.

std::string Renderer::getElapsedTime (  )  const [virtual]

Definition at line 54 of file Renderer.cpp.


Member Data Documentation

Camera* Renderer::m_camera [protected]

Definition at line 102 of file Renderer.h.

Scene* Renderer::m_scene [protected]

Definition at line 103 of file Renderer.h.

bool Renderer::m_initted [protected]

Definition at line 104 of file Renderer.h.

Definition at line 106 of file Renderer.h.

Timer Renderer::m_timer [protected]

Definition at line 107 of file Renderer.h.


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

Generated on 28 Feb 2009 for Milton by doxygen 1.5.6