《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
字樣。運行結果以下圖。