Problem: coplanar neighbor triangles

Splitting an already split mesh just by splitting all of the triangles that intersect the splitting plane and outputting a new set of triangles creates an bunch of new triangles that are adjacent to each other and are on the same plane.

On the left: the original cube. Center: cube split in two – this is still ok. On the right: splitting the bottom part of the cube again creates triangles that could be joined to their neighbors.

These triangles are essentially useless since in most cases they can be joined to their neighboring triangles. This optimization is not mandatory but the more your split your meshes the more messier it gets. The picture below illustrates one clear candidate for optimization.

Meshes containing very thin triangles caused by non-optimized splitting algorithm.

In the next articles I will explain a simple optimization technique which will hopefully reduce the number of triangles in you scene significantly.