PURE API 0.5
PR00F's Ultimate Rendering Engine full documentation
Loading...
Searching...
No Matches
PureRendererHWfixedPipe Class Referenceabstract

Incremental fixed-function hardware renderer path. More...

Detailed Description

Incremental fixed-function hardware renderer path.

Only deviations from the original PureIRenderer documentation are mentioned here. This renderer has multiple rendering paths, controlled by the render hints. The default render hints for this renderer is DefaultHintsForHWfixedPipeRenderer.

Definition at line 62 of file PureRendererHWfixedPipe.h.

#include <PureRendererHWfixedPipe.h>

+ Inheritance diagram for PureRendererHWfixedPipe:

Public Member Functions

CConsole & getConsole () const
 Returns access to console preset with logger module name as this class.
 
virtual void RenderObject (PureObject3D &object)=0
 Not implemented.
 
virtual TPureUInt getLastFrameObjectsVisible () const =0
 Returns number of objects allowed to be visible in last frame.
 
virtual TPureUInt getLastFrameOccluders () const =0
 Returns number of objects that were occluders in last frame.
 
virtual TPureUInt getLastFrameOccludeesNonOcclusionTested () const =0
 Returns number of occludees that had occlusion test disabled in last frame.
 
virtual TPureUInt getLastFrameOccludeesOcclusionTested () const =0
 Returns number of occludees that had occlusion test enabled (not necessarily ongoing) in last frame.
 
virtual TPureUInt getLastFrameOccludeesOcclusionTestedAndOccluded () const =0
 Returns number of occluded occludees in last frame (only counted if occlusion test was also enabled).
 
virtual TPureUInt getLastFrameOccludeesOcclusionTestedAndNonOccluded () const =0
 Returns number of non-occluded occludees in last frame (only counted if occlusion test was also enabled).
 
virtual TPureUInt getLastFrameOccludeesOcclusionTestedAndNonOccludedButNonVisibleAnyway () const =0
 Returns number of non-occluded occludees in last frame (only counted if occlusion test was also enabled but visibility was not).
 
virtual TPureUInt getLastFrameTransferredVertices () const =0
 Returns number of transferred vertices in last frame.
 
virtual TPureUInt getLastFrameTransferredTriangles () const =0
 Returns number of transferred triangles in last frame.
 
- Public Member Functions inherited from PureIRenderer
virtual TPureUInt initialize (TPureUInt width, TPureUInt height, TPURE_DISPLAY_MODES dmode, TPureUInt freq, TPureInt cdepth, TPureInt zdepth, TPureInt stencil, TPureInt samples, HWND window=NULL)=0
 Initializes the renderer.
 
virtual TPureBool shutdown ()=0
 This stops the renderer.
 
virtual TPureBool isInitialized () const =0
 Gets the state of the renderer.
 
virtual void SetManagers (PureObject3DManager *_objmgr, PureUiManager *_uimgr, PureCamera *_cam)=0
 This should be called after initialization, prior to first call to RenderScene().
 
virtual void RenderScene ()=0
 Renders the scene.
 
virtual const TPURE_RENDER_HINTgetRenderHints ()=0
 Get current render hints.
 
virtual void SetRenderHints (const TPURE_RENDER_HINT &hints)=0
 Set current render hints.
 
virtual void ResetStatistics ()=0
 Resets "Current Statistics".
 
virtual void WriteStats () const =0
 Writes "Current Statistics" and "Last Frame Statistics" to the console window.
 

Static Public Member Functions

static PureRendererHWfixedPipecreateAndGet (PGEcfgProfiles &cfgProfiles, PureWindow &_wnd, PureScreen &_scr, PureHwInfo &_hwinfo)
 Creates and gets the singleton implementation instance.
 
static const char * getLoggerModuleName ()
 Returns the logger module name of this class.
 

Static Public Attributes

static const TPURE_RENDER_HINT DefaultHints
 Default render hints for PureRendererHWfixedPipe.
 

Member Function Documentation

◆ createAndGet()

PureRendererHWfixedPipe & PureRendererHWfixedPipe::createAndGet ( PGEcfgProfiles & cfgProfiles,
PureWindow & _wnd,
PureScreen & _scr,
PureHwInfo & _hwinfo )
static

Creates and gets the singleton implementation instance.

Creates and gets the singleton instance.

Definition at line 1580 of file PureRendererHWfixedPipe.cpp.

◆ getConsole()

CConsole & PureRendererHWfixedPipe::getConsole ( ) const

Returns access to console preset with logger module name as this class.

Intentionally not virtual, so the getConsole() in derived class should hide this instead of overriding.

Returns
Console instance used by this class.

Definition at line 1597 of file PureRendererHWfixedPipe.cpp.

