《HTML5游戏开发》系列文章的目的有:1、以最小的成本去入门egret小项目开发,官方的教程一直都是面向中重型;2、egret能够很是轻量;3、egret相比PIXI.js和spritejs文档更成熟、友好;4、学习从0打造高效的开发工做流。html
本文的目的很简单,就是让开发者本身可以避免繁杂的项目配置,极速地建立和跑起一个egret实例,提高对egret开发的兴趣。官方那一坨对初学者过重了。webpack
完整的源码请见:github.com/wildfirecod…git
在线访问地址:wildfirecode.com/egret-hello…github
在根目录建立index.html
文件,这是本地项目访问入口。 在body
标签内建立class属性值为egret-player
的div标签,这是画布canvas
的容器。在标签上添加data-entry-class
属性,并把它的值设为Main
,来指定程序的入口。详细以下:web
<div style="margin: auto;width: 100%;height: 100%;" class="egret-player" data-entry-class="Main">
</div>
复制代码
而后,在index.html
使用CDN的方式引入Egret的代码库文件egret.min.js以及egret.web.min.js。chrome
<script src="https://yun.duiba.com.cn/db_games/egret_5.2.9/egret.min.js"></script>
<script src="https://yun.duiba.com.cn/db_games/egret_5.2.9/egret.web.min.js"></script>
复制代码
以后,咱们再把用户代码文件main.js
引入进来。canvas
<script src="main.js"></script>
复制代码
在根目录建立main.js
用户代码文件,并在其中建立一个名为Main
的class,以后把这个class暴露到window
全局对象中。 在onAddToStage
方法中,咱们建立了一个红色的文本框,文本内容为hello world
。post
class Main extends egret.DisplayObjectContainer {
constructor() {
super();
this.addEventListener(egret.Event.ADDED_TO_STAGE, this.onAddToStage, this);
}
onAddToStage(event) {
let textfield = new egret.TextField();
this.addChild(textfield);
textfield.textColor = 0xff0000;
textfield.text = 'hello world';
}
}
window['Main']=Main;
复制代码
这里说明一下几个问题:学习
egret
是引擎的全局命名空间。Main
类必需要继承egret.DisplayObjectContainer
这个基类。引擎约定入口类必须是一个可显示的容器对象
,容器对象中能够填充其余的可显示的对象
。egret.TextField
是引擎中用来显示文本的一个类,它的实例就是一个可显示的对象
,咱们用egret.DisplayObjectContainer
类的addChild
方法来把建立的文本框添加到显示容器
中去。最后咱们把下面的代码放入main.js
尾部来启动引擎。ui
egret.runEgret();
复制代码
咱们用chrome来运行index.html
即可以看到在画布上出现了红色的hello world
字样。运行结果以下图。