用户工具

站点工具


hero_animation

这是本文档旧的修订版!


英雄骨骼动画

目录规范(美术/程序)

动画相关文件存放在

Asset/Resources/Prefab/HeroAnim/

每个英雄命名一个文件夹, 比如 Hero_A_001, 最好和hero_config表格里的 Hero_L_001配对 (把L换成A)

文件夹中,存放4个文件(以及对应的meta文件),名字都和目录保持一致。分别是

Hero_A_001.png 切好部件的图片
Hero_A_001.prefab 程序引用的预制体
Hero_A_001.anim 待机动画文件
Hero_A_001.controller 待机动画控制文件

如图所示

表格引用(策划)

hero_config新增了一个anim字段,负责引用动画文件。

如果动画文件存在,则优先动画,否则使用pic字段的大图

会出现立绘的地方,都可以被替换成动画文件。

主要有:

* 战斗敌人界面
* 大卡界面
* 英雄升级界面

游戏引用(程序)

使用这样的代码 

UIFeatureHero.SafeSetHero(Img_HeroIcon,h_config);

代替原来的,UIFeatureCommon.SafeSetIcon(Img_HeroIcon,h_config.pic);

注意点

由于动画预制体是SpriteRenderer而不是Image 和原来会有若干不同参考后面两个章节

实现细节包含

* 1/清除原来的动画预制体
* 2/尝试加载预制体,如果失败则以普通图片形式加载
* 3/根据一套计算规则,使得预制体和原来的image一致,推算的公式是 100*(Image的尺寸)/(原始图片的尺寸)
* 4/根据一套计算规则,校准坐标中心,推算的公式是 0.5-Image.pivot.y * Image的高度
* 5/修改了 shader和UICMaterialCtrl 使得动画可以同时控制 动画预制体 和 图片Image的 颜色变化。其中用raw_color来控制颜色而不是直接用定点色,在动画中需要注意。参考下一节:动画注意 * 6/似的Sprite

动画注意

* 美术需要保证 预制体可以自动循环播放待机动画

* 在战斗场景中的缩放动画。只需要针对上层的pic节点制作就可以了,动画体是他的儿子,可以跟随动画

* 变色动画 分为 基础变色 和 Tint变色 。(前者是乘法,后者是叠加)

层级注意(所有人)

SpriteRenderer 和 Image

技术备忘

https://blog.csdn.net/HuLuGuai/article/details/82797061

这篇文章讲了unity 老版的 切片动画和这个 animation2d新版动画的介绍。 新版会方便很多,也可以新老结合来做。

老版比较适合做刚体,也就是硬切块的动画

https://blogs.unity3d.com/2018/11/09/getting-started-with-unitys-2d-animation-package/

官网关于切块的做法视频

内部层级的做法,是设置骨骼的深度值,越大越靠前

hero_animation.1556431524.txt.gz · 最后更改: 2019/04/28 14:05 由 shenmo