一般在H5开发流程中,都是交互动画设计师利用Animate cc(即原来的Flash)把动画的原型设计出来,然后交付给UI部门进行开发实现效果。而做过动画开发的UI都知道搞动画开发是较为耗时费力的,而且还要高度还原动画,整个流程走下来的话不论是时间还是其他成本,都是比较高的。

其实有一种方法可以有效的改良这种状况,大大地提高开发效率。AnimateCC(就是原来的Flash)可以导出canvas动画,而且是基于createjs这个开发轻量级游戏的js库的,非常适合用来做移动端的一些h5动画。不仅缩短制作动画所需要的间。同时它也是一个可视化的IDE,不需要编写代码就可以完成高品质的动画效果;还可以通过Javascript,为动画效果添加交互性。

比如下面这一页动画,如果使用传统的html css3的动画开发或者是canvas方式来硬写代码来实现,切图加上动画开发没有一天应该是搞不定的;而使用AnimateCC导出配合自己写一点点代码,一两个小时就可以搞定。

一些需要了解的概念

开始之前先来了解下Animate CC中做动画的概念。

帧频

是指每秒钟放映或显示的帧或图像的数量,这个数值设置越大,动画越快,但同时也是性能消耗大户,一般设置24帧就可以了。

图形与影片剪辑

我们可以将单独的动画,放到一个独立的影片剪辑里,这样可以更好的控制动画。几个独立的剪片剪辑,可以组成一个完整的动画。

当我们把图片从资源库拖到舞台时,它这个时候,只是普通的位图,并不能做补帧动画,所以我们必须把它转换成元件。

图形由矢量图或者是位图组成。

影片剪辑包含在动画影片中的影片片段,有自己的时间轴和属性。具有交互性,是用途最广、功能最多的部分。

时间轴

时间轴是我们创作动画时使用层和帧组织和控制动画内容的窗口,层和帧中的内容随时间的改变而发生变化,从而产生了动画。时间轴主要由层、帧和播放头组成。

Createjs

CreateJS为CreateJS库,可以说是一款为HTML5游戏开发的引擎。目前被Adobe整合到Animate CC中,作为导出canvas动画的基础javascript库。

它是一款为HTML5游戏开发的引擎,包含:

EaselJS:用于 Sprites、动画、位图的绘制,交互体验(包含多点触控)功能。

TweenJS:补间动画”引擎

SoundJS:音频播放引擎

PrloadJS:资源预加载

怎么快速导出canvas动画?

一般动画设计给我们都是单个的使用Animate CC导出的fla源文件,就以我上面说的demo为例,长这样:

拿到之后我们需要做一点点整理工作,先在Animate CC里面建立一个影片剪辑元件:

建好之后在Animate CC中的库面板中就会生成刚刚建好的影片剪辑元件,点击刚刚建好影片剪辑元件链接的栏目就会变成可编辑的状态,然后取个名字,比如我这里取名为view1:

然后双击这个元件,时间轴里面是空白的,这个时候需要做的事情就是打开动画设计师给我们的fla源文件,复制时间轴上所有的图层粘贴到刚刚新建的影片剪辑里时间轴里。

这样我们这个叫page1的影片剪辑就包含了这一页的所有动画,想一想如果你是要做有5页游动画的h5项目,就单独把每一页的动画放到对应的影片剪辑里。这几个单独的影片剪辑就组成了一个完整的动画。

做完这一步整理工作后,就可以点击导出了。

它会直接把资源导出到你当前fla文件所在的目录:

images -> 动画所用的图片资源
1.hmt -> html文件
1.js -> canvas所需要的图形全部转成canvas绘制的元件库

打开导出的js文件,可以看到刚刚在影片剪辑里做的类链接已经在js生成了一个view1的方法在里头:

然后可以发现在导出来的html文件里中混合了js代码,我们可以新建一个main.js文件把html文件中的js代码放进去,专门用来控制动画的播放以及一些交互逻辑的编写。

