From f467fe3a9cc74dad809519deea790ed2c8e63069 Mon Sep 17 00:00:00 2001 From: Robert Osfield Date: Fri, 23 Oct 2009 12:24:22 +0000 Subject: [PATCH] Fixed bug in dispatching per primitive attributes --- src/osg/Geometry.cpp | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/osg/Geometry.cpp b/src/osg/Geometry.cpp index d7e02fca8..b195aa40d 100644 --- a/src/osg/Geometry.cpp +++ b/src/osg/Geometry.cpp @@ -993,8 +993,8 @@ void Geometry::drawImplementation(RenderInfo& renderInfo) const state.applyDisablingOfVertexAttributes(); - bool bindPerPrimtiveSetActive = arrayDispatchers.active(BIND_PER_PRIMITIVE_SET); - bool bindPerPrimtiveActive = arrayDispatchers.active(BIND_PER_PRIMITIVE); + bool bindPerPrimitiveSetActive = arrayDispatchers.active(BIND_PER_PRIMITIVE_SET); + bool bindPerPrimitiveActive = arrayDispatchers.active(BIND_PER_PRIMITIVE); unsigned int primitiveNum = 0; @@ -1006,7 +1006,7 @@ void Geometry::drawImplementation(RenderInfo& renderInfo) const { // dispatch any attributes that are bound per primitive - if (bindPerPrimtiveSetActive) arrayDispatchers.dispatch(BIND_PER_PRIMITIVE_SET, primitiveSetNum); + if (bindPerPrimitiveSetActive) arrayDispatchers.dispatch(BIND_PER_PRIMITIVE_SET, primitiveSetNum); const PrimitiveSet* primitiveset = _primitives[primitiveSetNum].get(); @@ -1045,9 +1045,9 @@ void Geometry::drawImplementation(RenderInfo& renderInfo) const vindexend(); ++primCount,++primItr) { - if (bindPerPrimtiveActive && (primCount%primLength)==0) + if (bindPerPrimitiveActive && (primCount%primLength)==0) { - arrayDispatchers.dispatch(BIND_PER_PRIMITIVE, ++primitiveNum); + arrayDispatchers.dispatch(BIND_PER_PRIMITIVE, primitiveNum++); } unsigned int vindex=*primItr; @@ -1147,9 +1147,9 @@ void Geometry::drawImplementation(RenderInfo& renderInfo) const primItr!=drawElements->end(); ++primCount,++primItr) { - if (bindPerPrimtiveActive && (primCount%primLength)==0) + if (bindPerPrimitiveActive && (primCount%primLength)==0) { - arrayDispatchers.dispatch(BIND_PER_PRIMITIVE, ++primitiveNum); + arrayDispatchers.dispatch(BIND_PER_PRIMITIVE, primitiveNum++); } unsigned int vindex=*primItr;