createjs是一个轻量级的框架,稍微有点时间和耐心,就可以把全部源代码都看一遍,毕竟只有三十几个js文件。...地址:http://www.createjs.com/ 开发createjs的动画或游戏,没有重型的IDE或什么工具支持,我们只能从零开始写js。...一方面,这样对于jser来说,足够灵活;另外一方面,createjs因此足够精简足够小。...2、 建立html和canvas标签,onload后再执行createjs相关逻辑。 3、 编写createjs逻辑。...这个非常简单,因为createjs只提供了最简单的基础功能,我们理解了基础功能后就可以叠积木了。 关于createjs,最关键是要理解类结构 ?
同时为了便于在canvas上绘制图案,我们引入一个第三方库叫做CreateJS,它能帮我们管理在canvas上绘制的各种图形。 ? 乘法防线的游戏目的是为了帮助小学生学习乘法运算法则。...接下来我们看看如何绘制含有数字的盒子。...,它先从createjs库中创建一个Container对象,container跟前面讲过的Stage类似,是可以用来包含显示元素的容器对象,同时定义了盒子的绘制样式style, style.strokeWidth...接着构建一个绘制对象叫Shape,这个类专门用来绘制盒子,Shape包含一个子类叫graphics,通过这个类设置前面定义的绘制样式,最后通过drawRect函数把盒子绘制到Shape对象里面,最后用addChild...CreateJS 提供的这些接口类,目的是让我们方便的在canvas上绘制各种复杂的图形图像,或者是高效的显示动画效果。
function init() { stage = new createjs.Stage("canvas"); } 4、定义画图形方法buildShapes(),调用createjs.Shape...()方法 用graphics绘制描边正方形。...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、定义赢的方法...【六、总结】 1、本文主要介绍了createjs中EaselJs、TweenJs的用法,以及对stage是如何创建的,在stage上怎么去绘制图形。在页面上如何去呈现stage。
继上一节我们已经在画面上完成了数字盒子的绘制,现在我们就启动游戏主循环,在主循环中驱动游戏流程,在此,我们先实现盒子从上往下落的效果。...createjs库给我们提供一种有效的动画实现机制,它会导出一个Ticker类,该类提供了一个接口setFPS, 例如通过调用createjs.Ticker.setFPS(40), 那么createjs...提供的其他接口绘制页面就能实现动画效果了。...getTicks接口,我们能获得当前函数被回调了多少次,如果回调的次数正好是80的倍数,也就是this.ticksPerNewBox的值的倍数时,我们通过this.generateNumberBox()在页面上绘制新的数字盒子...12个下面代码所描述的DOM元素: 这些元素将在页面上被绘制成两排数字键盘
/static/easeljs-0.7.1.min.js"> window.createjs = createjs...boundaryY: 320 .... } 我们把这条分界线放在y坐标为320个像素单位处,然后我们在指定位置绘制一条红线: methods: { init () { ....我们要给玩家三次机会,当有三个数字盒子落到红线以下,游戏就该结束了,我们先在左上角绘制三个标记,在script标签处添加一下代码: export default { data () {...gameOverShow设置为true,那么前面我们添加的div元素就会被显示出来,当div元素对应的’replay’按钮被点击后,gameOverClicked()会被调用,它会清空页面上所有数字盒子,同时重新在左上角绘制三个红色方块.../static/images/input_button.png); .... } 我们把图片引入页面,并通过代码将图片在相应的地方绘制出来,这里的改动有三处,一是把黑色背景换成图片
Createjs CreateJS为CreateJS库,可以说是一款为HTML5游戏开发的引擎。目前被Adobe整合到Animate CC中,作为导出canvas动画的基础javascript库。...它是一款为HTML5游戏开发的引擎,包含: EaselJS:用于 Sprites、动画、位图的绘制,交互体验(包含多点触控)功能。...images -> 动画所用的图片资源 1.hmt -> html文件 1.js -> canvas所需要的图形全部转成canvas绘制的元件库 打开导出的js文件,可以看到刚刚在影片剪辑里做的类链接已经在...() 这里可以是额外处理的对象 } var p = createjs.extend(View1,createjs.Container); cls.View1 = createjs.promote...fnStartAnimation = function() { createjs.Ticker.setFPS(lib.properties.fps); createjs.Ticker.addEventListener
它包含一个带有所有绘制矢量图形的方法的Graphics(图形)实例。Graphics实例可以在多个Shape实例之间共享,以做到一样的矢量图形在画布上有多个不同位置和不同变形的复制。...如果这个矢量图在之后的绘制中不会改变样子,你可以使用cache方法把它缓存起来,以减少再次渲染时的性能花销。...代码例子: var graphics = new createjs.Graphics().beginFill("#ff0000").drawRect(0, 0, 100, 100); var shape...= new createjs.Shape(graphics); //也可以使用Shape的graphics属性绘制出与上面一样的效果 var shape = new createjs.Shape()
三、设计创作 确定好创意后,接下来就是设计师的创作过程了,概括一下就是:角色制定、场景分镜、确定风格、绘制。以下逐一进行介绍: 1.角色制定。根据这个命题,设计师绘制了主角白和橘。...后来修改了一下) 2.绘制分镜及需要的元素。画的比较草,因为后续还会有修改,能明确需要画什么元素、有什么场景就好。 ? 3.找大量参考,确定风格。 ? 4.根据风格,草图,着手绘制。 ?...在此我想到了三个方案:纯H5+CSS3、视频、animate cc+createjs。...将createjs.Ticker.timingMode设为createjs.Ticker.RAF。...4.声音不要放在createjs提供的预加载方法上。因为没有缓存,声音文件预加载会严重拖慢loading的速度。
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()
本节开始,我们将基于上一个项目所学到的知识,利用createjs 和 Tween两个图形绘制库开发一款新的游戏,名为欲望都市。...先像以前项目一样启动一个新的VUE工程,然后在index.html里面把createjs和tween这两个库引入项目,代码如下: window.createjs =...gamecontainer.vue这个容器组件,它的内容跟上一个项目一样,这里就不详述了,我们看看gamecomponent.vue的代码实现,首先我们需要给页面添加一个canvas控件,因为所有的游戏动画都需要绘制在...bgLayer()函数绘制的就是背景图层了,它先加载两张图片,作为位图对象,这两张图片对应两片云彩,代码分别设置两片云彩图案在页面上绘制的位置y坐标为30和300,透明度是0.4,其中两个语句: this.cjs.Tween.get
接下来我们开始基本场景的设计,先把以前我们准备好的VUE项目复制一份,并改名为BallShooting,同时把相关开发库,例如createjs,Box2D等放入到static目录下: ?.../static/preloadjs-0.4.1.min.js"> window.createjs =...createjs Shooting A Ball </div...mounted () { this.init() }, methods: { init () { this.cjs = window.createjs...showDebugDraw () { // 为了确保设计的正确性,我们可以把图形先进行调试绘制 // 确定没问题后再把图形绘制到画布里 this.shouldDrawDebug
Createjs CreateJS为CreateJS库,可以说是一款为HTML5游戏开发的引擎。目前被Adobe整合到Animate CC中,作为导出canvas动画的基础javascript库。...它是一款为HTML5游戏开发的引擎,包含: EaselJS:用于 Sprites、动画、位图的绘制,交互体验(包含多点触控)功能。...images -> 动画所用的图片资源 1.hmt -> html文件 1.js -> canvas所需要的图形全部转成canvas绘制的元件库 打开导出的js文件,可以看到刚刚在影片剪辑里做的类链接已经在...比如下面这个小的h5动画,使用上面的animate cc和createjs两天就可以搞定: 雪碧图功能 如果碰到图片很多的项目怎么办呢?...下面给大家推荐一个学习an和createjs方面的非常不错的博客,把上面的教程看完,基本上就可以出师了:
参数说明: 五、WebGL与Canvas 当页面动画复杂性较高时,使用dom进行绘制可能会出现性能问题,画面会出现卡顿,此时可以考虑WebGL或Canvas进行渲染。...1、性能对比 从结果中可见,当需要执行大量绘制任务时,WebGL的性能远远超越了Canvas 2D Api,达到了后者的数10倍。...(2)Pixi.js 一般来说,WebGL 的渲染速度都会比 Canvas 快,这是由俩者的绘制路径决定的。...(4)CreateJs CreateJS 官方提供了 TweenJS 支持动画开发,同时通过 SoundJS 和 PreLoadJS 提供了音频和预下载的支持,对于 H5 游戏基础功能的支持是足够的。...在兼容性方面,CreateJS 支持 PC 端和移动端几乎所有的浏览器。此外,CreateJS 还支持用 flash CC 开发导出由 CreateJS 渲染的 H5 游戏。
【二、项目准备】 1、去网站: http://www.createjs.cc/ 下载EaselJs、TweenJs这两个模块。 ?...createjs.DOMElement("instrutions"); d.alpha=0; d.x=50; createjs.Tween.get...createjs.Tween.get(d).wait(100).to({y:40,alpha:1},2000,createjs.MotionGuidePlugin.bounceIn); 5)组件添加到舞台...(stage),createjs.Ticker.addEventListener("tick",stage);表示刷新舞台。...3、大家可以尝试了解createjs的其他模块,官网上有对应的API文档供大家学习。 4、按照操作步骤,自己尝试去做。
类介绍 Graphics类公开了一个易于使用的,用于生成矢量图和把它们绘制到指定的内容里的API。注意,你可以不需要依赖EaselJS框架,通过直接调用draw来使用Graphics。...或者它也可以和Shape 对象一起,用于在EaselJS显示列表中绘制矢量图形。...var g = new createjs.Graphics(); g.setStrokeStyle(1); g.beginStroke("#000000"); g.beginFill("red"); g.drawCircle...(0,0,30); Graphics里所有绘制的方法最后都会返回此次绘制的Graphics实例,所以它们可以连起来写(链式写法)。...例如,下面一行代码可以绘制一个红色描边和蓝色填充的矩形: myGraphics.beginStroke("red").beginFill("blue").drawRect(20, 20, 100, 50
通过调试生成的h5,我们可以发现Animate CC是在canvas上通过createjs引擎绘制动画的。关于createjs,大家可以看看其中文社区 、或者ajex的博客来了解更多。...解决办法就是换用requestanimationframe播放,在fnStartAnimation方法里添加createjs.Ticker.timingMode = createjs.Ticker.RAF...fnStartAnimation = function() { createjs.Ticker.setFPS(lib.properties.fps); createjs.Ticker.addEventListener...("tick", stage); //默认的设置 //createjs.Ticker.timingMode = createjs.Ticker.RAF_SYNCHED; //建议设置 createjs.Ticker.timingMode...ajex的博客有一篇《createjs性能优化》,大家可以看看。不过以我目前做动画的经验来看,做了上面2点优化方案,就可以比较流畅了。
Pixi.js 一般来说,WebGL 的渲染速度都会比 Canvas 快,这是由俩者的绘制路径决定的。...CreateJS ?...CreateJS 周边产品 CreateJS 官方提供了 TweenJS 支持动画开发,同时通过 SoundJS 和 PreLoadJS 提供了音频和预下载的支持,对于 H5 游戏基础功能的支持是足够的...在兼容性方面,CreateJS 支持 PC 端和移动端几乎所有的浏览器。此外,CreateJS 还支持用 flash CC 开发导出由 CreateJS 渲染的 H5 游戏。
注意,画面上的网格是我们用代码绘制上去的,不是图片自身带有的。...我们后面会把这个网格图案绘制到页面上,最终形成我们看到的那样大片网格区域。...,然后创建一个用于绘制网格区域的容器叫tiles,并通过调用create2DArray,生成一个9*9的二维数组,然后我们生成81个网格位图对象,redraw除了把网格绘制到页面上外,还把这些网格对象存储在这个二维数组里...我们在createButton函数中使用createjs库提供的函数来创建按钮: var spritesheet = new this.cjs.SpriteSheet(data) var button...mounted () { this.cjs = window.createjs this.init() Constant.Event.
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只能从零开始,一切都得靠开发者自行实现。
/static/assets.js"> window.createjs = createjs...我们看看init()初始化函数的实现: methods: { init () { this.cjs = window.createjs this.assetsLib...board.addChild(sprite) sprite.y = board.tileHeight return board }, 在init函数里,我们先获取createjs...,而背景图片就是assets.Background()接口返回的,我们把背景图绘制到bgLayer对象里,然后把该对象加入舞台容器控件,也就是stage,这样背景图片就可以显示在页面上了, 背景图的部分显示如下...而effectLayer这个图层则用来绘制动态特效,例如飞动的E奖章,以及炮台射出的子弹。
领取专属 10元无门槛券
手把手带您无忧上云