用户工具

站点工具


hero_animation

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
hero_animation [2019/04/28 13:59] shenmohero_animation [2019/04/28 14:36] (当前版本) shenmo
行 1: 行 1:
 ======英雄骨骼动画====== ======英雄骨骼动画======
  
-=====目录规范(美术)=====+=====目录规范(美术/程序)=====
  
 动画相关文件存放在 动画相关文件存放在
行 46: 行 46:
 ====注意点==== ====注意点====
  
-由于动画预制体是SpriteRenderer而不是Image 和原来会有若干不同+由于动画预制体是SpriteRenderer而不是Image 和原来会有若干不同参考后面两个章节
  
 实现细节包含 实现细节包含
行 54: 行 54:
 * 3/根据一套计算规则,使得预制体和原来的image一致,推算的公式是 100*(Image的尺寸)/(原始图片的尺寸) \\ * 3/根据一套计算规则,使得预制体和原来的image一致,推算的公式是 100*(Image的尺寸)/(原始图片的尺寸) \\
 * 4/根据一套计算规则,校准坐标中心,推算的公式是 0.5-Image.pivot.y * Image的高度\\ * 4/根据一套计算规则,校准坐标中心,推算的公式是 0.5-Image.pivot.y * Image的高度\\
-* 5/修改了 shader和UICMaterialCtrl 使得动画可以同时控制 动画预制体 和 图片Image的 颜色变化。其中用raw_color来控制颜色而不是直接用定点色,在动画中需要注意。参考下一节:动画注意+* 5/修改了 shader和UICMaterialCtrl 使得动画可以同时控制 动画预制体 和 图片Image的 颜色变化。其中用raw_color来控制颜色而不是直接用定点色,在动画中需要注意。参考下一节:动画注意 \\ 
 +* 6/让SpriteRenderer的sortingLayer和sortingOrder和pic一致, 这样可以保证SpriteRenderer能正确显示。但会遮挡在同层的所有东西上面,所以需要把下面的UI控件提高层级。
  
 =====动画注意===== =====动画注意=====
 +
 +* 美术需要保证 预制体可以自动循环播放待机动画
 +
 +* 在战斗场景中的缩放动画。只需要针对上层的pic节点制作就可以了,动画体是他的儿子,可以跟随动画
 +
 +* 变色动画 分为 基础变色 和 Tint变色 。(前者是乘法,后者是叠加)
 +
 +{{:pasted:20190428-140944.png}}
 +
 +=====层级注意(所有人)=====  
 +
 +SpriteRenderer 和 Image 在实现上有所不同。
 +
 +不能靠编辑器里的上下关系来确定显示层级。但是 sortingLayer(排序层)和sortingOrder(层内顺序)是有效的
 +
 +所以我们可以让 英雄立绘/动画 下面的UI控件,都提高一个层级内顺序就可以解决这个问题。
 +
 +{{:pasted:20190428-141540.png}}
 +
 +如果下面的控件有交互,需要添加Raycast组件
 +
 +{{:pasted:20190428-141935.png}}
 +
 +部分页面,不使用这样的方法,我才用了一些其他手段。
 +
 +比如PanelCommonHeroDetail ,会导致上面再覆盖一个Dialog的时候,出现层级错乱。
 +
 +对策是我把PanelCommonHeroDetail直接修改成 EFFECT 层
  
 =====技术备忘===== =====技术备忘=====
行 72: 行 101:
  
 内部层级的做法,是设置骨骼的深度值,越大越靠前 内部层级的做法,是设置骨骼的深度值,越大越靠前
 +
 +
 +TODO: 异步加载
  
hero_animation.1556431196.txt.gz · 最后更改: 2019/04/28 13:59 由 shenmo