public

Inheritance Graph

graph BT
	VisibilitySubdivisionRenderer
	VisibilitySubdivisionRenderer --> State
	click VisibilitySubdivisionRenderer "classMinSG_1_1VisibilitySubdivision_1_1VisibilitySubdivisionRenderer"
	click State "classMinSG_1_1State"

Description

Node class to render the scene using pre-calculated visibility information.

Author: Benjamin Eikel

Date: 2009-02-20, extended for Master’s thesis 2009-09-26, added sky box rendering 2010-04-20

AccumRendering

   
   
void setAccumRendering(bool b)
   
bool getAccumRendering() const

TexturedDepthMeshes

   
   
void setUseTexturedDepthMeshes(bool status)
   
bool getUseTexturedDepthMeshes() const
   
float getPolygonOffsetFactor() const
   
void setPolygonOffsetFactor(float factor)
   
float getPolygonOffsetUnits() const
   
void setPolygonOffsetUnits(float units)

Public Types

   
   
typedef GeometryNode * object_ptr
   
typedef ValuatedRegionNode * cell_ptr

Public Functions

   
   
  VisibilitySubdivisionRenderer()
   
  VisibilitySubdivisionRenderer(const VisibilitySubdivisionRenderer & source)
   
  ~VisibilitySubdivisionRenderer()
   
void setViSu( cell_ptr root)
   
void setMaximumRuntime(uint32_t triangles)
   
uint32_t getMaximumRuntime() const
   
void setHold(bool doHold)
   
bool getHold() const
   
void setDebugOutput(bool debug)
   
bool getDebugOutput() const
   
VisibilitySubdivisionRenderer * clone() const
Create a duplicate of this State object.

Public Static Functions

   
   
bool renderCellSubset( FrameContext & context, cell_ptr cell, uint32_t budgetBegin, uint32_t budgetEnd)

Documentation

function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::setAccumRendering

public inline
     
     
void setAccumRendering( bool b )

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:152


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::getAccumRendering

public const inline
   
   
bool getAccumRendering( ) const

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:153


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::setUseTexturedDepthMeshes

public inline
     
     
void setUseTexturedDepthMeshes( bool status )

If the textured depth meshes usage is activated, the textured depth meshes stored inside a visibility cell will be used as background.

Parameters

debug
Enable or disable textured depth meshes rendering.

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:183


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::getUseTexturedDepthMeshes

public const inline
   
   
bool getUseTexturedDepthMeshes( ) const

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:186


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::getPolygonOffsetFactor

public const inline
   
   
float getPolygonOffsetFactor( ) const

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:190


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::setPolygonOffsetFactor

public inline
     
     
void setPolygonOffsetFactor( float factor )

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:194


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::getPolygonOffsetUnits

public const inline
   
   
float getPolygonOffsetUnits( ) const

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:198


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::setPolygonOffsetUnits

public inline
     
     
void setPolygonOffsetUnits( float units )

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:202


typedef
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::object_ptr

public
 
 
typedef GeometryNode * object_ptr

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:43


typedef
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::cell_ptr

public
 
 
typedef ValuatedRegionNode * cell_ptr

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:44


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::VisibilitySubdivisionRenderer

public
   
   
VisibilitySubdivisionRenderer( )

Standard constructor.

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:49


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::VisibilitySubdivisionRenderer

public
     
     
VisibilitySubdivisionRenderer( const VisibilitySubdivisionRenderer & source )

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:50


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::~VisibilitySubdivisionRenderer

public virtual
   
   
~VisibilitySubdivisionRenderer( )

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:51


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::setViSu

public
     
     
void setViSu( cell_ptr root )

Assign a new visibility subdivision.

Parameters

root
Root of a visibility subdivision.

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:58


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::setMaximumRuntime

public inline
     
     
void setMaximumRuntime( uint32_t triangles )

Set the maximum runtime for the rendering of one frame.

Parameters

triangles
Maximum runtime in number of triangles.

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:65


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::getMaximumRuntime

public const inline
   
   
uint32_t getMaximumRuntime( ) const

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:68


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::setHold

public inline
     
     
void setHold( bool doHold )

Set if the current data should be used for the next frames. This can be used to move around the scene inspecting the data used for an initial position.

Parameters

doHold
Iftrue, current data will not be updated.

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:79


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::getHold

public const inline
   
   
bool getHold( ) const

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:82


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::setDebugOutput

public inline
     
     
void setDebugOutput( bool debug )

If the debug output is activated, the objects from different triangle budgets are rendered in different colors instead of culling them.

Parameters

debug
Enable or disable debug output.

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:95


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::getDebugOutput

public const inline
   
   
bool getDebugOutput( ) const

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:98


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::clone

public const virtual
   
   
VisibilitySubdivisionRenderer * clone( ) const

Create a duplicate of this State object.

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:102


function
MinSG::VisibilitySubdivision::VisibilitySubdivisionRenderer::renderCellSubset

public static
     
     
bool renderCellSubset( FrameContext & context,
  cell_ptr cell,
  uint32_t budgetBegin,
  uint32_t budgetEnd
)    

Display a given subset of the potentially visible objects inside the given cell.

Parameters

context
Context that is used for rendering.
cell
Cell to retrieve the potentially visible set from.
budgetBegin
Number of triangles where the rendering of objects should start. If zero then the rendering starts at the beginning.
budgetEnd
Number of triangles where the rendering of objects should stop. If zero then the rendering is not stopped.

Returns

trueif the objects were display andfalseif an error occurred.

Defined in MinSG/Ext/VisibilitySubdivision/VisibilitySubdivisionRenderer.h:113