本发明专利技术提供一种基于连接关系的控制物体变形方法,包括以下步骤:预处理,在进行变换前,在绑定位置求得控制物体与被控制物体各连通域最邻近的多边形,保存该多边形的绑定位置法向信息,同时记录控制物体上多边形与被控制物体的各连通域关联关系;变形动画,当控制物体进行变形时,获得所有与被控制物体各连通域关联的所有多边形的法向与位置信息,然后与各自的绑定法线与位置信息计算变换矩阵,按照连通域的关联信息将各多边形的变换矩阵代入各连通域的顶点上,求得最终的变形结果。本发明专利技术针对在进行模型附加变形操作时,传统变形工具易发生扭曲,以及参数控制繁琐的不足、计算速度低下等问题,进行优化。
A method of controlling object deformation based on connection relation
【技术实现步骤摘要】
一种基于连接关系的控制物体变形方法
本专利技术属于动画制作
,具体涉及一种基于连接关系的控制物体变形方法。
技术介绍
在3D动画制作过程中,模型之间经常有相互依赖关系,比如说吸附:衣服上的纽扣在衣服变形时应当跟随衣服一起运动,而不是人为的手工控制。这个时候变形器的使用就尤为重要。一般来说,吸附都是一个模型整体吸附到另一个模型整体上,然后根据一定的算法用被吸附物的动画去驱动吸附物体。但是存在着一个模型实际包含了很多个部件的情况,这种时候如果是刚性吸附,传统做法就需要手动去打散这个模型,让每个部件成为一个单独的模型,然后再把他们吸附到驱动模型上。针对模型附加变形效果,目前多数同类型应用场景中使用的变形工具都是基于控制物体顶点的引导线变形,类晶格顶点变形或者格林晶格变形。它们都属于控制物体顶点对被控制物体全部顶点的映射,然后通过控制物体的顶点变换操作整个被控制物体。变形前通过控制物体与被控制物体的姿态信息计算得到变形所需的权重值等关键数值,变形时通过控制物体的变形姿态与绑定姿态得到变形参数,再与变形关键数值一同作用于被控制物体的顶点,得到被控制物体的变形结果。但是引导线变形和类晶格顶点变形都存在参数控制繁琐以及被控制物体结构复杂时容易产生不必要扭曲的可能性,格林晶格变形虽然不需要各种设置,但是计算速度却十分低下。
技术实现思路
本专利技术的目的是提供一种基于连接关系的控制物体变形方法,针对在进行模型附加变形操作时,传统变形工具易发生扭曲,以及参数控制繁琐的不足、计算速度低下等问题,进行优化。本专利技术提供了如下的技术方案:一种基于连接关系的控制物体变形方法,包括以下步骤:预处理,在进行变换前,在绑定位置求得控制物体与被控制物体各连通域最邻近的多边形,保存该多边形的绑定位置法向信息,同时记录控制物体上多边形与被控制物体的各连通域关联关系;变形动画,当控制物体进行变形时,获得所有与被控制物体各连通域关联的所有多边形的法向与位置信息,然后与各自的绑定法线与位置信息计算变换矩阵,按照连通域的关联信息将各多边形的变换矩阵代入各连通域的顶点上,求得最终的变形结果。优选的,所述多边形为多边形组。优选的,被控制物体的连通域事先求得控制物体上的实际控制面,计算变形时只使用这些面来进行变换的计算,并且该工具求得结果为刚性附加变形效果。本专利技术的有益效果是:本专利技术将连接关系与锚点信息提前处理,再在被控制物体上进行的类刚体附加变形,避免了传统变形易发生扭曲和参数控制繁琐不足的问题;本专利技术不需要对整个控制物体的姿态进行变换矩阵的计算,仅仅使用控制物体的部分多边形变形信息,因为是特化的刚性附加变形,所以权重的计算也不需要,只需要获得各个被控制物体连通域关联的多边形的变换即可求得变形,所以在计算速度方面具有较大的优势。附图说明附图用来提供对本专利技术的进一步理解,并且构成说明书的一部分,与本专利技术的实施例一起用于解释本专利技术,并不构成对本专利技术的限制。在附图中:图1是本专利技术结构示意图;图2是安装示意图。具体实施方式如图1所示,一种基于连接关系的控制物体变形方法在预处理阶段:在进行变换前,在绑定位置求得控制物体与被控制物体各连通域最邻近的多边形,保存该多边形的绑定位置法向信息,同时记录控制物体上多边形与被控制物体的各连通域关联关系。具体的,连通域(connectivity)最邻近多边形求解:Fcnt表示连通域的所有面序列,Fctrl表示控制物体所有面序列。如图2所示,一种基于连接关系的控制物体变形方法在变形动画阶段:当控制物体进行变形时,获得所有与被控制物体各连通域关联的所有多边形的法向与位置信息,然后与各自的绑定法线与位置信息计算变换矩阵,按照连通域的关联信息将各多边形的变换矩阵代入各连通域的顶点上,求得最终的变形结果。具体的,变换矩阵求解:matBasis(nrm,tangent,binrm):=mat4x4((nrm),0,(tangent),0,(binrm),0,0,0,0,1)matTranslate(translate):=mat4x4(1,0,0,0,0,1,0,0,0,0,1,0,(translate),1)transform:=matBasis(nrm,tangent,binrm)*matTranslate(translate)*inverse(matBasis(bindNrm,bindTangent,bindBinrm)*matTranslate(bindTranslate))P′i=P′i*transform(i∈Vcnt),P′i=P′*transform(i∈Vcnt)表示单个连通域上所有顶点的序列。进一步的,可以使用多边形组代替单个多边形,不过需要引入权重的操作。传统的变形工具在处理这些变形效果时是柔性的,所以所有的控制物体的顶点或者面的变换信息都需要进行计算。如果以顶点变形驱动,那么M个顶点的控制物体与N个顶点的被控制物体参与变形,每次变形效果至少需要MxN的顶点计算量。如格林晶格变形等的计算量更高。而本专利技术只需要获得各个被控制物体连通域关联的多边形的变换即可求得变形,所以在计算速度方面有很大的优势。按照被控制物体的连通域事先求得控制物体上的实际控制面,计算变形时只使用这些面来进行变换的计算,并且该工具求得结果为刚性效果,对于比如批量的毛发解算时的跟随效果设置十分快捷。以上所述仅为本专利技术的优选实施例而已,并不用于限制本专利技术,尽管参照前述实施例对本专利技术进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本专利技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本专利技术的保护范围之内。本文档来自技高网...
【技术保护点】
1.一种基于连接关系的控制物体变形方法,其特征在于,包括以下步骤:/n预处理,在进行变换前,在绑定位置求得控制物体与被控制物体各连通域最邻近的多边形,保存该多边形的绑定位置法向信息,同时记录控制物体上多边形与被控制物体的各连通域关联关系;/n变形动画,当控制物体进行变形时,获得所有与被控制物体各连通域关联的所有多边形的法向与位置信息,然后与各自的绑定法线与位置信息计算变换矩阵,按照连通域的关联信息将各多边形的变换矩阵代入各连通域的顶点上,求得最终的变形结果。/n
【技术特征摘要】
1.一种基于连接关系的控制物体变形方法,其特征在于,包括以下步骤:
预处理,在进行变换前,在绑定位置求得控制物体与被控制物体各连通域最邻近的多边形,保存该多边形的绑定位置法向信息,同时记录控制物体上多边形与被控制物体的各连通域关联关系;
变形动画,当控制物体进行变形时,获得所有与被控制物体各连通域关联的所有多边形的法向与位置信息,然后与各自的绑定法线与位置信息计算变换矩阵,按照连通域的关联信...
【专利技术属性】
技术研发人员:赵锐,侯志迎,
申请(专利权)人:江苏原力动画制作股份有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。