纠正一些前端转做createjs的一些误区

  • 内容
  • 评论
  • 相关

现在越来越多的前端童鞋转做createjs了,总体来说遇到的问题比flash转createjs的多,嘛,虽然语法上前端比flash人员更适应,但是毕竟做出来的东西的应用面不一样难免会有些问题,今天我就纠正一些前端人员的误区。

1.一般来说都是绝对定位,相对定位得写在tick或者resize中。

写惯前端的童鞋一般都是使用相对定位的,比如这个div是相对于上面div的下边,但是如果在createjs里你就乖乖的一个个定义x,y值(相当于前端的top和left),如果显示对象本身是会改大小的必须相对怎么办?那就在tick或者resize中,比如显示对象1.y = 显示对象2.y + 显示对象2.height(createjs中只有scaleY没有height,height需要自己算)。那自适应怎么办?createjs的自适应是控制总的容器的大小和位置,关于这方面大家可以直接在我博客里找文章,写的还是蛮详细的。

2.容器嵌套不要太多,能用多“少”就用多“少”。

一般前端童鞋做网页的时候为了排版,都会定义很多div,有时候某些div只是为了排版而已,而这个在任何游戏引擎中都是大忌,因为增加容器的嵌套会增加游戏运行的负担,所以在做游戏的时候尽量减少容器嵌套。

3.多用位图少用矢量

前端做网页的观念是,少用图片,多用css,这样可以加快网页加载速度。createjs没有css,相对应的是矢量graphics,用graphics虽然也能加快加载速度,但是运行速度会大打折扣,这点所有游戏引擎也一样,所以在做游戏的时候是能用图片就用图片。

4.不要把canvas当做一个标签

很多前端童鞋只把canvas当做一个标签,进而使用很多canvas。但是这样实际上会使createjs运行效率减慢,因为需要刷新多个舞台。前端童鞋需要把canvas就当做是一整个网页(这个是针对需要多个canvas的时候,单个canvas你还是可以只把他当做标签)

5.少用外部框架做缓动(我指的是不要缓动dom,同样是缓动canvas内部元素的插件是可以用的,比如gsap)

外部框架的缓动是针对整个canvas标签的,而createjs内部有缓动(用起来没其他框架方便而已),内部的缓动是针对内部的显示元素的,这样不但可以增加性能,还可以避免某些意外的bug(没错,你直接拿canvas本身来移动会出问题,就像你把一辆轿车装进卡车移动一样)。自己写缓动写算法很难?其实缓动算法是游戏算法中算比较简单的一种,如果你真心想往游戏方面发展,想往H5方面发展,这些算法你必须掌握,一开始觉得难,这点谁都一样,开始学会写好一个算法后面就会越来越容易。

6.animateCC

这个单纯针对createjs了,这个一直有很大争议,有些觉得要学,有些人觉得可以不学,本人认为呢,你一开始可以不学,但是后面多少还是要学点的,至少要学会和动画师协作么。其实不仅是createjs,白鹭laya等一些游戏引擎也有动画工具的,用起来比animateCC还要麻烦,比如龙骨,所以多少还是学点吧。找不到教程?先从flash教程开始看,会做动画后,再看本人博客里的协作博文。

最后再讲一下,很多人都希望本人能出animateCC的视频,不是本人不想出哈,真的是忙,结婚装修懂的人都知道会很忙。出视频本人还需要剪辑,比较麻烦,不过也有简单的方法,就是直播,本人答应只要有超过50个人报名想学,并有人帮我录屏,本人就会抽出时间来直播,保证简单易懂,一学就会,还不收钱。怎么报名?,进createjs群320648191报名。

评论

1条评论
  1. Gravatar 头像

    彭江 回复

    谢谢群主一直以来对本人的帮助

发表评论

电子邮件地址不会被公开。