occt: master 4a535d3f

Author Committer Branch Timestamp Parent
kgv bugmaster master 2016-02-20 10:10:41 master 9d55d9b0
Changeset 0026969: Visualization - support custom vertex attributes in GLSL program

Graphic3d_TypeOfData - added Graphic3d_TOD_FLOAT for passing single-float vertex attributes.
Graphic3d_TOA_CUSTOM - changed value to increase the range for custom vertex attributes locations (to fit into hardware limits).
Graphic3d_ShaderProgram::SetVertexAttributes() - introduced API for defining custom vertex attributes.

For compatibility with automated wrappers:
- Graphic3d_Buffer::Init() - added prototype taking NCollection_Array1<Graphic3d_Attribute> instead of C array
- Graphic3d_IndexBuffer::InitInt32() - added typed initialization method.
- Graphic3d_ShaderProgram::PushVariableVec3() and others - added typed methods to push uniform varibales.
mod - src/Graphic3d/FILES Diff File
mod - src/Graphic3d/Graphic3d_Buffer.hxx Diff File
mod - src/Graphic3d/Graphic3d_IndexBuffer.hxx Diff File
add - src/Graphic3d/Graphic3d_ShaderAttribute.cxx Diff File
add - src/Graphic3d/Graphic3d_ShaderAttribute.hxx Diff File
mod - src/Graphic3d/Graphic3d_ShaderProgram.cxx Diff File
mod - src/Graphic3d/Graphic3d_ShaderProgram.hxx Diff File
mod - src/OpenGl/OpenGl_PrimitiveArray.cxx Diff File
mod - src/OpenGl/OpenGl_ShaderProgram.cxx Diff File