diff --git a/gen/SkinPartition.h b/gen/SkinPartition.h
index 35384f1fd3a303e98d2d002f715732678c233e63..da1ef775ffa8e6d7fb64982a8529b0a14fc57b79 100644
--- a/gen/SkinPartition.h
+++ b/gen/SkinPartition.h
@@ -26,10 +26,6 @@ struct NIFLIB_API SkinPartition {
 	 * Number of triangles in this submesh.
 	 */
 	mutable ushort numTriangles;
-	/*!
-	 * Number of triangles in this submesh.
-	 */
-	ushort CalcNumTriangles() const;
 	/*!
 	 * Number of bones influencing this submesh.
 	 */
diff --git a/gen/obj_impl.cpp b/gen/obj_impl.cpp
index 0131e7f8638ec798e9451f1057d0716033616e84..93fc8436f9cdd09eba8e21b97714c13c80298ec4 100644
--- a/gen/obj_impl.cpp
+++ b/gen/obj_impl.cpp
@@ -10789,7 +10789,7 @@ void NiSkinPartition::InternalWrite( ostream& out, map<NiObjectRef,uint> link_ma
 		skinPartitionBlocks[i1].numWeightsPerVertex = ushort((skinPartitionBlocks[i1].vertexWeights.size() > 0) ? skinPartitionBlocks[i1].vertexWeights[0].size() : 0);
 		skinPartitionBlocks[i1].numStrips = ushort(skinPartitionBlocks[i1].stripLengths.size());
 		skinPartitionBlocks[i1].numBones = ushort(skinPartitionBlocks[i1].bones.size());
-		skinPartitionBlocks[i1].numTriangles = skinPartitionBlocks[i1].CalcNumTriangles();
+		skinPartitionBlocks[i1].numTriangles = ushort(skinPartitionBlocks[i1].triangles.size());
 		skinPartitionBlocks[i1].numVertices = ushort(skinPartitionBlocks[i1].vertexMap.size());
 		NifStream( skinPartitionBlocks[i1].numVertices, out, version );
 		NifStream( skinPartitionBlocks[i1].numTriangles, out, version );
@@ -10880,7 +10880,7 @@ std::string NiSkinPartition::InternalAsString( bool verbose ) const {
 		skinPartitionBlocks[i1].numWeightsPerVertex = ushort((skinPartitionBlocks[i1].vertexWeights.size() > 0) ? skinPartitionBlocks[i1].vertexWeights[0].size() : 0);
 		skinPartitionBlocks[i1].numStrips = ushort(skinPartitionBlocks[i1].stripLengths.size());
 		skinPartitionBlocks[i1].numBones = ushort(skinPartitionBlocks[i1].bones.size());
-		skinPartitionBlocks[i1].numTriangles = skinPartitionBlocks[i1].CalcNumTriangles();
+		skinPartitionBlocks[i1].numTriangles = ushort(skinPartitionBlocks[i1].triangles.size());
 		skinPartitionBlocks[i1].numVertices = ushort(skinPartitionBlocks[i1].vertexMap.size());
 		out << "    Num Vertices:  " << skinPartitionBlocks[i1].numVertices << endl;
 		out << "    Num Triangles:  " << skinPartitionBlocks[i1].numTriangles << endl;