文章目录

  • 前言
  • 一、Mask和IK的实现
  • 初步实现
  • 第二种尝试:在动画界面调Mask
  • 二、询问老师
  • 1.解决方法以及询问老师之后的知识点。
  • 2.新的想法
  • 总结



前言

之前使用JohnLenmon官方教程的人物,想做一个边走边射击的Mask动画:
但是,我按照Unity官方的文档和各种学习视频一s不落下地学习,仍然无法对JohnLenmon使用Mask。


下面会根据以上的问题进行解析

一、Mask和IK的实现

初步实现

为了使Lenmon同时进行攻击动作和移动,应该用Avatar mask 将射击动画身体下层给遮掩住

unity如何打开动画 unity怎么k动画_Mask


unity如何打开动画 unity怎么k动画_复用_02

unity如何打开动画 unity怎么k动画_unity如何打开动画_03

可以看到我已经把人物的下半身全部给点击成红色的了。

但是在运行的时候,我把权重调到最高

unity如何打开动画 unity怎么k动画_unity_04


运行的时候依旧停止播放其他动作,去执行全身动画的攻击动作。

我寻思是不是Animation Type的问题

unity如何打开动画 unity怎么k动画_游戏开发_05


后面选择Humanoid,依旧不行(无法选择原先的骨骼,不然会重新成为Generic 的类型)。

第二种尝试:在动画界面调Mask

unity如何打开动画 unity怎么k动画_复用_06

结果依旧不行。

同样,IK动画按照网上的教程进行操作依旧不行。不知道是不是模型动画的缘故。

二、询问老师

1.解决方法以及询问老师之后的知识点。

老师:一般来说IK动画和Mask遮罩动画是仅仅支持Animation Type为Humanoid的人物模型

unity如何打开动画 unity怎么k动画_复用_07


类似于图中的Generic类型,一般拿来说是不能进行IK动画和Mask动画遮罩。Ps:一般来说,设置Generic类型的时候 Avatar Definition类型(如图)

unity如何打开动画 unity怎么k动画_复用_08


可以选择No Avatar,或者Create From This Model当做默认选择。

如果出现骨骼复用的情况下或者想用特定的骨骼,可以选用Copy From Other Avatar 来选择自己想用的骨骼。

2.新的想法

##  现在抛出了一个新问题:如何把Generic类型转换为Humanoid类型?

老师说:
1.得自己用3d软件(Maya,3DMax等)重新整一整骨骼,导出文件,用代码转格式
2.或者丢回去给美术重新弄一下(在大公司工作的情况下)

## 现在又抛出了一个新问题:如果我想骨骼复用,得满足什么条件呢?

老师说:
1.两个人物角色的骨骼的拓扑结构完全一致。
2.被复用的角色的骨骼的拓补结构一定要包含复用方的拓扑结构。(简单来说就是小弟想要借大哥的某些功能用,大哥的拓扑结构一定包含小弟的结构 AB,但是小弟并不一定包含大哥的结构)

如果上述两个条件都不满足,只能进行骨骼重定向。

总结

以后会在博客记录遇到的问题