教你一招让你高效搞定高品质的H5交互动画相关推荐

  1. 怎么取消苹果订阅自动续费?教你一招,2分钟搞定!

    案例:苹果怎么取消自动续费? [想问下苹果订阅服务在哪里看?之前好像不小心订阅了什么自动续费,想要取消它.] 苹果订阅自动续费功能在一定程度上方便了用户的购买体验,但有时候我们会忘记取消订阅,导致不必 ...

  2. 简单高效搞定---迁移学习

    简单高效搞定-迁移学习 1.相关知识点 可否GPU训练 import tensorflow as tf import matplotlib.pyplot as plt import numpy as ...

  3. 手机密码用计算机怎么解锁,手机忘记开机密码怎么办,有这四招1分钟就搞定...

    原标题:手机忘记开机密码怎么办,有这四招1分钟就搞定 有一天突然忘记了手机的开机密码解不了锁怎么办?放心,下面这几招既能快速解开锁屏密码,还保证不损坏手机硬件. 1.ADB解锁 ADB解锁是一个PC端 ...

  4. 苹果id密码忘了怎么办_手机密码忘了怎么办?一招帮你轻松搞定

    现在手机安全性特别高,比如指纹解锁.人脸解锁.骨声纹解锁等,安全方面非常有保障.而以前的手机只有数字密码和九宫格密码两种,虽说现在技术发达了,但是数字密码是我们避免不了的,一般只有设置了数字密码才能使 ...

  5. 【山河送书第五期】:《码上行动:利用Python与ChatGPT高效搞定Excel数据分析》参与活动,送书三本!!

    <码上行动:利用Python与ChatGPT高效搞定Excel数据分析> 前言 内容提要 本书亮点 购买链接 参与方式 往期赠书回顾: 前言 在过去的 5 年里,Python 已经 3 次 ...

  6. 忘记手机密码怎么用计算机解开,手机忘记密码怎么办?教你三种方法帮你搞定!...

    你一定有过手机忘记密码的经历吧?小编在就经常会把手机密码记错,这个时候十分的着急,试了一遍又一遍还是不对,那么,遇到手机忘记密码怎么办 ?今天在小编教你一招,轻松搞定. 手机忘记密码怎么办 经过几年的 ...

  7. ubantu 黑屏_手机黑屏、卡屏怎么办?几招就能轻松搞定!

    手机这个功能尤其丰富的东西,偶尔也会出现一些小毛病,比如说手机黑屏.卡屏,这对大部分用户来说应该都有遇到过.手机黑屏这真的是一件让人揪心又无奈的事情,相对于懂得这方面技术的人来说,毫无疑问是小菜一碟, ...

  8. 文字 竖排居中_学会了这几招,瞬间就搞定PPT文字排版问题!

    hello,大家好啊,我是summer! 毫不夸张的说PPT中用的最多的元素就是文字!​ 基本每一页PPT都会有文字存在. 但是文字排版要是没搞好,就很有可能成为下面这个鬼样子: 那么今天,我就来给大 ...

  9. 服务器root账号用户名和密码忘记了,宝塔忘记后台管理员账号密码怎么办?教你用这条命令轻松搞定...

    现在可以说百分之80的网站都在使用宝塔建站,宝塔是什么呢? 宝塔是一款非常受欢迎的服务器可视化管理工具,宝塔面板很多人都在用, 有些站长经常一不小心就把后台登录密码忘记了?或者用户名和密码都忘记了, ...

最新文章

  1. win10 anaconda 下pcl库的安装
  2. 解决dubbo问题:forbid consumer(2)
  3. python中构造方法可以被继承吗_构造函数是在python中继承的吗
  4. BlogEngine.NET1.2的新功能
  5. 572. Subtree of Another Tree
  6. 【转载】Centos7修改root密码
  7. (17)HTML标准文档流
  8. Mybatis解析(面试题)
  9. 存储引擎和Mysql服务层出现索引信息不一致错误提示
  10. 181219每日一句
  11. 高速EDA设计课程报告(三)
  12. [C语言入门可读]学习书籍;学习工具、网站;刷题网站推荐
  13. 为什么要使用PPTP协议代理ip?
  14. Python之爬虫-- js加密(破解有道词典加密的算法)
  15. 浏览器y轴滚动条占据宽度,导致出现x轴滚动条的解决方案
  16. Transformer系列论文阅读
  17. html5 在线摄像头,HTML5在线摄像头使用
  18. 计算机超级工作站,【八核高性能计算超级计算机CAECADCAM有限元超级工作站】.docx...
  19. ker矩阵是什么意思_矩阵求逆的几何意义是什么?
  20. SQL注入之利用DNS获取数据

热门文章

  1. JS And Vue代码调试——IDEA+JS+vue-devtools-dev+JetBrains IDE Support(Chrome插件)
  2. ping的各种意义、作用
  3. 【转】PCM Audio,PCM格式音频文件 详解
  4. redux中导入createStore中间有条线,解决方案及redux的使用。(react)
  5. python pdf删除图片_【原创】python批量删除pdf图片水印(Xobject)的一种方法
  6. php 判断字符串类型及长度
  7. 微信小程序订阅消息定时发送消息
  8. 极光短信在程序中(JAVA)的使用
  9. Dijskra迪杰斯特拉算法
  10. c言语或符号怎么输入