New answers tagged 3d-meshes
Find all triangles that intersect with the plane, split them into two polygons and triangulate the polygons. If you want a cap, enumerate all vertices generated from the slice and create a cap to fill the possibly concave planar hole. The devil is in the edge cases where you go exactly through vertices and edges, so make sure to robustly handle those.
If what you mean is that you need a nav-volume with fewer nodes because the oct-tree ends up leaving you with too many nodes, the main issue behind you problem is, of course, symmetry. Or better said, the fact octrees do not allow for asymmetric nodes. The result of that is empty space ends up being wastefully divided - either in the within a given level, ...
When I create rocks in modelling softwares, I start from an icosaeder, fhen stretch it around, scale it a nit, then I just pick random vertices and I pull them a bit out. I suppose, the same can be made with code
One approach could be to start with a sphere, perhaps pick some random parameters to stretch it varying amounts so some rocks are roughly round, while others are roughly egg shaped, then use 3D perlin or simplex noise and it's fractal variants (see the fbm methods in the link) to push vertices in towards the center, or pull them out, by some multiple of the ...
Ok so the problem was not winding. It seems that MickLH is right in that one cannot simply combine all the shared points in a mesh into one vertex. Only vertices used in triangles with similar normals can be combined otherwise one gets this strange effect.
Top 50 recent answers are included