GLRender Class Reference

#include <GLRender.h>

Inheritance diagram for GLRender:

Render GRAObject GLBVRender GLEnergyRender GLIrradCacheRender GLPhotonMapRender List of all members.

Public Member Functions

 GLRender (int *stopFlag, bool useDisplayList=true)
 ~GLRender ()
virtual void clearDisplayList (void)
virtual void useDisplayList (bool use)
virtual bool displayListUsed (void) const
virtual void renderScene (Shader &shader, FrameBuffer &fb, Camera &camera, Scene &scene)

Protected Member Functions

virtual void _render (Shader &shader, FrameBuffer &fb, Camera &camera, Scene &scene)

Protected Attributes

GLuint _displayList
bool _useDisplayList
int * _pStopFlag

Classes

struct  TranslucentObj

Detailed Description

This render suppose that the shader calls OpenGL operations directly and then it does most of the job. Render only searches for visible shapes and sends them to the shader.

GLRender requires an OpenGL camera (CameraGL class), which is instantiated from the general camera internally in this render.

Definition at line 27 of file GLRender.h.


Constructor & Destructor Documentation

GLRender int *  stopFlag,
bool  useDisplayList = true
[inline]
 

Constructor

Parameters:
stopFlag pointer to stop flag
useDisplayList whether to use display lists

Definition at line 57 of file GLRender.h.

~GLRender  )  [inline]
 

Destructor

Definition at line 66 of file GLRender.h.


Member Function Documentation

void _render Shader shader,
FrameBuffer fb,
Camera camera,
Scene scene
[protected, virtual]
 

Parameters:
shader shader
fb frame-buffer
camera camera
scene rendered scene

Implements Render.

Reimplemented in GLBVRender, GLEnergyRender, GLIrradCacheRender, and GLPhotonMapRender.

Definition at line 16 of file GLRender.cc.

References GLRender::_displayList, GLRender::_useDisplayList, GLRender::TranslucentObj::pObject, Scene::root(), Shader::setRenderedShape(), GLRender::TranslucentObj::transformed, and GLRender::TranslucentObj::trMat.

Referenced by GLBVRender::_render().

virtual void clearDisplayList void   )  [inline, virtual]
 

Clear internal display list.

Reimplemented in GLBVRender.

Definition at line 71 of file GLRender.h.

Referenced by GLBVRender::clearDisplayList().

virtual bool displayListUsed void   )  const [inline, virtual]
 

Returns:
true if display list is used, false otherwise

Definition at line 88 of file GLRender.h.

virtual void renderScene Shader shader,
FrameBuffer fb,
Camera camera,
Scene scene
[inline, virtual, inherited]
 

To re-implement the rendering method in derived classes use protected function _render() unless you know what you do.

Parameters:
shader shader
fb frame-buffer
camera camera
scene rendered scene

Definition at line 66 of file Render.h.

References Scene::root().

Referenced by GLIrradCacheRender::_render().

virtual void useDisplayList bool  use  )  [inline, virtual]
 

Sets/unsets the usage of display list

Reimplemented in GLBVRender.

Definition at line 80 of file GLRender.h.

Referenced by GLBVRender::useDisplayList().


Member Data Documentation

GLuint _displayList [protected]
 

Definition at line 35 of file GLRender.h.

Referenced by GLRender::_render(), GLPhotonMapRender::_render(), GLIrradCacheRender::_render(), and GLEnergyRender::_render().

int* _pStopFlag [protected, inherited]
 

Definition at line 27 of file Render.h.

Referenced by RTRender::_render().

bool _useDisplayList [protected]
 

Definition at line 36 of file GLRender.h.

Referenced by GLRender::_render(), GLPhotonMapRender::_render(), GLIrradCacheRender::_render(), GLEnergyRender::_render(), and GLBVRender::_render().


The documentation for this class was generated from the following files:
Generated on Tue Nov 21 15:11:43 2006 for gra by  doxygen 1.4.6