version 3.3

VRS::VertexProgramNV Class Reference

Configure the standard rendering pipeline using nVidia vertex programs. More...

#include <vrs/opengl/vertexprogramnv.h>

Inheritance diagram for VRS::VertexProgramNV:

VRS::MonoAttribute VRS::Attribute VRS::RenderObj VRS::SharedObj VRS::Visitable

List of all members.

Public Member Functions

 VertexProgramNV (const char *program="", Callback *configure=NULL, Callback *cleanUp=NULL)
void setProgram (const char *program)
const char * getProgram () const
void setConfigureCallback (Callback *configure)
CallbackgetConfigureCallback () const
void setCleanUpCallback (Callback *cleanup)
CallbackgetCleanUpCallback () const
 Callbacks are also used to clean up vertex program parameter.
void setMatrixTracking (GLenum matrix, GLenum transform, unsigned int targetRegister)
Iterator< MatrixTracking * > * matrixTracking () const
 Accessing matrix trackings.
void setVertexParameter (double x, double y, double z, double w, unsigned int targetRegister)
Iterator< VertexParameter * > * vertexParameter () const
 Accessing uniform vertex parameter.
 VRS_TYPEINFO (VertexProgramNV, MonoAttribute)
 VRS_SERIALIZABLE (VertexProgramNV)

Friends

class VertexProgramPainterNV

Classes

struct  MatrixTracking
struct  VertexParameter


Detailed Description

Configure the standard rendering pipeline using nVidia vertex programs.

Constructor & Destructor Documentation

VRS::VertexProgramNV::VertexProgramNV ( const char *  program = "",
Callback configure = NULL,
Callback cleanUp = NULL 
)

Vertex programs are specified by a script. Furthermore, one can provide uniform vertex program parameter within a callback to configure vertex program evaluation. To clean up vertex program parameter one can either provide a second callback or let them all reset at ones if no callback is registered. Alternatively and perhaps more conveniently, uniform vertex parameter and matrix tracking can be set directly, too.


Member Function Documentation

void VRS::VertexProgramNV::setProgram ( const char *  program  ) 

const char* VRS::VertexProgramNV::getProgram (  )  const

The vertex program is given by a script.

void VRS::VertexProgramNV::setConfigureCallback ( Callback configure  ) 

Callback * VRS::VertexProgramNV::getConfigureCallback (  )  const [inline]

Callbacks provide vertex program parameter to configure vertex program evaluation.

void VRS::VertexProgramNV::setCleanUpCallback ( Callback cleanup  ) 

Callback * VRS::VertexProgramNV::getCleanUpCallback (  )  const [inline]

Callbacks are also used to clean up vertex program parameter.

void VRS::VertexProgramNV::setMatrixTracking ( GLenum  matrix,
GLenum  transform,
unsigned int  targetRegister 
)

Defines matrix tracking to be used with vertex programs. The dedicated register will be used for matrix tracking. Note: No check on correctness due to the register chosen will be performed.

Iterator<MatrixTracking*>* VRS::VertexProgramNV::matrixTracking (  )  const

Accessing matrix trackings.

void VRS::VertexProgramNV::setVertexParameter ( double  x,
double  y,
double  z,
double  w,
unsigned int  targetRegister 
)

Defines uniform vertex parameter to be used with vertex programs. Uniform variables will be shifted to the dedicated register. Note: No check on correctness due to the register chosen will be performed.

Iterator<VertexParameter*>* VRS::VertexProgramNV::vertexParameter (  )  const

Accessing uniform vertex parameter.

VRS::VertexProgramNV::VRS_TYPEINFO ( VertexProgramNV  ,
MonoAttribute   
)

VRS::VertexProgramNV::VRS_SERIALIZABLE ( VertexProgramNV   ) 


Friends And Related Function Documentation

friend class VertexProgramPainterNV [friend]


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

Generated on Wed May 23 06:00:23 2012 by Doxygen 1.5.6
© 2001-2010 Hasso-Plattner-Institut | Impressum | Contact