AlexZ33 / lessions

自己练习的各种demo和课程
12 stars 2 forks source link

H5动画开发 #57

Open AlexZ33 opened 5 years ago

AlexZ33 commented 5 years ago

框架对比

2D、3D、VR的支持

image

性能

Layabox面向大型游戏的H5游戏引擎,性能优势是毋庸质疑 image

设计理念与定位

image

工作流支持力度

工具链的提供与支持也是一种选择考量要素,比如UI编辑器、粒子编辑器、骨骼编辑器、场景编辑器等等,如果引擎方直接提供或支持,那么将会较大的提升研发效率。Egret、Layabox、Cocos2d-JS这三个引擎在工具链方面提供足够全面的支撑。

引擎的应用广度

Egret成名比较早,发展得比较快,各方面的资源而比较多,提供了全套开发流工具。 image

用游戏引擎的优点:开发快,可维护性高

用游戏引擎的缺点:牺牲一些性能,小游戏用不用引擎几乎感受不到性能差异。大游戏为了开发效率和可维护性,一般都会使用游戏引擎。

参考文章

不会做动画的前端不是好开发 大漠:手淘互动动效的探索 web动画性能指南 CSS动画指南 - 补间动画&逐帧动画 H5游戏开发 createjs常见误区 H5场景小动画实现之PixiJs实战 神秘失踪 pixi.js 移动端H5坑点 微信小游戏开发总结

createjs

image

easyjs

image

image

AlexZ33 commented 5 years ago

image image

AlexZ33 commented 5 years ago

tweenjs

image image

AlexZ33 commented 5 years ago

image image image

AlexZ33 commented 5 years ago

image 具体案例可以戳:

AlexZ33 commented 5 years ago

image image

AlexZ33 commented 5 years ago

Preloadjs

作为createjs的子库,preloadjs用来对文件进行管理和预加载。preloadjs优先通过xhr进行资源加载,通过preloadjs,可以实例多个加载队列,每个队列可以选择加载文件或者多文件。同时,监听文件下载阶段的事件。方便我们在不同的阶段绑定相应的事件处理程序。 image

image

1、 对于图片的加载,preloadjs会开启多个线程加载图片 image 2、监听文件加载各个阶段的事件,可以实现按需加载,按资源类型加载,可以更加方便的实现loading页进度 3、为加载各种文件提供管理的api,支持的文件类型。 image

AlexZ33 commented 5 years ago

scrollerjs

scroller是一个纯净监听scroll和zoom的组件,它独立于任何特定类型的渲染或事件系统。当用户手指滑动屏幕时。触发滚动,通过监听滚动事件,在滚动一定距离触发事件,事件参数包含位置信息等,根据位置信息决定渲染内容(画布显示隐藏,图片位置等)

AlexZ33 commented 5 years ago

pixijs

PixiJS是一个快速的轻量级的2D动画渲染引擎,主要使用了WebGL技术,能帮助展示、驱动和管理富有交互性的图形、制作游戏。使用JavaScript以及其他HTML5技术,结合PixiJS引擎,可以创建出丰富的交互式图形,跨平台的应用程序和游戏。

样例

https://codepen.io/AlexZ33/pen/wvwMvaY

生态

awesome-pixijs

插件

image

AlexZ33 commented 5 years ago

Hilo : 适合电商业务

AlexZ33 commented 5 years ago

Konva

Konva 是一个 基于 Canvas 开发的 2d js 框架库, 它可以轻松的实现桌面应用和移动应用中的图形交互交互效果

konva概念

  • stage: 画布
  • layer: 层
  • group: 组
  • 图形

基本操作

AlexZ33 commented 5 years ago

phaser

AlexZ33 commented 5 years ago

hammer

https://codepen.io/AlexZ33/pen/wvwdbJj?editors=1010

AlexZ33 commented 4 years ago

动画库

贝塞尔曲线

https://github.com/mtsee/Bezier/blob/master/src/bezier.js

AlexZ33 commented 4 years ago

刮奖

https://github.com/Franslee/lucky-card

转盘

AlexZ33 commented 4 years ago

seinjs

AlexZ33 commented 4 years ago

egret3d

egret-labs/egret3d