整个2018年都被工做支配,文章自17年就断更了,每次看到有消息提示过往的文章被收藏,或者有人点赞,都不胜唏嘘。不过,凡事要始终保持积极的心态,如今回归为时未晚。最近有项目要作一镜到底,那就稍做研究吧。html
百度百科-一镜到底
一镜到底,是指拍摄中没有cut状况,运用必定技巧将做品一次性拍摄完成。
那么运用到H5上面,是怎样的表现?网上案例也有不少,这里推荐数英的一篇文章,应用尽有:git
一镜到底H5大合集:一口气看尽一个H5的套路canvas
主要表现形式为如下几类:微信
体验方式主要有:网络
如上图的《爱的形状》,用户滑动屏幕,方块滚动,而且用户能控制播放进度;期间方块上面的纹理一直在变化,意味着动画一直在播放。框架
提取要点,要实现一个一镜到底H5,一般会有如下技术需求:性能
有了需求,咱们就能够相应去找解决方案了。绘图有用3D的threejs的,动画有人用anime.js,各有所好,能实现需求就行。学习
最终针对以上需求,我选用了AlloyTouch、TimelineMax、Pixi.js、TweenMax这几个库来实现通用的一镜到底。各个框架的优势这里就不赘述了,想了解详情的能够自行搜索,几乎都有中文资料,也很容易使用。优化
你可能会问那怎样实现上面说的几种类型的一镜到底?实际上,几种类型的不一样只是动画变换方式不同而已。动画
简单写了个demo,若是感兴趣的朋友能够拉下来本身把玩一下。
(注:项目中素材来源于网络,仅供交流学习使用,切勿商用!)
这里只实现了一个一镜到底H5的主要效果部分,距离完成还有不少工做:
此次没有用太多篇幅铺开来说细节,主要是运用几个库组合来实现,而实际操做上还有不少地方要注意的,例如帧动画的实现,滑动的速度控制,滑到顶部、底部的处理等等。实际应用上还要继续打磨,毕竟一个漂亮的H5,是要花不少精力去构思,去优化体验的。
最后也但愿能认识到更多在H5领域有研究的小伙伴,能够互相交流,甚至一块儿工做!
email: vincent@shikehuyu.com