骨骼动画.X文件解析

本文介绍了骨骼动画的基础知识,通过分析.X文件的结构,讲解了骨骼、FrameTransformMatrix、Mesh、AnimationSet、AnimationKey等概念,以及如何描述骨骼运动和实现动画的关键帧插值。同时提及了蒙皮动画在解决骨骼过渡区皮肤撕裂问题中的作用。
摘要由CSDN通过智能技术生成
    最近看了骨骼动画相关的知识,结合.X文件结构来分享一下自己对骨骼动画的初步理解。
    什么是骨骼?骨骼好比人体内的骨头,骨头的运动带动着皮肤以及肉体的运动。同理,在D3D里面定义一个骨骼来带动周围一些顶点的运用。当然这个骨骼是抽象的,本身没有顶点来描述他的形态,它主要负责保存模型运动时的变化的信息,骨骼在.X文件里面用模板Frame来定义。
看看带骨骼的.X文件,一般的结构是:
Frame Frame1
{
 FrameTransformMatrix
 {
 }
 Mesh Mesh1
 {
 }
}
      FrameTransformMatrix 表示了骨骼相对模型中心的变化矩阵,假如我们人的中心位置是在躯体的中心(大概是胃的位置),手臂的骨骼离那个位置是有一些偏移的,这个矩阵就是用来计算这个偏移信息的。
Mesh1是表示附属在Frame1上的模型顶点信息。比如我们手臂的骨头动了,附在上面的皮肤和肉都要动,在3D里面这些是用三角形来表示的。因此Mesh1表示Frame1影响到得顶点的信息。
要想产生动画, 光有骨骼还不行,必须得有描述这些骨骼在某一时候如何运动的信息。在.X文件里面,这些运动信息用模板AnimationSet来描述。
AnimationSet walk
{
 Animation Animation1
 {
 {Frame1}
 AnimationKey
 {
 }
 }
 
 Animation Animation2
 {
 {Frame2}
 AnimationKey
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值