createjs是一个轻量级的框架,稍微有点时间和耐心,就可以把全部源代码都看一遍,毕竟只有三十几个js文件。...地址:http://www.createjs.com/ 开发createjs的动画或游戏,没有重型的IDE或什么工具支持,我们只能从零开始写js。...一方面,这样对于jser来说,足够灵活;另外一方面,createjs因此足够精简足够小。...2、 建立html和canvas标签,onload后再执行createjs相关逻辑。 3、 编写createjs逻辑。...这个非常简单,因为createjs只提供了最简单的基础功能,我们理解了基础功能后就可以叠积木了。 关于createjs,最关键是要理解类结构 ?
createjs是一个轻量的游戏引擎,轻量到都不觉得它是引擎了。...小游戏发布初期,花叔给封装了一个相应的createjs版本引擎,访问这个地址: http://ac.wxnodes.cn/application/images/createLib.zip “最强坦克”小游戏就是基于这个引擎研发的.../weapp-adapter.js') //官方adapter window.createjs = require('...../createLib/create.js') window.rootStage = new createjs.Stage(canvas) //canvas为主域主屏canvas window.createjs.Ticker.framerate...= 60 window.createjs.Ticker.addEventListener("tick", tick) function tick(e) { rootStage.update()
() } } #canvas { background: #333; } 在组件加载时,mounted 函数会被调用...,在函数里,我们先获取画布canvas的对象,并通过window对象获取前面从第三方库中拿到的createjs对象,接着我们通过new从createjs对象里构建了一个Stage对象,在构建时,把canvas...对CreateJS的详细文档可以从以下链接获取 代码中的Text对象是CreateJS库中的一个子类,它的作用是在页面上渲染字符串,就如例子中一样。...接着构建一个绘制对象叫Shape,这个类专门用来绘制盒子,Shape包含一个子类叫graphics,通过这个类设置前面定义的绘制样式,最后通过drawRect函数把盒子绘制到Shape对象里面,最后用addChild...我们可以看到顶部有一个黑色方块,里面含有一个红色的数字8,黑色方块是由rectShape函数绘制的,在generateNumberBox里,代码先通过randomInt生成随机数8,然后在numberBox
【二、项目准备】 1、去网站: http://www.createjs.cc/ 下载EaselJs、TweenJs这两个模块。 ?...createjs.DOMElement("instrutions"); d.alpha=0; d.x=50; createjs.Tween.get...(d); createjs.Ticker.addEventListener("tick",stage); } 代码解析: 1)表示页面已加载就要执行的函数。...createjs.Tween.get(d).wait(100).to({y:40,alpha:1},2000,createjs.MotionGuidePlugin.bounceIn); 5)组件添加到舞台...3、大家可以尝试了解createjs的其他模块,官网上有对应的API文档供大家学习。 4、按照操作步骤,自己尝试去做。
就能对页面在一秒内进行40次刷新,每次刷新时会发出一个’tick’消息,我们只要监听这个消息,并提供会调函数,那么createjs就会在一秒内回调我们的函数40次,在该函数中,我们再通过createjs...init中,我们让createjs一秒内回调我们提供的tick回调函数40次,createjs不断的回调我们的tick函数,这个情况实质上构成了游戏的主循环,在上一个游戏神庙逃亡中,我们是通过一个for...在tick函数被回调时,createjs会给它传递一个参数,我们通过读取这个参数的paused值用于判断游戏是否处于暂停状态,如果不是,那么我们调用moveObjects,移动页面上各个成员的位置,这种移动就构成了一种动画效果...stage容器中,当键盘的按键被点击时,由于我们通过@click指令进行绑定的缘故,一旦按键点击后,controlClicked函数会被调用,该函数调用时会把点击事件对象当做参数传给我们,通过该对象的target...读取到按键的data-value属性值后,我们就知道用户点击了哪个按键,并获得了按键的数值,然后把该数值传递给addInput函数,这个函数的作用是把用户点击的按钮值构建成一个字符串,加入用户点击了按钮
/static/easeljs-0.7.1.min.js"> window.createjs = createjs...负责盒子下落的是函数moveObjects, 因此我们需要在该函数中判断每个盒子的y坐标,如果坐标超过了红线所在的位置,那么我们就得把它从页面上清除掉,相应的代码如下: moveObjects () {...,该函数变量存储所有数字盒子的数组numberBoxes,如果有盒子的数值跟给定数值一样,那么就把这个盒子对象返回,拿到要爆破的盒子对象后,代码调用showCircle(x,y),其中x,y是盒子当前坐标...变量对应的图片先在页面上正常显示500毫秒,有就是wait(500)的作用,到第1000毫秒,也就是一秒钟时,把图片的透明的转换成0,也就是to({alpha: 0}, 1000),接着调用我们提供的回调函数...,在回调函数里,我们知道此时展现爆破效果的绿圈图案要消失了,于是我们通过removeChild的方式把绿圈图案从stage上移除,这样下次界面刷新时,它就不会在显示出来,由于该功能是一种动态的显示效果,
Createjs CreateJS为CreateJS库,可以说是一款为HTML5游戏开发的引擎。目前被Adobe整合到Animate CC中,作为导出canvas动画的基础javascript库。...() 这里可以是额外处理的对象 } var p = createjs.extend(View1,createjs.Container); cls.View1 = createjs.promote...// createjs.Ticker.setFPS();和createjs.Ticker.addEventListener("tick", stageBreakHandler);是必须要加的,stageBreakHandler...fnStartAnimation = function() { createjs.Ticker.setFPS(lib.properties.fps); createjs.Ticker.addEventListener...(View1,createjs.Container); cls.View1 = createjs.promote(View1, "Container");}()); 一个动画效果就完成,当然刚开始的时候可能要花点时间来熟悉
cocos2d-js除了做native游戏外,还可以用来做HTML5游戏/动画,那么它跟adobe的createjs框架比较会怎么样呢?...在PC的chrome运行,cocos2d-js和createjs都能满帧60fps,轻松搞掂无压力。 ?...createjs:使用canvas 2d渲染,保持在28fps。...createjs: ? 小结: 总体来说,由于cocos2d-js可以在webgl上渲染,所以性能会比createjs要好。...再考虑框架的附加能力方面,cocos2d-js框架提供的UI编辑器、粒子系统、骨骼动画、瓦片地图等等,都是createjs这个轻量级选手不具备的,createjs只能从零开始,一切都得靠开发者自行实现。
我们看到例子里蜘蛛的下落有一个duang一下的弹簧效果,这个在补间里设置一下缓动函数就行了。常用缓动函数的选择是2018版本新增的,个人感觉十分实用。 ...为了让气泡整体看起来沸腾得更自然,我给各个元件实例命了名,并用一个随机函数控制元件动画的播放。...通过调试生成的h5,我们可以发现Animate CC是在canvas上通过createjs引擎绘制动画的。关于createjs,大家可以看看其中文社区 、或者ajex的博客来了解更多。...解决办法就是换用requestanimationframe播放,在fnStartAnimation方法里添加createjs.Ticker.timingMode = createjs.Ticker.RAF...("tick", stage); //默认的设置 //createjs.Ticker.timingMode = createjs.Ticker.RAF_SYNCHED; //建议设置 createjs.Ticker.timingMode
【一、项目背景】 createjs是一个基于canvas的制作H5游戏、动画、交互的库。包括EaselJs、TweenJs、SoundJs、 PreloadJs四个部分。...function init() { stage = new createjs.Stage("canvas"); } 4、定义画图形方法buildShapes(),调用createjs.Shape...function startGame() { createjs.Ticker.setFPS(60); createjs.Ticker.addEventListener("tick", function...createjs.Tween.get(shape).to({x:shape.homeX, y:shape.homeY}, 200, createjs.Ease.quadOut); 10、定义赢的方法...3、大家可以尝试了解createjs的其他模块,官网上有对应的API文档供大家学习。 4、按照操作步骤,自己尝试去做。
. */ function sourceController() { this.root = ""; this.callfunc = null; // 回调函数 this.css...// 如果有js文件,开始加载js if (obj.script.length > 0) { addTask(createJs...// 如果有js文件,开始加载js if (obj.script.length > 0) { addTask(createJs...* @param obj 当前对象 */ function createJs(obj) { // 如果没有js文件,不加载 if (obj.script.length...script.getAttribute("src")); if (obj.script.length > 0) { addTask(createJs
============================================================== 除上述全部编辑器之外,还不得不提及两个比较牛逼的js库,用于辅助动作制: CreateJS...:http://www.createjs.com/#!.../CreateJS GSAP-JS:http://www.greensock.com/gsap-js/ CreateJS被Adobe CC用于导出html5动画,而GSAP的制作者GreenSock
缺点: 界面能力不友好 生态很差 # Egret(白鹭) 优势: 工具链比较完善 第三方库支持好 企业定制能力强 缺点: 更新迭代遭瓶颈 生态较差 # CreateJS...库 & Phaser 游戏引擎 CreateJS:它是多个库的集合,EASELJS (控制素材展示与组合)、TWEENJS (控制素材缓动动画)、SOUNDJS (控制声音)、PRELOADJS (控制加载...Phaser 游戏引擎:除了 CreateJS 为基础的展示、声音、动画、加载系统,还设计了摄像机、物理引擎、内置浏览器、插件系统等高级功能。...Sprite(精灵):在 Pixi 或者更多游戏引擎中的 Sprite 是一个用于承载图像的对象,你能够控制它的大小、位置等属性来产生交互、动画 显示一个精灵: 让精灵动起来: 使用游戏循环的处理函数添加动画
本节开始,我们将基于上一个项目所学到的知识,利用createjs 和 Tween两个图形绘制库开发一款新的游戏,名为欲望都市。...先像以前项目一样启动一个新的VUE工程,然后在index.html里面把createjs和tween这两个库引入项目,代码如下: <!...x: this.gameWidth + 50}, 0).wait(500).to({x: -300}, 50 * 1000) return layer } layer函数是所有图层对象的基础...bgLayer()函数绘制的就是背景图层了,它先加载两张图片,作为位图对象,这两张图片对应两片云彩,代码分别设置两片云彩图案在页面上绘制的位置y坐标为30和300,透明度是0.4,其中两个语句: this.cjs.Tween.get...layer, '100', 16, 845, 32, 'center') } } 上面代码加载了几个图片,并生成了几个字符串对象,然后把他们添加到一个图层容器中,最后我们在初始化函数中
createjs 这是HTML5动画引擎比较好用,也比较小的一个,如果项目纯碎为了播放骨骼动画,而不是一个游戏,强烈推荐用这个。缺点是对webgl支持不好,官方也没什么动作去做好webgl的支持。...步骤大概是: 引入spine官方的spine.js 读取纹理atlas,根据atlas部件数量,建立相应的createjs图元和从属关系 读取动画json,新建spine.Skeleton、spine.AnimationState...混淆后只有13KB,而createjs达到100+KB,PIXI是287KB,更不用说白鹭引擎和cocos2d-js了,相对而言,他们就是巨无霸。...整个思路跟createjs类似,但我做了一层封装,所以播放spine动画会相对简单一些。...补充一句:createjs和min2d都只支持region类型的attachment,不支持skinnedmesh。
01.gif 具体实现方式如下: 主要用到的就是animation的steps函数,兼容性还是非常不错的。...steps(1, end) cubic-bezier(0.1, 0.7, 1.0, 0.1);//贝塞尔曲线 steps(number, end);//从number位置开始,逐步执行 其中steps函数我们在上面序列帧动画使用过...,它其实就是动画拆成n步,逐步执行的动画函数。...(4)CreateJs CreateJS 官方提供了 TweenJS 支持动画开发,同时通过 SoundJS 和 PreLoadJS 提供了音频和预下载的支持,对于 H5 游戏基础功能的支持是足够的。...在兼容性方面,CreateJS 支持 PC 端和移动端几乎所有的浏览器。此外,CreateJS 还支持用 flash CC 开发导出由 CreateJS 渲染的 H5 游戏。
在此我想到了三个方案:纯H5+CSS3、视频、animate cc+createjs。...实际上,animate cc+createjs的实现动画的方式有很多好处,在此简单列举一下: 1.可视化实现,制作时可以很直观地看到效果。 ?...将createjs.Ticker.timingMode设为createjs.Ticker.RAF。...而设置为createjs.Ticker.RAF后,会改用requestAnimationFrame来播放动画,在安卓机上也能流畅播放。...4.声音不要放在createjs提供的预加载方法上。因为没有缓存,声音文件预加载会严重拖慢loading的速度。
经过一段时间的摸索,发现AnimateCC(就是原来的Flash)可以导出canvas动画,而且是基于createjs这个开发轻量级游戏的js库的,非常适合用来做移动端的一些h5动画。...Createjs CreateJS为CreateJS库,可以说是一款为HTML5游戏开发的引擎。目前被Adobe整合到Animate CC中,作为导出canvas动画的基础javascript库。...TweenJS:补间动画”引擎 SoundJS:音频播放引擎 PrloadJS:资源预加载 具体的文档和Demo介绍以及API的使用方法,可以通过官网来了解:http://createjs.com/docs...比如下面这个小的h5动画,使用上面的animate cc和createjs两天就可以搞定: 雪碧图功能 如果碰到图片很多的项目怎么办呢?...下面给大家推荐一个学习an和createjs方面的非常不错的博客,把上面的教程看完,基本上就可以出师了:
/static/assets.js"> window.createjs = createjs...,一旦它执行后,它会调用init()函数执行组件的初始化工作。...我们看看init()初始化函数的实现: methods: { init () { this.cjs = window.createjs this.assetsLib...,我们先获取createjs对象,图片的显示和特性都需要该类库提供支持。...最后两个函数我们我们还没有实现,他们的代码将在下节课程中再实现。
script> var canvas = document.getElementById("myCanvas"); var stage = new createjs.Stage...(canvas); var manifest; var preload; var progressText = new createjs.Text(""...+i+".png" }) } //开始预加载 function startPreload() { preload = new createjs.LoadQueue...(true); //注意加载音频文件需要调用如下代码行 preload.installPlugin(createjs.Sound);