◆ getLastFrameObjectsVisible()

virtual TPureUInt PureRendererHWfixedPipe::getLastFrameObjectsVisible ( ) const
pure virtual

Returns number of objects allowed to be visible in last frame.

Implemented in PureRendererHWfixedPipeImpl.

◆ getLastFrameOccludeesNonOcclusionTested()

virtual TPureUInt PureRendererHWfixedPipe::getLastFrameOccludeesNonOcclusionTested ( ) const
pure virtual

Returns number of occludees that had occlusion test disabled in last frame.

Implemented in PureRendererHWfixedPipeImpl.

◆ getLastFrameOccludeesOcclusionTested()

virtual TPureUInt PureRendererHWfixedPipe::getLastFrameOccludeesOcclusionTested ( ) const
pure virtual

Returns number of occludees that had occlusion test enabled (not necessarily ongoing) in last frame.

Implemented in PureRendererHWfixedPipeImpl.

◆ getLastFrameOccludeesOcclusionTestedAndNonOccluded()

virtual TPureUInt PureRendererHWfixedPipe::getLastFrameOccludeesOcclusionTestedAndNonOccluded ( ) const
pure virtual

Returns number of non-occluded occludees in last frame (only counted if occlusion test was also enabled).

Implemented in PureRendererHWfixedPipeImpl.

◆ getLastFrameOccludeesOcclusionTestedAndNonOccludedButNonVisibleAnyway()

virtual TPureUInt PureRendererHWfixedPipe::getLastFrameOccludeesOcclusionTestedAndNonOccludedButNonVisibleAnyway ( ) const
pure virtual

Returns number of non-occluded occludees in last frame (only counted if occlusion test was also enabled but visibility was not).

Implemented in PureRendererHWfixedPipeImpl.

◆ getLastFrameOccludeesOcclusionTestedAndOccluded()

virtual TPureUInt PureRendererHWfixedPipe::getLastFrameOccludeesOcclusionTestedAndOccluded ( ) const
pure virtual

Returns number of occluded occludees in last frame (only counted if occlusion test was also enabled).

Implemented in PureRendererHWfixedPipeImpl.

◆ getLastFrameOccluders()

virtual TPureUInt PureRendererHWfixedPipe::getLastFrameOccluders ( ) const
pure virtual

Returns number of objects that were occluders in last frame.

Implemented in PureRendererHWfixedPipeImpl.

◆ getLastFrameTransferredTriangles()

virtual TPureUInt PureRendererHWfixedPipe::getLastFrameTransferredTriangles ( ) const
pure virtual

Returns number of transferred triangles in last frame.

Implemented in PureRendererHWfixedPipeImpl.

◆ getLastFrameTransferredVertices()

virtual TPureUInt PureRendererHWfixedPipe::getLastFrameTransferredVertices ( ) const
pure virtual

Returns number of transferred vertices in last frame.

Implemented in PureRendererHWfixedPipeImpl.

◆ getLoggerModuleName()

const char * PureRendererHWfixedPipe::getLoggerModuleName ( )
static

Returns the logger module name of this class.

Intentionally not virtual, so derived class should hide this instead of overriding. Not even private, so user can also access this from outside, for any reason like controlling log filtering per logger module name.

Returns
The logger module name of this class.

Definition at line 1610 of file PureRendererHWfixedPipe.cpp.

◆ RenderObject()

virtual void PureRendererHWfixedPipe::RenderObject ( PureObject3D & object)
pure virtual

Not implemented.

Use RenderScene() to render all objects.

Implements PureIRenderer.

Implemented in PureRendererHWfixedPipeImpl.

Member Data Documentation

◆ DefaultHints

const TPURE_RENDER_HINT PureRendererHWfixedPipe::DefaultHints
static
Initial value:
=
#define PURE_RH_OQ_DRAW_BOUNDING_BOXES_OFF
Not drawing bounding boxes for occlusion-tested objects.
#define PURE_RH_ORDERING_BY_DISTANCE_ON
Order the rendering of objects based on their distance to camera.
#define PURE_RH_OQ_METHOD_ASYNC
Async: occlusion queries can finish in consecutive frames.
#define PURE_RH_OQ_METHOD_BITS
Which occlusion query method to use.
#define PURE_RH_OQ_DRAW_IF_QUERY_PENDING_ON
Draw occlusion-tested objects with full detail if their query is still pending.
#define PURE_RH_RENDER_PATH_BITS
Which rendering path to use.
#define PURE_RH_RP_OCCLUSION_CULLED
Rendering with occlusion culling, using different Object3D containers.

Default render hints for PureRendererHWfixedPipe.

Definition at line 71 of file PureRendererHWfixedPipe.h.


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