游戏角色是怎么动起来的?3D游戏动画系统介绍

讲师简介:杨帆,腾讯互动娱乐北极光工作室群,客户端开发高级工程师。11年程序开发经验,参与了PC平台《天涯明月刀》的开发,完成了其动画、战斗及各种客户端玩法的实现,现任一款MMORPG手游客户端Gameplay负责人。

动画控制了整个游戏角色战斗的节奏,声音、特效、镜头等表现元素要和位移做好匹配,才能有好的表现效果;游戏中有大量的A类和B类剧情动画,动画数据占据了游戏中很大一部分的运行时内存和计算消耗……动画贯穿了游戏开发的方方面面,所以,学好动画的相关知识对游戏开发非常重要。

01骨骼蒙皮动画

3D动画主要有几种动画技术:第一种是刚体层级动画,它的特点是连接处有折断、不自然,是适合机器人的动画;第二种是顶点动画,即在每一个关键帧改变顶点的位置,它的特点是效果棒、数据爆炸、工作量大;第三种是骨骼蒙皮动画,它可以解决前两种动画技术的缺点。首先介绍一下骨骼蒙皮动画的几个概念。

骨架:在生物学中,骨架是由一系列关节以树状结构组织而成,关节就是下图中蓝色球的部分,而关节之间的连接,即图中红色部分,称为骨骼。而在游戏动画领域,骨骼就是指关节,而关节之间的连接是没有意义的。
 


姿势:姿势就是骨骼的形态,它描述了骨骼当前的位置。

蒙皮:在游戏里是看不到骨骼的,骨骼只是一个逻辑数据,玩家看到的是渲染的皮肤,也就是蒙皮之后的形象。蒙皮就是把皮肤绑定到骨骼上的过程,绑定好之后,皮肤才能随着骨骼的运动而运动。

动画数据:在动画内容制作时,动画师只会做关键帧的数据,其余的部分都是通过插值来完成,通过插值可以取得任意点的姿势。电影里的动画是以固定帧率来播放,并不需要插值,而游戏里面,它的帧率会随时发生改变,会随着当前一帧需要计算的内容变多而变少,所以中间状态都需要插值算法来完成。

那么,为什么骨骼蒙皮动画可以解决掉刚体层级动画和顶点动画的缺点?首先,游戏在启动时,需要去读取骨骼的层级数据、动画数据、带有蒙皮的网格数据;在运行时,会根据时间从动画数据中算出骨骼的位置,再根据当前骨骼的位置和蒙皮信息计算出网格顶点信息,最后根据网格信息和材质渲染出角色。

骨骼动画的顶点是受多根骨骼影响的,关节处的皮肤会由多根骨骼拉伸而变形,这个变形和拉伸是符合规律的,所以它不会产生折断。另外骨骼动画手机靓号拍卖数据产生的方式是改变骨骼的位置,而不是改变顶点的位置,我们一个人一般会有几十上百根骨骼,我们去改变这些骨骼的位置,比直接改变几千乃至几万个顶点的数据量要小非常多,这个对动画师来说,需要做的工作同样也会小很多,正是这些特点使得骨骼蒙皮动画,成为当前游戏开发中应用最多的一种动画技术。

02动画是如何流转的

丨动画融合

游戏的交互性,使得动画都是一个个的小片段,连接这些片段就需要动画的融合。通常融合有两种类型:一种是多个动画的融合;另一种就是一个动画到另一个动画的过渡,过渡的方式有两种,一种是平滑过渡,一种是冻结过渡。

平滑过渡是在动画A还没有结束的时候,就开始向动画B融合,而冻结过渡是在动画A结束之后才开始向动画B融合,游戏里面会根据表现的需要来选择哪种过渡方式。

丨动画状态机

游戏里有多种状态机的结构,正是这种复杂的结构,才能支撑游戏里流畅自然的动画效果和良好的交互响应。以外层状态机为例,它的结构分为Idle、Move和Fight。Idle,即待机,包括战斗待机、休闲待机等;Move,包括转向移动等;Fight,即攻击动画。这些外层的大状态,可以通过驱动信号来进行相互之间的过渡,来达到动画片段流转的目的。


丨动画逻辑管线

在游戏代码里面,有AI和动画的接口层,AI会通过游戏接口层向动画状态机发送各种信号,比如跑、跳、攻击,以及跑的速度、转向角度等等,这些参数告诉动画状态机,状态机会根据它自己的结构来进行跳转,或是融合到具体的动画片段,计算出当前帧的骨骼偏移,再通过这些骨骼信息,计算出蒙皮网格,最后再渲染。
 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
3Dmax角色动画源文件是指在3Dmax软件中制作的角色动画的原始文件,它包含了角色模型、骨架、作、材质等信息,可以用于后续的修改、编辑、渲染、导出等功能。这种文件格式通常包括.max、.mb或.blend等格式。 3Dmax软件是一款强大的3D建模、动画制作和渲染软件,拥有着功能强大,易学易用的特点,能够为用户提供精细的3D模型制作与动画设计的途径。3Dmax角色动画源文件主要由模型、骨骼、作、材质等要素构成,每一个要素的调整都会影响到整体效果。因此,在制作3D角色动画的过程中,需要以这些要素为基础进行制作。 3Dmax角色动画源文件的制作流程通常包括以下几个步骤: 一、角色模型建模。首先需要根据角色设定制作角色模型,并根据需求添加细节和纹理。 二、骨架绑定。根据角色的模型建立骨架,通过骨架绑定的方式将模型和骨骼联系起来。 三、作设计。在完成角色模型和骨架绑定后,需要在适当的时间点创建关键帧,并设计作过渡和角色表演的细节。 四、导出与渲染。完成动画后,可以将源文件导出到不同的格式,包括FBX、OBJ、3DS和DAE等,以便用于其他3D软件或者游戏引擎中使用。同时,使用3Dmax的渲染器可以将动画渲染成高质量的视频。 总之,3Dmax角色动画源文件是制作3D角色动画的重要组成部分,它可以为用户提供更多的动画制作选择和更丰富的制作思路。同时,对于游戏开发、影视等领域,3D角色动画也有着广泛的应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值