游戏引擎 白鹭(egret)学习总结(一)

来源:互联网 发布:白虹软件倒闭 编辑:程序博客网 时间:2024/04/28 10:36

今天了解并学习了下这个游戏引擎(egret),个人觉得这是个不错的游戏引擎,对于以后游戏的开发有非常大的帮助,以下是自己的学习心得总结,有兴趣的同学可以去官网了解 http://www.egret.com/

好了 不废话了 这是我一天下来的成果,希望对你有所帮助,坚持每天更新 。。。

一:基本介绍



1:下载安装


2:指定目录下创建项目根目录:
1:cmd命令 egret create Helloworld(项目名称),创建成功后即可在相应目录查看到创建的目标文件夹


3:编译egret改动后均要重新build:
进入您的项目目录,执行 egret build, Egret 会编译您的 TypeScript 代码到 bin-debug 目录,拷贝 src 和 template 中的其他文件到 bin-debug 中。(如果希望升级该项目请使用egret upgrade。)
注:egret版本更新后,进入您的项目目录,执行 egret upgrade来升级项目代码。在 Egret 2.5 之前的版本下升级完成之后需要执行egret build -e 来重新编译一下引擎。


4:升级项目:
进入您的项目目录,执行 egret upgrade来升级项目代码。在 Egret 2.5 之前的版本下升级完成之后需要执行egret build -e 来重新编译一下引擎。


5:打开浏览器:
进入您的项目目录,执行 egret startserver, Egret 会启动内置的 HTTP Server 并打开浏览器。 -a 启动自动编译    -port [port number] 指定启动 Server 的端口


6:发布项目:
进入您的项目目录,执行 egret publish, Egret 会合并编译您的 TypeScript 代码,压缩之后拷贝到 bin-release 目录,拷贝 src 和 template 中的其他文件到 bin-release 中。替换模板中的第三方库 Script 为 


release 版本。(--runtime 设置发布方式为 html5 或者是 native方式,默认值为html5。--version 设置发布之后的版本号,可以不设置。--password设置发布zip文件的解压密码。)
例如:egret publish Helloworld  --runtime native


7:清理项目:
在根目录下执行 egret clean demo(注意:clean 命令只会用 Egret 根目录中 build 文件夹下的文件,覆盖 libs 目录中的同名文件,其他第三方库不会被删除,当然也有可能 Egret 本身的扩展库在新版本中被删除,


这种情况请手动删除旧版本的扩展库。)


8:执行输出路径:  执行 egret info, Egret 会输出 Egret 安装目录和版本信息。








二:代码部分
1:graphic属性
Shape对象中有graphic属性,用来专门负责图形绘制的工作。
2:用beginFill来设置填充颜色。
3:用drawRect来绘制矩形   类似的绘制函数还有drawCircle等,可以绘制不同的简单形状
4:endFill用来结束绘制工作。
5:addChild() 这是Egret引擎操作显示列表的一个最常用的方法,就是将某个显示对象添加到某个显示容器上。
6:html中的部分属性:data-entry-class="Main"<!--Main.ts 中的类-->      data-scale-mode="noBorder(占满屏幕)  or  showAll(不进行缩放)"<!--屏幕适配-->
7:touchEnabled 方法: 意即允许该显示对象响应Touch事件,这是Egret中特别需要注意的问题。因为所有的显示对象,默认都是不响应Touch事件的
8:addEventListener 新增一个方法的引用,这就是事件处理函数,我们需要事件处理函数中对用户操作做出对应的反应 
例:tx.addEventListener( egret.TouchEvent.TOUCH_TAP, this.touchHandler, this );//事件
private touchHandler( evt:egret.TouchEvent ):void{//方法
    var tx:egret.TextField = evt.currentTarget;
    tx.textColor = 0x00ff00; 
}
另一种简洁的写法直接作为匿名函数传入:
tx.addEventListener( egret.TouchEvent.TOUCH_TAP, function( evt:egret.TouchEvent ):void{    
        tx.textColor = 0x00ff00; 
    }, this );
0 0
原创粉丝点击