How is a 3D morph implemented in computer graphics?

南楼画角 提交于 2020-01-25 09:16:27

问题


I want to generate an intermediate mesh from several meshes like cups, but I didn't find any available paper, open source code, or another resource to do so. So, how can I generate such a mesh?


回答1:


I am not aware of any open source library for this. But research literature is very broad and deep.

Basically the ingredients are:

  1. Mesh parameterization
  2. Remeshing

Basically you need to parameterize (embed) all the surfaces to a canonical domain such as a plane, sphere or some suitable (genus compatible) domain. You can parameterize them individually or using a "compatible parameterization" which can give you some advantages. Then you need to remesh all your meshes so that all of them have the same combinatorics (same number of vertices and same connectivity). That process is known as "compatible remeshing". In the remeshing process the cannonical domain is used for mapping points from one surface to the other and at the end of the compatible remeshing a common parameterization is shared by all the meshes. A point in mesh A have different 3d coordinates than a point in mesh B but as they have the same UV-coordinates in the cannonical domain then they are the image of each other and there exist some mapping function F that can send points from mesh A to mesh B.

Now, that is the basic approach. Actually you need more. Usually you need to define feature points on all input meshes so the mapping function F can send, for instance, a point on the nose of cat mesh to a point on the nose of a dog mesh. If you don't enforce feature point correspondence then the "average" of surfaces that you want is likely to be undesirable.

You can search the internet for the keywords "compatible parameterization", "cross parameterization", "inter-surface mapping" and "3d morphing".

The following PhD thesis is reviewing some of the literature relevant for your task:

https://tel.archives-ouvertes.fr/tel-00836048/file/ThA_se_MocanuBogdan.pdf



来源:https://stackoverflow.com/questions/54645430/how-is-a-3d-morph-implemented-in-computer-graphics

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!