H3D API  2.4.1
Public Member Functions | Public Attributes | Protected Attributes | List of all members
H3D::GLVertexAttributeObject Class Referenceabstract

This abstract interface is inherited by all nodes that could be used as vertex attributes in a glsl shader. More...

#include <H3D/GLVertexAttributeObject.h>

Inheritance diagram for H3D::GLVertexAttributeObject:
Inheritance graph

Public Member Functions

 GLVertexAttributeObject (VERTEXATTRIBUTE::VERTEXATTRIBUTETYPE type)
 Constructor.
 
virtual ~GLVertexAttributeObject ()
 Destructor.
 
virtual void setAttributeData ()=0
 pure virtual function has to be implemented by inherited class to specify necessay data and format for this vertex attrib
 
virtual void renderVBO ()=0
 pure virtual function has to be implemented by inherited class to specify the actual render function
 
virtual void disableVBO ()=0
 pure virtual function has to be implemented by inherited class to specify the actual render disable function
 
virtual bool preRenderCheckFail ()
 pre-render check to dertermine if need to render this vertex attribute
 
void renderVertexBufferObject ()
 Perform the OpenGL commands to render all vertices as a vertex buffer object.
 
void disableVertexBufferObject ()
 Disable the vertex buffer object enabled in renderVertexBufferObject().
 
virtual void updateVertexBufferObject ()
 Perform the OpenGL commands to update vertex attribute data/format.
 

Public Attributes

H3DUniquePtr< SFBoolisDynamic
 Option to indicate whether this vertex attribute is dynamic or not Access type: inputOutput
Default value: false.
 

Protected Attributes

H3DUniquePtr< FieldvboFieldsUpToDate
 Internal field used to know if vertex buffer object can be created. More...
 

Detailed Description

This abstract interface is inherited by all nodes that could be used as vertex attributes in a glsl shader.

Example of such nodes are Color, Coordinate and Normal nodes.

Member Data Documentation

◆ vboFieldsUpToDate

H3DUniquePtr< Field > H3D::GLVertexAttributeObject::vboFieldsUpToDate
protected

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