“在动画电影里你看到的最接近穿衣服的事情就是英雄们披着披风了,但这仍然是很简单的设计,因为穿披风其实并不涉及很多角色和衣服之间的物理接触,“佐治亚理工研究员,论文的共同作者刘凯伦说道,“这是我们特别想要强调的问题,因为合成这样的场景需要包含两种完全不同物理系统的相互作用。”
3D动画《大圣归来》里,孙悟空和他拉风的披风。但披风和人物的身体接触很少,因而比较容易实现。
“衣服”该怎么“穿”?
穿衣服是人类社会日常活动中最常见的活动之一,但穿衣服并不简单。一个孩子得花上三四年才能熟练掌握穿衣服的技巧。在现实生活里,人们学习穿衣服的挑战主要在于,肢体需要自我协调,来处理柔软且易变性的物体(衣服)。综合起来,学习的难度不算低。
在计算机里,也不容易。
你也肯定在动画里看到过,当角色的手臂移动时,衣服的袖子和胳膊上许多又小、又奇怪的变化。衣服就像头发和水一样,是很难被动画实体化的。一般来说,衣服由物理原理来捕捉,这样布料就会像现实生活里那样反应和变化。而不同的是,角色人物的运动的和动作一般来说是由人体学模型来创建的。想让这样的两个系统相互反应比较有难度。
研究人员提供了一种解决方法。“最困难的部分在于如何计算出控制角色的算法。”刘说道,“虚拟角色需要根据衣服的反应作出肢体运动的正确决策,这样才能准确的到达衣服模型的开口位置。”
模型的虚拟角色正在穿裤子。别问我裤子中间的突起是怎么回事……(算法模型在特定动作下造成的材料形变,才不是里面有一个隐形的东西呢!)
这个解决方法是在“衣服”的模型上设计一个“开口”,当通过开口的时候,就让衣服和衣服包裹下的身体相互作用。研究人员使用了一系列限定的“主要动作”,比如说把手和脚穿过衣服的开口,然后结合当时衣服的状态,在一些动作比较关键的瞬间设置相应的算法路径。这些“主要动作”可以根据不同风格的衣物来组合成不一样的运动顺序。利用前馈和反馈控制机制,一个“穿衣控制器”被用来处理每个“主要动作”。
投稿邮箱:chuanbeiol@163.com 详情请访问川北在线:http://www.guangyuanol.cn/