Work on mesh decimation.
This commit is contained in:
parent
336eba9680
commit
487962ad31
@ -1010,12 +1010,12 @@ namespace Ogre
|
|||||||
iterPatch->second.computeNormalsFromVolume(volIter);
|
iterPatch->second.computeNormalsFromVolume(volIter);
|
||||||
iterPatch->second.endDefinition();
|
iterPatch->second.endDefinition();
|
||||||
bool removedVertex = false;
|
bool removedVertex = false;
|
||||||
for(uint ct = 0; ct < 10; ct++)
|
//for(uint ct = 0; ct < 10; ct++)
|
||||||
//do
|
do
|
||||||
{
|
{
|
||||||
removedVertex = iterPatch->second.decimate3();
|
removedVertex = iterPatch->second.decimate3();
|
||||||
}
|
}
|
||||||
//while(removedVertex);
|
while(removedVertex);
|
||||||
}
|
}
|
||||||
|
|
||||||
//LogManager::getSingleton().logMessage("Finished Generating Mesh Data");
|
//LogManager::getSingleton().logMessage("Finished Generating Mesh Data");
|
||||||
|
@ -47,7 +47,7 @@ namespace Ogre
|
|||||||
|
|
||||||
void SurfacePatch::addTriangle(const SurfaceVertex& v0,const SurfaceVertex& v1,const SurfaceVertex& v2)
|
void SurfacePatch::addTriangle(const SurfaceVertex& v0,const SurfaceVertex& v1,const SurfaceVertex& v2)
|
||||||
{
|
{
|
||||||
if(v0.position.x > 8)
|
/*if(v0.position.x > 8)
|
||||||
return;
|
return;
|
||||||
if(v0.position.y > 8)
|
if(v0.position.y > 8)
|
||||||
return;
|
return;
|
||||||
@ -58,7 +58,7 @@ namespace Ogre
|
|||||||
if(v2.position.x > 8)
|
if(v2.position.x > 8)
|
||||||
return;
|
return;
|
||||||
if(v2.position.y > 8)
|
if(v2.position.y > 8)
|
||||||
return;
|
return;*/
|
||||||
|
|
||||||
|
|
||||||
//if(m_uTrianglesAdded > 1) return;
|
//if(m_uTrianglesAdded > 1) return;
|
||||||
@ -501,6 +501,10 @@ namespace Ogre
|
|||||||
(*secondEdgeIter)->triangle = iterTriangle;
|
(*secondEdgeIter)->triangle = iterTriangle;
|
||||||
newEdgeIter->triangle = iterTriangle;
|
newEdgeIter->triangle = iterTriangle;
|
||||||
|
|
||||||
|
lastAddedEdge->hasTriangle = true;
|
||||||
|
(*secondEdgeIter)->hasTriangle = true;
|
||||||
|
newEdgeIter->hasTriangle = true;
|
||||||
|
|
||||||
//++firstEdgeIter;
|
//++firstEdgeIter;
|
||||||
++secondEdgeIter;
|
++secondEdgeIter;
|
||||||
lastAddedEdge = otherNewEdgeIter;
|
lastAddedEdge = otherNewEdgeIter;
|
||||||
@ -524,6 +528,10 @@ namespace Ogre
|
|||||||
lastAddedEdge->triangle = iterTriangle;
|
lastAddedEdge->triangle = iterTriangle;
|
||||||
(*secondEdgeIter)->triangle = iterTriangle;
|
(*secondEdgeIter)->triangle = iterTriangle;
|
||||||
(*endEdgeIter)->triangle = iterTriangle;
|
(*endEdgeIter)->triangle = iterTriangle;
|
||||||
|
|
||||||
|
lastAddedEdge->hasTriangle = true;
|
||||||
|
(*secondEdgeIter)->hasTriangle = true;
|
||||||
|
(*endEdgeIter)->hasTriangle = true;
|
||||||
}
|
}
|
||||||
didDecimation = true;
|
didDecimation = true;
|
||||||
break;
|
break;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user