MCPcopy Create free account
hub / github.com/TorqueGameEngines/Torque3D / getNumPolys

Method getNumPolys

Engine/source/ts/tsMesh.cpp:1133–1163  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1131//-----------------------------------------------------
1132
1133S32 TSMesh::getNumPolys() const
1134{
1135 S32 count = 0;
1136 for ( S32 i = 0; i < mPrimitives.size(); i++ )
1137 {
1138 switch (mPrimitives[i].matIndex & TSDrawPrimitive::TypeMask)
1139 {
1140 case TSDrawPrimitive::Triangles:
1141 count += mPrimitives[i].numElements / 3;
1142 break;
1143
1144 case TSDrawPrimitive::Fan:
1145 count += mPrimitives[i].numElements - 2;
1146 break;
1147
1148 case TSDrawPrimitive::Strip:
1149 // Don't count degenerate triangles
1150 for ( S32 j = mPrimitives[i].start;
1151 j < mPrimitives[i].start+ mPrimitives[i].numElements-2;
1152 j++ )
1153 {
1154 if ((mIndices[j] != mIndices[j+1]) &&
1155 (mIndices[j] != mIndices[j+2]) &&
1156 (mIndices[j+1] != mIndices[j+2]))
1157 count++;
1158 }
1159 break;
1160 }
1161 }
1162 return count;
1163}
1164
1165//-----------------------------------------------------
1166

Callers 2

computePolyCountMethod · 0.45
initObjectsMethod · 0.45

Calls 1

sizeMethod · 0.45

Tested by

no test coverage detected