推荐阅读
- CSDN主页
- GitHub开源地址
- Unity3D插件分享
- 简书地址
- 我的个人博客
- QQ群:1040082875
大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。
AnyPortrait是一个创建2D角色动画制作的Unity拓展编辑器插件。
AnyPortrait提供了很多功能,让你可以在Unity里面就完成动画的制作。
使用AnyPortrait插件轻松创建2D网格,并且实现各种动画技术。
AnyPortrait关键特性:
先放一张效果图:
下载链接:
https://download.csdn.net/download/q764424567/22332223
这是本系列文章的第二篇:
【Unity3D插件】(一)使用AnyPortrait插件制作史莱姆动画(AnyPortrait插件教程)
【Unity3D插件】(二)使用AnyPortrait插件制作角色动画(AnyPortrait插件教程)
本教程基于插件包中的PSD文件。
学习如何通过PSD文件创建网格组。
以及如何添加骨骼和创建动画。
让我们新建一个场景,保存场景后,在菜单栏选择“Windows→AnyPortrait→2D Editor”,点击新建肖像,命名为PeacockTheAria:
按下 导入PSD文件 按钮导入新的PSD文件:
确保文件正常打开,然后单击Next按钮:
进入第二个页面,“图层”页面,加载的图层图像就会出现,接着就选择文件层:
接下来,需要将PSD文件里面的若干图片制作成资源:
设置完地图集Atlas后,点击Complete按钮:
可以看到所有的图像、网格和网格组都是自动创建的:
使用PSD文件,自动创建网格和网格组,非常方便。
因为自动创建的网格比较粗糙,所以需要优化一下网格。
选中要优化的网格,删除所有顶点:
接着,就重新设置网格:
重复上面操作,重新设置所有的网格:
打开网格组后,可以在层级列表看到一个箭头形状的图标,Teeth和Tongue,如果选择这两个网格,可以看到网格只渲染了一部分,这是因为Teeth和Tongue具有剪切层属性:
下面的图片演示了剪切层属性的效果,可以看到图片的隐藏部分:
剪切功能是通过指定另一个网格作为蒙版来渲染网格的一部分。
主要用于眼睛、嘴巴等部位。
但是,请注意以下几点:
AnyPortrait支持骨骼IK(逆运动学)和支持骨骼插槽。
接下来,就演示如何为骨骼动画添加骨骼:
在身体重心位置添加一块骨骼,方向不是很重要:
修改这个骨骼的名字和形状:
继续添加骨骼,命名为Bone Spine 1:
继续添加骨骼,命名为Bone Spine 2,颜色和大小跟上一根骨骼相似:
给角色的帽子耳朵上也添加一块骨头:
重复上面的步骤,创建下面图片设置的骨骼样式:
接下来需要将骨骼都连接到一起,这样就可以像真人一样移动:
这样,Bone Spine 1就成了Bone Pelvie的子对象了。
用同样的方法,连接头和双臂,耳朵等:
设置完骨骼,就可以使用绑定修改器了,绑定修改器的作用就是连接顶点到网格。在顶点处输入骨骼不同的重量,这样顶点就会跟随骨骼移动。
在上面左图中,所有顶点的权重都是1:0.0,因此它不依赖于绿色的骨骼移动。
右图中,顶点的权重依次递增给绿色骨骼,可以看到绿色骨骼在平滑移动。
也就是说绑定修改器是设置顶点+骨骼的连接权重的过程。
下面,就添加一个绑定修改器:
将Hood网格的顶点添加到绑定修改器:
点击左下角的开始绑定按钮,开始绑定顶点和骨骼,选择所有顶点,然后选择Bone Head骨骼:
设置顶点的权重:
接着添加一个与动画关联的修饰符:
在左边菜单选择添加动画剪辑,然后设置动画的名字,然后选择网格组PeacockTheAria:
注意:动画名称用于在游戏过程中播放动画,名称重复或错误无法删除。
要创建关键帧动画,必须向动画剪辑添加时间轴:
添加了变换(动画)时间轴:
接下来,给时间轴动画添加一个骨骼:
点击开始编辑,在关键位置添加关键帧:
当打开编辑模式并选择关键帧时,你可以变换对象。这个状态记录在关键帧中。
插值是理解关键帧动画时最重要的原则。
插值是计算关键帧和关键帧之间的形式的过程。
根据插值方法,即使你有相同的关键帧,动画的结果也可能是不同的。
这一节就介绍动画曲线处理插值方法。
接下来,就根据上面的内容,做一个骨骼动画。
创建一个新的动画剪辑之间,先删除之间创建的动画关键帧:
选择所有的骨骼并将它们加入到时间轴是很麻烦,可以将所有骨骼一次性添加到时间轴:
所有骨头都在时间线上了:
设置动画循环:
如果在一帧动画中有多个时间轴,这设置起来很麻烦,这时候就可以使用 将关键帧添加到所有层, 批量创建关键帧:
移动时间滑动到生成的关键帧所有位置,打开编辑模式,制作动画。
动画制作完成后,需要将动画移动到场景中,先设置根目录:
设置根节点后,选择动画,并播放动画,就可以看到设置后的动画了:
点击烘焙,将动画烘焙到场景中:
运行程序,就可以看到设置的动画了。
可以看出来AnyPortrait插件还是很强大的。
可以做很多的效果跟动画。
但是,如果想要做出精细的动画效果,还需要专业的美工人员去制作。