unity怎么显示骨骼_骨骼动画的原理及在Unity中的使用

本文介绍了Unity中骨骼动画的工作原理,包括骨骼如何带动皮肤运动,详细阐述了骨骼空间转换、顶点混合计算等关键步骤。通过一个Mixamo上的Samba Dancing资源实例,展示了在Unity中导入和应用骨骼动画的流程,以及Skinned Mesh Renderer的重要属性。
摘要由CSDN通过智能技术生成

制作骨骼动画

我们看看这几步操作后,我们得到了那些数据:

1.每个皮肤顶点的初始世界坐标。

2.每个骨骼关节顶点的初始世界坐标。

3.每个顶点被骨骼顶点的影响信息。

4.骨骼如何移动。

骨骼动画原理

核心: 通过骨骼带动皮肤运动,也就是通过骨骼的移动动态计算mesh上的点的位置

过程:

1.将mesh上的点转换为骨骼空间上的点。

骨骼空间就是以关节为原点确定的空间,并不是一个实体。

2.通过缩放、旋转、平移将骨骼移动到新的位置。

3.根据骨骼的新位置计算mesh顶点新世界坐标(骨骼移动,但mesh顶点与骨骼的相对位置不变,所以产生了顶点随骨骼移动的感觉),若一个顶点被多个骨骼影响,则要进行顶点混合计算新世界坐标。

举例

初始位置(绑定姿势):

骨骼移动后的位置:

1.计算小臂上一点S在小臂空间中的位置。

这个就要根据初始的骨骼位置和mesh上顶点的位置来计算了,也就是常说的绑定姿势状态。

先说一下该例中每个坐标的意义:

(x1,y1,z1):左肩关节SL的世界坐标。

(x2,y2,z2):左肘关节在以左肩关节为原点的坐标系本地坐标。

(x3,y3,z3):附着于左小臂上的皮肤上的一点S的世界坐标。

这里为了简单,假设所有的关节都没有经过旋转和缩放

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Unity 是一款流行的游戏开发引擎,它提供了强大的骨骼显示系统。 在 Unity 显示骨骼,我们需要使用骨骼动画系统来实现。首先,我们需要创建一个骨骼数据结构,该结构通常由层级关系的骨骼节点组成。这些节点通常包括根节点、父节点和子节点等。我们还需要确定每个节点的局部坐标以及其相对于父节点的变换。 接下来,在 Unity ,我们可以使用骨骼动画系统来实现骨骼显示和动画。一般来说,我们可以导入包含骨骼动画数据的文件,例如 FBX 或者 Collada 格式。在导入后,Unity 会自动解析文件的节点和动画数据,并将其与模型进行绑定。 为了在场景显示骨骼,我们可以使用 Unity 的 SkinnedMeshRenderer 组件。这个组件可以将动态骨骼系列应用到一个静态网格上。我们可以将这个组件添加到我们的角色模型上并将模型与我们导入的骨骼数据进行绑定。 显示骨骼通常需要使用一些额外的工具,例如骨骼详细信息的调试器。在 Unity ,我们可以使用 Mecanim 去检查我们的骨骼动画系统。Mecanim 是 Unity 引擎内置的一套动画系统,它提供了一系列的编辑器工具和脚本接口,以方便我们查看、编辑和调试骨骼动画。 总之,Unity 提供了全面的骨骼显示和动画编辑工具,使得开发者能够方便地在游戏实现精美的骨骼动画效果。通过使用 Unity 的 SkinnedMeshRenderer 和 Mecanim 等组件和工具,我们可以轻松地显示和调试骨骼
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值