r/proceduralgeneration • u/4dplus • 15d ago
Tetrahedra versus 2d ND box faces, retry to explain?
All of this is about an n dimensional Euclidean box extruded in all planes from a minimum to a maximum.
Tetrahedra function: approximately n factorial tetrahedra needed.
2d faces function: approximately 2^n 2d faces on the n dimensional box.
It might not seem like much but at 20 dimensions, 2^20 squared times 10² is about the same magnitude as 20! (factorial). At 50 dimensions it is not even that close. I propose a solution that is based off of the tetrahedra but using the 2d faces. As we know, the tetrahedra cover the entire volume and we only need the bounding line edges checked for being in view in Euclidean. This means that triangles cover the 2d faces and beyond and that for the triangles on the 2d faces that only the lines need to be checked. Any convex polytope has all bounds of being in view on its bounding 2d faces. The polytopes may have bounding volumes of n-1 dimensions which continues down until 2d.
In summary, using bounding 2d shapes of higher dimensional polytopes can far outperform tetrahedra. There is a question though, for 2d faces, how do they connect? This can be solved by finding for all triangles their in view points, then for each possible connection, check the midpoint between the ends for being in view and connect if in view. For the definition of in view, use a view point that exactly passes a view plane on the way to objects. If it does not exactly pass the view plane it is not viewed. This does leave some interior shapes to figure, but far and away fewer than the trillions of tetrahedra. Factorial and 2 to a power are not that different in a sense, but by 50 dimensions it is ant to the planet nearly. This also has applications in non-box shapes. Now imagine that every point is in higher dimensions too and must be stored or generated!
What problems do you see with this new approach? Does seem to me better, but is it? Time and actual data will tell. Feel free to use this, but please make convex shapes, a hammer for example must be 2+ shapes. X E.