Commit cac36415 authored by hybrid's avatar hybrid

Add early out when maximal array size is reached.

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@2860 dfc29bdd-3216-0410-991c-e03cc46cb475
parent 47ee7845
......@@ -45,9 +45,10 @@ void CMetaTriangleSelector::getTriangles(core::triangle3df* triangles, s32 array
{
s32 t = 0;
TriangleSelectors[i]->getTriangles(triangles + outWritten,
arraySize - outWritten, t,
transform);
arraySize - outWritten, t, transform);
outWritten += t;
if (outWritten==arraySize)
break;
}
outTriangleCount = outWritten;
......@@ -64,9 +65,10 @@ void CMetaTriangleSelector::getTriangles(core::triangle3df* triangles, s32 array
{
s32 t = 0;
TriangleSelectors[i]->getTriangles(triangles + outWritten,
arraySize - outWritten, t,
box, transform);
arraySize - outWritten, t, box, transform);
outWritten += t;
if (outWritten==arraySize)
break;
}
outTriangleCount = outWritten;
......@@ -83,9 +85,10 @@ void CMetaTriangleSelector::getTriangles(core::triangle3df* triangles, s32 array
{
s32 t = 0;
TriangleSelectors[i]->getTriangles(triangles + outWritten,
arraySize - outWritten, t,
line, transform);
arraySize - outWritten, t, line, transform);
outWritten += t;
if (outWritten==arraySize)
break;
}
outTriangleCount = outWritten;
......@@ -130,6 +133,7 @@ void CMetaTriangleSelector::removeAllTriangleSelectors()
TriangleSelectors.clear();
}
//! Return the scene node associated with a given triangle.
const ISceneNode* CMetaTriangleSelector::getSceneNodeForTriangle(u32 triangleIndex) const
{
......@@ -148,7 +152,6 @@ const ISceneNode* CMetaTriangleSelector::getSceneNodeForTriangle(u32 triangleInd
}
} // end namespace scene
} // end namespace irr
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment