收藏 分销(赏)

基于网格迁移的恐龙骨骼和动画仿真方法研究.pdf

上传人:自信****多点 文档编号:638884 上传时间:2024-01-22 格式:PDF 页数:4 大小:2.42MB
下载 相关 举报
基于网格迁移的恐龙骨骼和动画仿真方法研究.pdf_第1页
第1页 / 共4页
基于网格迁移的恐龙骨骼和动画仿真方法研究.pdf_第2页
第2页 / 共4页
亲,该文档总共4页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、312第4 0 卷第6 期2023年6 月真机仿算文章编号:10 0 6-934 8(2 0 2 3)0 6-0 312-0 4基于网格迁移的恐龙骨骼和动画仿真方法研究高燕,马韦伟1,2(1.河源职业技术学院,广东河源517 0 0 0;2.云南师范大学教育学部,云南昆明6 50 50 0)摘要:针对恐龙不常见的虚拟角色模型和动画难以制作的问题,提出了一种基于模型网格迁移的方法。方法根据已知的虚拟动物角色以及制作好的关键顿动画,抽取出多组形变网格模型,并基于参考模型和形变模型来生成恐龙角色对应的形变动画。上述方法只需要参考模型和恐龙模型在形态上有一定的相似之处,并且手工添加少量标记点来辅助进行

2、仿射矩阵的运算,计算得到的结果平滑、合理,且不需要再制作恐龙模型的骨骼和蒙皮数据。因此,上述方法可以用于优化恐龙等不常见角色模型的制作流程,也可以在相关影视、动画和游戏种应用,降低美术制作成本,提升工作效率。关键词:虚拟角色;恐龙仿真;仿射变换;网格变形中图分类号:TP391.9文献标识码:BResearch on Dinosaur Skeleton and Animation SimulationMethod Based on Mesh MigrationGAO Yan,MA Wei-wei?;2,1(1.Heyuan Polytechnic,Heyuan Guangdong 517000,

3、China;2.Faculty of Education,Yunnan Normal University,Kunming Yunnan 650500,China)ABSTRACT:We propose a method based on mesh migration to solve the problem of creating uncommon virtualcharacter models and animations,such as dinosaurs.The method extracts multiple sets of morphological meshes basedon

4、known virtual animal characters and keyframe animations and generates morphological animations corresponding todinosaur characters based on this reference model and morphological models.This method only requires a certain mor-phological similarity between the reference model and the dinosaur model,a

5、nd a small number of marker points to as-sist the computations of the affine matrix.The results are smooth and reasonable,and there is no need to make skeletaland skin data of the dinosaur model.The method can be used to optimize the production process of virtual characters,and can also be used in r

6、elated applications to reduce the cost of art production and improve work efficiency.KEYWORDS:Virtual character;Dinosaur simulation;Affine transformation;Mesh deformation1引言在各种影视作品和电子游戏等应用当中,人体和动物角色模型的制作,以及基于骨骼进行角色的动画驱动,是非常必要且常见的需求。生动的人物和动物造型可以让三维场景增色不少,而人物和动物角色的动画运动,尤其是交互式的动画仿真效果,则能够将三维内容提升到一个全新的高度

7、。传统的角色模型制作和动画仿真,需要美术人员的大量基金项目:国家自然科学基金资助项目(2 14 7 6 0 2 0)收稿日期:2 0 2 2-0 3-2 5修回日期:2 0 2 2-0 3-30介人。这其中包括角色模型顶点和三角面的制作,角色骨骼的摆放和蒙皮操作(即绑定模型顶点到对应的骨骼之上),角色骨骼的动画关键顿制作,以及角色模型的实时动画驱动和染效果。对于常见的双足人类角色,以及四足动物角色(例如猫、狗、牛等)而言,美术人员可以凭借自身经验,将以往作品作为参考,迅速地构建角色模型和动画,如图1所示。但是对于一些特殊的生物体,例如各式各样的恐龙角色而言,制作过程中就会存在比较大的变数;而这

8、些问题主要源自于制作人员并没有真的见过恐龙的外形和运动方式,导致无从下手,制作的骨骼关节位置和结构不合理,关键顿动画生硬,并且不知道如何调节等等。科学研究人员可以基于现有的生物体来推测恐龙的运313图1常见双足和四足动物角色及其骨骼动方式,但是并不能要求美术人员同样具有这样的能力。如果可以通过某种方法,将恐龙角色与已经存在的某些生物体模型进行匹配,将后者的常见运动方式映射到恐龙身上,从而快速产生平滑自然的动画效果,那么将对相关应用的开发和角色制作流程产生非常大的帮助。本文尝试通过网格迁移的方法,将已经制作完成的角色动画快速地移植到可能具有类似动作行为的恐龙模型身上,从而批量式地生成恐龙角色动画

9、;并且省去了为恐龙角色制作骨骼关节的环节,有效提升了工作效率,并且可以与传统的美术环节无缝衔接。2恐龙角色和参考角色的制作2.1参考角色的意义假设有原始的三角网格模型S,它可以是任何常见的动物或者人物模型。那么通过模型顶点变形或者动画关键顿的生成,可以得到一系列的形变模型S。此时认为,S和多个S之间一定存在某种确定的形变关系,可以通过数学模型复现对于目标的三角网格模型T,假设它是已经制作好的恐龙角色模型,并且不需要后续的骨骼和蒙皮步骤。如果它和原始模型S的形态上基本一致,那么同样可以认为,T和它的多个形变模型T之间也存在着确定的形变关系,并且可以通过S和S之间的形变数学模型迁移实现,如图2 所

10、示。STT/图2已知原始模型S,T和形变模型S,生成形变模型T的迁移过程原始模型S和T之间不需要有相同的顶点数,也不需要相同的三角面索引(即顶点的连接方式)。因此,可以针对任意恐龙网格模型,选择一个与它相近的动物模型并通过角色骨骼和动画产生多个形变模型,进而通过网格迁移的方式产生对应的恐龙形变模型。形变模型的顶点变化过程,也就是恐龙角色的动画仿真过程。2.2参考角色的骨骼制作可以使用Maya等常见建模软件来制作参考网格模型,并设置它的骨骼信息。人体和四足动物的骨骼关节有一定的相似之处,都有头部,颈部,脊柱,双手和双脚,且通常都具有肩关节、肘关节和膝关节的设置(手指和脚趾数量这里不做考虑)。区别

11、在于人体采取站姿,双手垂立身旁;而四足动物的脊柱是平行于地面的,“双手”和双脚均站立在地面上,如图3所示。图3常见的四足动物参考角色骨骼分布四足动物还可能有一些特定的骨骼关节,例如尾巴部分,或者例如大象等动物的鼻子和耳朵。是否要对这些部分进行骨骼构建,通常取决于实际应用中的需求。2.3参考角色的模型和标记点导出将参考模型和恐龙模型均输出为AutodeskFBX格式。该格式采用公开的数据标准,可以直接用于Unity,U n r e a l 等常见的三维谊染引擎FBX格式内部通过FbxMesh类来管理每个模型网格体。获取模型顶点和三角面信息的基本代码如下:FbxMesh*m=.FbxVector4

12、*v=m-GetControlPoints();int num=m-GetPolygonCount();for(inti=0,n=0;iGetPolygonVertex(i,n+0),vl=m-GetPolygonVertex(i,n+1),v2=m-GetPolygonVertex(i,n+2);/三角形=(verticesvO,/verticesv1 ,vertices v2 n+=3;314为了正确执行网格迁移算法,还需要在建模软件中建立一些标记点,用来标记角色模型表面的一些关键位置。标记点可以直接用系统默认的Cylinder或者Node来标记,并随FBX格式导出;也可以在后续的染引擎U

13、nity或者Unreal中手动编辑制作,并用于算法计算过程当中。3恐龙角色的自动网格迁移3.1网格形变迁移算法的推导源模型S的变形S可以表示为为源模型网格中的每个三角形的仿射变换集合。仿射变换矩阵中的非平移部分包括了由三角形变形引起的方向、比例和倾斜度的变化。但是,三角形的三个顶点1,u2和u3并不能完全确定一个完整的仿射变换结果,因为它们不能确定垂直于三角形的空间是如何变形的。因此,需要引人第四个顶点4,它垂直于三角形存在,其计算公式为(v2-Ui)(u3-Vi)V2-VX(U3-U)因此,源模型S中每个三角形的4 个顶点,变换到形变模型S之后,新的4 个顶点可以表达为原顶点乘以一个33的仿

14、射矩阵Q,再加上一个位移d的结果,即ur=Qu,+d,iE1,4为了计算仿射矩阵Q,需要消去位移值d,那么有如下公式d=u1-Qu1U,-u1=Q(v;-Ui)(u-ur)(v,-vr)-1=VV-1由此可以计算得到放射矩阵Q的值,进而得到源模型S与形变模型S之间的变换数学模型。3.2基于已有角色的模型网格迁移需要建立两组源模型T与S之间的映射关系。进而由于S和S之间的变换关系已知,那么就可以得到T与T之间的变换关系。但是,因为S和T的顶点数和三角面数都是不一样的,不能直接采取一一对应的方式来计算映射关系。此时需要手动建立多个标记点,用来标识用户模型T和参考模型S之间的对应关系。标记点的数量不

15、限,但是每个参考点在两个模型中必须表达同样的物理位置(例如头部,手部,脚步),并且总数量必须相等,如图4 所示。遍历每个标记点,搜索质心非常接近的成对的网格S三角形和网格T三角形,进而计算三角形对应关系。通过迭代最近点的算法,即可得到两个三角形之间的仿射变换矩阵Q和位移d,并通过上一节的方法进行计算。此外,根据共享顶点的原理,模型网格发生形变后,相邻的两个三角网格应当满足如下关系Tu;+d,=T,u;+dk其中j,k表示模型网格中两个相邻的三角形,;表示它们共享的顶点。图4在源模型S和T上设置同样数量的标记点3.3基于已有角色的快速动画数据迁移根据之前的算法,可以通过用户输人多个标记点的方式,

16、计算参考模型S与源恐龙模型T之间的变换关系。而通过类似的方法也可以计算形变模型S和S之间的变换关系。并且因为S和S的顶点和三角面是完全一致的,因此不需要添加新的参考点。依据上述两次运算的结果,可以得到目标形变模型T与T之间的关系,进而通过原始的静止恐龙模型T,得到新的运动恐龙模型T。这一过程可以通过计算机程序实现自动运算,即,对于已经制作完成的参考模型S和它的关键帧动画A,可以通过骨骼和蒙皮计算,输出它的每个关键顿对应的形变模型SAi。之后对于恐龙模型T,虽然它没有骨骼和蒙皮信息,但是依然可以通过网格迁移的方式,得到每个参考形变模型SA.对应的恐龙形变模型TAi。对于一组关键顿动画A,可以得到

17、对应的关键顿动画序列A,=TA1,TA2,,T A n l。注意新的动画序列并不是角色骨骼动画,而是模型顶点变形动画。相比于前者来说,顶点变形动画的实时执行效率更高,动画仿真效果更为精细,但是需要更多的存储空间,并且无法逆运算转换到骨骼动画。4实实例研究使用Unity引擎作为基础测试平台,使用C#实现网格迁移的算法。原始的低多边形恐龙模型(无骨骼或者动画数据)如图5所示。图5原始的恐龙模型315用于进行网格迁移算法应用的参考模型是一种常见的四足动物,其行走的骨骼动画已经制作完成,可以直接播放,并按照关键顿输出多组形变网格模型,如图6 所示图6参考模型和形变模型通过网格迁移算法,将参考模型的动画

18、效果移植到恐龙角色上。为此,首先在Unity引擎中添加30-4 0 个标记点,主要用来标记两个原始模型中相似的位置,例如头顶,嘴部,四足位置,肩部和部,尾部等等。之后,通过网格迁移算法进行仿射矩阵计算和形变模型运算。具体的模型和计算参数如下表1所示。表1网格迁移模型参数类型顶点数三角面数算法时间恐龙T7506631.2s参考S600481一通过验证可知,该算法过程消耗的CPU计算时间较短,且能够产生较好的形变效果,基本满足了恐龙模型和动画仿真系统的需求,如图7 所示。图7恐龙角色动画形变结果5结语研究了一种网格迁移的算法,对于没有进行骨骼蒙皮操作的原始模型T,可以通过另一个已经制作完毕的参考模

19、型S,以及多组由关键顿动画生成的形变模型S,生成新的形变模型T。该方法不需要原始模型和参考模型的顶点数或者三角面数相等,但是需要在两者表面上添加多个标记点,对应于两组模型上物理意义相同的位置标注。标记点可以在建模软件中设置,也可以实时引擎中直接添加。但是标记点数量必须相等,且ID在两个模型上是一一对应的。该方法可以用于处理复杂的恐龙三维模型。通过已经制作完毕的参考模型和动画数据,经过简单的标记点添加操作,即可产生恐龙模型的多组变形动画,并且不需要制作骨骼和设置蒙皮效果。这大大降低了美术人员的工作量,并且得到的动画仿真数据结果平滑可靠,符合大多数人对一般动物的运动认知,不会产生生硬感。该方法目前

20、依然有一些需要优化的地方:首先,手动添加标记点的操作目前是无法避免的,这导致整个恐龙动画仿真的流程无法实现完全自动化,仍然需要有美术和三维基础的人员介人;其次,标记点的数量和准确性对于形变结果的影响较大,如果标记点数量过少,则极易出现形变结果的异常。并且顶点变形效果如果存在不平滑和不连续的情况,其表现结果比骨骼动画要更为明显,并且很难通过手动的方式进行后续修补,而是只能通过调整标记点来重新输出。如何改善和解决这些问题,也是后续研究的重点方向。参考文献:1汪山人.仿生恐龙机器人的步态仿真及系统实现D.四川:电子科技大学,2 0 18.2Allen,Curless,Popovic.The spac

21、e of human body shapes:Recon-struction and parameterzation from range scansJ.ACM Transac-tions on Graphics 2003,22(3):587-594.3杨琳。数字创意下自贡恐龙动漫IP的产业开发研究J.出版广角,2 0 2 1,(16):8 6-8 8.4杨军,张瑶.计算Laplace网格变形的三维模型配准J.哈尔滨工程大学学报,2 0 18,39(10):17 0 2-17 0 8.5董洪伟.网格变形综述J.中国图象图形学报,2 0 11,16(12:2095-2104.作者简介高燕(198 1.12-),女(汉族),浙江长兴人,硕士,副教授、高级工程师,主要研究领域为:教育信息化,数字媒体技术、虚拟现实技术开发和教学资源建设。马韦伟(198 0.2-),男(汉族),湖北沙市人,博士研究生,副教授、高级工程师,主要研究领域:教育信息化、教育管理与评价,虚拟现实教学资源建设。

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 论文指导/设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服