VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Classes | Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes
makVrv::Dt3dSpheresCameraRenderer Class Reference

A class responsible for rendering spheres for a camera context.

This class is dynamic in that a set of staging buffers are handed to the class during draw and a single GPU buffer is filled with the staging buffers and then a draw call is made. The GPU buffer will resize to accommodate the staging buffers.

This class also creates a specific set of shaders used for drawing the spheres.

Classes

struct  FloatBuffer
 

Public Member Functions

virtual ~Dt3dSpheresCameraRenderer ()
 
 Dt3dSpheresCameraRenderer ()=delete
 
 Dt3dSpheresCameraRenderer (const Dt3dSpheresCameraRenderer &other)=delete
 
Dt3dSpheresCameraRendereroperator= (const Dt3dSpheresCameraRenderer &other)=delete
 
virtual void releaseResources ()
 
virtual void reloadShaders ()
 
void draw (const DtVector &cameraPos, const float *viewMat, const float *projMat, const std::vector< Dt3dSpheresStagingBuffer * > &sphereBuffers, float hdrOutputScale)
 

Protected Member Functions

 Dt3dSpheresCameraRenderer (DtDe &de)
 
virtual bool initializeShaders ()
 
virtual void initializeUnitSphere ()
 

Protected Attributes

DtDemyDe
 
DtBufferObjectmyUnitSphereBufferObject
 
size_t myUnitSpherePointCount
 
DtBufferObjectmyBufferObject
 
size_t mySphereCountMax
 
FloatBuffer myDynamicBuffer
 
bool myEnabled
 
DtGlProgrammyGlProgram
 
int myUnfmLocViewMatrix
 
int myUnfmLocProjectionMatrix
 
int myUnfmLocHdrOutputScale
 

Private Attributes

friend Dt3dSpheresCameraRendererCreator
 

Constructor & Destructor Documentation

virtual makVrv::Dt3dSpheresCameraRenderer::~Dt3dSpheresCameraRenderer ( )
virtual
makVrv::Dt3dSpheresCameraRenderer::Dt3dSpheresCameraRenderer ( )
delete

Default Constructor not implemented.

makVrv::Dt3dSpheresCameraRenderer::Dt3dSpheresCameraRenderer ( const Dt3dSpheresCameraRenderer other)
delete

Copy Constructor not implemented - Copy not allowed.

makVrv::Dt3dSpheresCameraRenderer::Dt3dSpheresCameraRenderer ( DtDe de)
protected

Protected CTOR Create using Dt3dSpheresCameraRendererCreator.

Member Function Documentation

Dt3dSpheresCameraRenderer& makVrv::Dt3dSpheresCameraRenderer::operator= ( const Dt3dSpheresCameraRenderer other)
delete

Assignment Operator not implemented - Assignment not allowed.

virtual void makVrv::Dt3dSpheresCameraRenderer::releaseResources ( )
virtual

Release any rendering resources.

virtual void makVrv::Dt3dSpheresCameraRenderer::reloadShaders ( )
virtual

Reloads any shaders.

void makVrv::Dt3dSpheresCameraRenderer::draw ( const DtVector &  cameraPos,
const float *  viewMat,
const float *  projMat,
const std::vector< Dt3dSpheresStagingBuffer * > &  sphereBuffers,
float  hdrOutputScale 
)

Draws all sphers.

virtual bool makVrv::Dt3dSpheresCameraRenderer::initializeShaders ( )
protectedvirtual

Loads and creates shaders for the program.

virtual void makVrv::Dt3dSpheresCameraRenderer::initializeUnitSphere ( )
protectedvirtual

Initializes the unit sphere that will be used for instance rendering.

Member Data Documentation

friend makVrv::Dt3dSpheresCameraRenderer::Dt3dSpheresCameraRendererCreator
private
DtDe& makVrv::Dt3dSpheresCameraRenderer::myDe
protected
DtBufferObject* makVrv::Dt3dSpheresCameraRenderer::myUnitSphereBufferObject
protected
size_t makVrv::Dt3dSpheresCameraRenderer::myUnitSpherePointCount
protected
DtBufferObject* makVrv::Dt3dSpheresCameraRenderer::myBufferObject
protected
size_t makVrv::Dt3dSpheresCameraRenderer::mySphereCountMax
protected
FloatBuffer makVrv::Dt3dSpheresCameraRenderer::myDynamicBuffer
protected
bool makVrv::Dt3dSpheresCameraRenderer::myEnabled
protected
DtGlProgram* makVrv::Dt3dSpheresCameraRenderer::myGlProgram
protected
int makVrv::Dt3dSpheresCameraRenderer::myUnfmLocViewMatrix
protected
int makVrv::Dt3dSpheresCameraRenderer::myUnfmLocProjectionMatrix
protected
int makVrv::Dt3dSpheresCameraRenderer::myUnfmLocHdrOutputScale
protected

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

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)