Don't allocate edge-vertex pairs if subdivision is zero
This commit is contained in:
		| @@ -160,19 +160,21 @@ static inline void smCount(u32& inVertexCapacity, u32& inIndexCount, | |||||||
| 	outVertexCapacity = 0; | 	outVertexCapacity = 0; | ||||||
| 	u32 outTriangleCount = 0; | 	u32 outTriangleCount = 0; | ||||||
|  |  | ||||||
|  | 	edgeVertexPairCapacity = 0; | ||||||
|  |  | ||||||
| 	for (u32 i = 0; i < subdivisions; ++i) | 	for (u32 i = 0; i < subdivisions; ++i) | ||||||
| 	{ | 	{ | ||||||
| 		outVertexCapacity = inVertexCapacity + 3 * inTriangleCount; | 		outVertexCapacity = inVertexCapacity + 3 * inTriangleCount; | ||||||
| 		outTriangleCount = 4 * inTriangleCount; | 		outTriangleCount = 4 * inTriangleCount; | ||||||
|  |  | ||||||
|  | 		edgeVertexPairCapacity = 3 * inTriangleCount; | ||||||
|  | 		 | ||||||
| 		inVertexCapacity = outVertexCapacity; | 		inVertexCapacity = outVertexCapacity; | ||||||
| 		inTriangleCount = outTriangleCount; | 		inTriangleCount = outTriangleCount; | ||||||
| 	} | 	} | ||||||
| 	 | 	 | ||||||
| 	inIndexCount = 3 * inTriangleCount; | 	inIndexCount = 3 * inTriangleCount; | ||||||
| 	outIndexCount = 3 * outTriangleCount; | 	outIndexCount = 3 * outTriangleCount; | ||||||
| 	 |  | ||||||
| 	edgeVertexPairCapacity = 3 * inTriangleCount; |  | ||||||
| } | } | ||||||
|  |  | ||||||
| void smCreateMesh(smMesh& output, u32 subdivisions) | void smCreateMesh(smMesh& output, u32 subdivisions) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user