zoukankan      html  css  js  c++  java
  • 使用animateCC做动画时,需要注意的几件事(持续更新)

    熟悉我的人都知道我基本不接跳帧类型的外包,哪怕只是简单的换皮,为什么呢?除了这是一个苦力活,对自身没有提升外,更重要的原因是,做跳帧类型的项目是需要程序员和动画师进行约束的,如果动画师只管自己做动画,不和程序员约束规则的话,程序员使用动画师的动画是非常难受的,还很容易出莫名的BUG,然而,跳帧外包往往是动画已经做好,让你写程序,或者干脆是让你把flash改成H5,所以做起来就比预想的麻烦很多,很多时候你需要自己重新处理一遍动画,有点类似于动画重构了。针对这种情况,我今天就在这里写出几个用animateCC做动画时要注意的几件事。

    新手注意这条:animateCC元件命名分为 库名 和实例名 一般可以直接被代码控制的是实例名。库名也可以被代码控制 但是需要new一下。实例名和库名很多新手会搞混。

    实际上不写类链接直接new库名也可以生成对象 类链接主要是为了规范和不放在舞台也可以导出(所以很多人看我的fla舞台空的以为这个fla有问题,其实东西都在库里……)。

    好了接下来介绍注意事项:

    1.如果元件一开始就需要被代码控制 元件第一侦就必须要存在 设置不显示就行了

    2.透明度为0的元件无法被点击,所以如果要做透明按钮需要把不透明度设置为1%

    3.中途切换原件 名字相同并不能被操控 所以一个元件里不能有2个元件命名同一名字(实例名)

    下面和上面重复了,这样的命名是不行,代码操作不到后面的元件

    4.文件名和库名不要相同,不同元件的类链接名不要和别的库名相同,同一个元件的库名和类链接名可以相同。

    5.fla中 在不同文件夹里文件名也要不同 不然同名元件会被重命名 动画有可能会被混淆 导出来的图片 也有可能混淆(主要发生在替换资源的时候 因为存入的先后时间改了 系统重命名是根据存入时间命名的)

    6.图片设置为影片剪辑以后再做补间,不然会出现2个图形元件,之后改起来就很不方便,而且导出代码也会变多。

    7.把所有元件设置为影片剪辑而不是图形 虽然图形也可以做动画 但是不能被命名 一旦这个元件你突然发现需要操控了 你需要把每一帧都改成影片建议 修改帧数多的动画就是一个很恶心麻烦的过程。

    8.老生常谈的一个问题了 gotoandplay不成功 如果你们的程序不专业 那么请把跳侦动画放到第二帧 不要放第一侦 因为元件第一侦需要初始化 这时候跳侦不成功 如果你们程序员专业的话 第一侦也没事让他们自行延时触发 或者autoReset设置为false

    9.一定保证不同的fla中不同图片的名字不同,但是都要用到相同的图片时名字要相同(这个我加橙色高亮 这个一般动画师肯定不会注意 导致多个fla导出来的资源覆盖掉 或者2个一样的图片加载好几遍) 因为这样导出的时候不会覆盖 相同的图片也不会被加载两遍

    10.库里导入的素材不要随便和别的素材对调名字 这也会出问题 没错就是这么bug

    11.png和jpg发布的时候不要和在一起,也不要太大,这都会造成文件过大程序加载慢运行慢的bug,不懂的人就按照下面的图设置

    12.分离(俗称打散)与合并资源到sprite表功能不要一起用,一起用了打散的部分不会显示,实在要一起用打散的素材转为位图。

    13.如果用到多个fla,请修改命名空间,下图红框中的名字每个fla都要不一样,如果是2018以上的版本只需要通过每个fla的adobeid重新获取lib,image,ss就可以了。

    QQ图片20190116140627.jpg

    重新获取lib:

    var comp=AdobeAn.getComposition("43DF86047014BD45A6E625D22FE1B4C1");//id看导出的js
    var ss=comp.getSpriteSheet();

    var lib=comp.getLibrary();

    var images=comp.getImages();

    //上面所有的命名跟红框一样 红框没有的区分开就可以了

    14.做动画时主要时间轴做成一条,这个条件乍听之下很难懂,其实就是最好你一个stop就可以停下全部动画,装饰性的动画除外,比如动画暂停的时候光效可以继续,但是跟动画进度有关的动画全部要在一个stop停止,如果你做成了多个动画进度,要让程序员知道要停止哪个动画就很难了,而且这样子动画师后续改动画,程序员就需要重新改程序。

    15.同样的动画效果不要在父子上一起做,不仅容易误导程序员,性能还会很糟糕,比如淡入淡出效果,你父子元件一起做了,这时候程序写了停止动画,结果还是没停止,这时候找问题可就找死人了。

  • 相关阅读:
    MySQL-基本sql命令
    Java for LeetCode 203 Remove Linked List Elements
    Java for LeetCode 202 Happy Number
    Java for LeetCode 201 Bitwise AND of Numbers Range
    Java for LeetCode 200 Number of Islands
    Java for LeetCode 199 Binary Tree Right Side View
    Java for LeetCode 198 House Robber
    Java for LeetCode 191 Number of 1 Bits
    Java for LeetCode 190 Reverse Bits
    Java for LeetCode 189 Rotate Array
  • 原文地址:https://www.cnblogs.com/dt1991/p/12613884.html
Copyright © 2011-2022 走看看