H3D API
2.4.1
|
This abstract interface is inherited by all nodes that could be used as vertex attributes in a glsl shader. More...
#include <H3D/GLVertexAttributeObject.h>
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< SFBool > | isDynamic |
Option to indicate whether this vertex attribute is dynamic or not Access type: inputOutput Default value: false. | |
Protected Attributes | |
H3DUniquePtr< Field > | vboFieldsUpToDate |
Internal field used to know if vertex buffer object can be created. More... | |
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.
|
protected |
Internal field used to know if vertex buffer object can be created.
C++ only field
Referenced by H3D::Color::Color(), H3D::ColorRGBA::ColorRGBA(), H3D::Coordinate::Coordinate(), H3D::CoordinateDouble::CoordinateDouble(), H3D::FloatVertexAttribute::FloatVertexAttribute(), GLVertexAttributeObject(), H3D::Matrix3VertexAttribute::Matrix3VertexAttribute(), H3D::Matrix4VertexAttribute::Matrix4VertexAttribute(), H3D::Normal::Normal(), H3D::TextureCoordinate::TextureCoordinate(), H3D::TextureCoordinate3D::TextureCoordinate3D(), H3D::TextureCoordinate4D::TextureCoordinate4D(), and updateVertexBufferObject().