Work making SurfacePatchRenderable reformat the mesh as necessary...
This commit is contained in:
parent
de7554b9e3
commit
a3b5bd72b8
@ -45,6 +45,8 @@ namespace PolyVox
|
||||
const std::vector<SurfaceVertex>& getVertices(void) const;
|
||||
std::vector<SurfaceVertex>& getVertices(void); //FIXME - non const version should be removed.
|
||||
const std::vector<boost::uint32_t>& getIndices(void) const;
|
||||
|
||||
unsigned short getNoNonUniformTrianges(void);
|
||||
|
||||
public:
|
||||
std::vector<boost::uint32_t> m_vecTriangleIndices;
|
||||
|
@ -199,4 +199,21 @@ namespace PolyVox
|
||||
{
|
||||
return m_vecTriangleIndices;
|
||||
}
|
||||
|
||||
unsigned short IndexedSurfacePatch::getNoNonUniformTrianges(void)
|
||||
{
|
||||
unsigned short result = 0;
|
||||
for(int i = 0; i < m_vecTriangleIndices.size() - 2; i += 3)
|
||||
{
|
||||
if((m_vecVertices[m_vecTriangleIndices[i]].getMaterial() == m_vecVertices[m_vecTriangleIndices[i+1]].getMaterial())
|
||||
&& (m_vecVertices[m_vecTriangleIndices[i]].getMaterial() == m_vecVertices[m_vecTriangleIndices[i+2]].getMaterial()))
|
||||
{
|
||||
}
|
||||
else
|
||||
{
|
||||
result++;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
@ -29,7 +29,7 @@ namespace PolyVox
|
||||
|
||||
generateRoughMeshDataForRegion(volume.getVolumeData(), *iterChangedRegions, regionGeometry.m_patchSingleMaterial, regionGeometry.m_patchMultiMaterial);
|
||||
|
||||
genMultiFromSingle(regionGeometry.m_patchSingleMaterial, regionGeometry.m_patchMultiMaterial);
|
||||
//genMultiFromSingle(regionGeometry.m_patchSingleMaterial, regionGeometry.m_patchMultiMaterial);
|
||||
|
||||
regionGeometry.m_bContainsSingleMaterialPatch = regionGeometry.m_patchSingleMaterial->getVertices().size() > 0;
|
||||
regionGeometry.m_bContainsMultiMaterialPatch = regionGeometry.m_patchMultiMaterial->getVertices().size() > 0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user