Lecture 8: Mesh Representations and Geometry Processing (18)
RiddhiBagadiaa
Why is it useful for a mesh to be manifold? Additionally, don't all the properties that hold for a mesh that is manifold also apply to the non-manifold meshes? Based on my observation, it looks like these properties apply to all edges, faces, and vertices in general.
Eloyye
I think the professor mentioned that manifold meshes are able to do well-defined subdivisions. I found an interesting article discussing non-manifold mesh and its problems:
Those properties do not really apply to non-manifold. For example, in non-manifold meshes, an edge may connect three ot more faces. (A good visualization is the first non-manifld figure in the previous slide). Alos the euler's formula will not hold for non-manifold either. (You can take examples in sldes for reference)
jonathanlu31
I think one of the reasons why it's useful for the mesh to be manifold is that it simplifies the structures and operations used to work with them. For example, the halfedge data structure only describes manifold meshes.
"An interesting consequence of the halfedge representation is that any valid halfedge mesh must be manifold and orientable." - https://cs184.eecs.berkeley.edu/sp19/article/15/the-half-edge-data-structure
Sicheng-Pan
A 2D manifold may be closer to what we actually hope surfaces to look like in our mind, and locally we can treat it as a 2D plane, which is not always possible for arbitrary surfaces.
prannaypradeep999
Are there situations where we purposely choose a mesh to not be manifold, or are manifold meshes the standard because they follow these useful properties?
Staffjamesfong1
@prannaypradeep999 That's a good question. Non-manifold meshes are sometimes jokingly called "polygon soup" because they are just a bunch of faces that do not define an actual closed shape.
Such polygon soups are useful to save on rasterization time, since you can get away with fewer polygons if you no longer need your mesh to be manifold.
Why is it useful for a mesh to be manifold? Additionally, don't all the properties that hold for a mesh that is manifold also apply to the non-manifold meshes? Based on my observation, it looks like these properties apply to all edges, faces, and vertices in general.
I think the professor mentioned that manifold meshes are able to do well-defined subdivisions. I found an interesting article discussing non-manifold mesh and its problems:
https://sinestesia.co/blog/tutorials/non-manifold-meshes-and-how-to-fix-them/
Those properties do not really apply to non-manifold. For example, in non-manifold meshes, an edge may connect three ot more faces. (A good visualization is the first non-manifld figure in the previous slide). Alos the euler's formula will not hold for non-manifold either. (You can take examples in sldes for reference)
I think one of the reasons why it's useful for the mesh to be manifold is that it simplifies the structures and operations used to work with them. For example, the halfedge data structure only describes manifold meshes.
"An interesting consequence of the halfedge representation is that any valid halfedge mesh must be manifold and orientable." - https://cs184.eecs.berkeley.edu/sp19/article/15/the-half-edge-data-structure
A 2D manifold may be closer to what we actually hope surfaces to look like in our mind, and locally we can treat it as a 2D plane, which is not always possible for arbitrary surfaces.
Are there situations where we purposely choose a mesh to not be manifold, or are manifold meshes the standard because they follow these useful properties?
@prannaypradeep999 That's a good question. Non-manifold meshes are sometimes jokingly called "polygon soup" because they are just a bunch of faces that do not define an actual closed shape.
Such polygon soups are useful to save on rasterization time, since you can get away with fewer polygons if you no longer need your mesh to be manifold.
A very common use of polygon soup is for rendering leaves and grass in video games: https://developer.nvidia.com/gpugems/gpugems/part-i-natural-effects/chapter-7-rendering-countless-blades-waving-grass