Egret Launcher 引擎入门教学笔记(一)

265 阅读5分钟

一.游戏的介绍

1.游戏的种类

  • 端游(客户端游戏)

  • 端游就是客户端游戏,是在电脑上进行的(网络)游戏

  • 比如英雄联盟/绝地求生/cod战区/战地 等等

  • 页游(网页游戏)

  • 网页游戏又称web游戏,无端游戏,简称页游,基于web浏览器的网络在线游戏

  • 比如 4399游戏 等等

  • 手游(手机游戏)

  • 手机游戏就是运行在手上的游戏软件

  • 比如王者荣耀/QQ飞车 等等

  • h5游戏

  • h5游戏是一系列制作网页互动效果的技术集合,即h5就是移动端的web页面

  • 比如围住神经猫

  2.游戏类型

  • 休闲益智:开心消消乐

  • 角色扮演:阴阳师

  • 动作冒险:神庙逃亡

  • 棋牌游戏:欢乐斗地主

  • 体育竞技:最强NBA

  • 射击游戏:绝地求生

  • 音乐游戏:节奏大师

  • 模拟经营:模拟城市

  • 策略游戏:植物大战僵尸

  • 塔防游戏:保卫萝卜

3.付费方式 

  • h5游戏的付费方式,从2014年初的100%广告付费或者品牌传播盈利,到2015年道具付费占据了半壁江山(47%)  ,道具收费的份额已经是提升到60%,而且还会继续提升份额
    (P:如果是真心做游戏就不要只考虑怎么赚钱,而且是想办法怎么提高用户的游戏体验)

二.H5游戏引擎

1.主流的h5游戏引擎 

          目前H5游戏市场上的主流引擎有白鹭引擎/Laya引擎/Cocos2d-html5引擎..其中在全渠道付费榜前30名的h5游戏中,超过50%用的白鹭引擎.(QQ>空间->小游戏->双人pk).

2.白鹭引擎 

           Egret致力于为移动领域提供完整高效的游戏及应用解决方案.该方案包含了开源游戏引擎,云平台,开发工具集,打包工具,加速器等等.旨在解决移动生态环境中各个环节的需求点.可以帮助开发者实现从项目制作到项目发布的高效平滑过渡. 

 三.h5游戏的渠道分布

  • 当前的html5游戏渠道估算有2000多家,其中多数为长尾渠道.h5游戏渠道的量主要来自四个方面: 

  • 第一类是来自投放采买的一部分流量,占h5游戏整体流量的20%.(今日头条). 

  • 第二类是社交平台,此类占整体流量入口的50%6.(微博/微信/微信公众号:爱微游.9G游戏,1758等等);

  • 第三类是浏览器,占游戏流量入口的20%6.(qq浏览器,UC浏览器).

  • 第四类是热门]APP占流量入口的10%(wifi万能钥匙/饿了么)

四.Egret引擎

1.工具集

  • Egret Engine:egret游戏引擎,包括EUI粒子系统等等

  • Egret Wing3:egret的IDE,可以自动构建,发布

  • Res Depot:egret的资源管理工具

  • Texture Meger:可以合并纹理集的工具

  • Egret Inspector:Chrome调试工具插件

2.脚本語言

        egret5l$ RfãJavaScript/TypeScript/ActionScript,TypeScriptjsjava/C#非常像

五.搭建开发环境

1.下載最新版的Egret Launcher,官网(htps://www.egret.com/ )
docs.egret.com/engine

2.注册账号并登录

3.下载引擎(我用的是5.2.33版本)

4.下载wing工具

5.打开wing 新建项目

6.我的项目

7 运行我的项目

运行之后可以看到项目的初始结果 

8.修改代码 体验自己第一个白鹭项目(hello xxx)
(关闭浏览器项目就会停下来关闭)

把hello 后面的可以改成自己想改的内容 然后 Ctrl+S 保存一下
然后再点行运

结果

六.TypeScript语言基础

 1.认识TypeScript

  • TypeScript是- -种 由微软开发的开源的编程语言.它是js的一个超集,向js添加了静态类型和基于类的面向对象.
  • 2012年的10月份,微软发布了首个公开版本的TypeScript.
  • 2013年6月,微软发布了正式版ts0.9.
  • 截止到目前(2020/5/14),ts的版本是3.9

2.变量与常量

  • 什么是变量

  • 变量是存储信息的容器,其中的值(内容)是可变的.

  • 变量的声明.

  • 我们使用var关键字来声明变量.

             var a;

  • es6之后推出一个新的关键字let来声明带有(块级作用域)属性的变量.

             let b; 

  • 使用 "=" 来赋值

              var a = 3 ;// a的值就是3

  • 如果只声明变量,并没有赋值那么该变量的值为undefined

             var b ; //undefined

  • 一条语句中可以声明多个变量

              var i, x, y;

              var i=2,x=3,y=6;

  • 变量的命名规则和规范

  • 不允许使用语言的关键字和保留字作为变量名;

              var var = 1; //报错

  • 不允许使用数字开头

  • var 3 = 1; //报错

  • var 3a = 3;//报错

  • 可以使用字母数字和下划线( _ )和 美元符号( $ ) 的组合

  • var a2 = 1;//正确

  • var q_1 =3;//正确

  • var a-1 = 2; //错误 

  • 变量名的命名规范

  • 变量声明的名称要见名识意

  • var imgwidth = 2;//这个命名直观知道是图片的宽的变量名

  • var imgaaaaa = 4;//很难看出

  • 命名法有 下划线命名法,小驼峰命名法,大驼峰命名法

  • var img_width = 2; //可读性高

  • var imgwidthandheight = 1;//可读性不高

  • var img_winth_and_heigh = 1;//可读性高

3.ts语言的数据类型

  • number: 数字

  • string:字符串

  • boolean:布尔值

  • Array:数组

  •   Tuple :元祖

  • enum :枚举 

  • any :任意类型

  • undefined:未定 义 

  •  null :空 

  •  number 

  •  int a= 3;// c语言中声明整型 

  • var b: number = 4;// ts声明-个nunber数据类型的b,并赋值为4;

  •  string字符串 

  • var str: string =“你好!";//正确 

  • // 在ts中单引号和双引号,没有区别,都是表示字符串

  • var str: string = '你好";// 错误

  • var str: string。'你好';//正确

  • boolean 

  • // true false 

  •  var a: boolean = false;

  •  enum枚挙 

  •  enum PRICE{

                             "apple",

                             "orange" 

                          }

                      console. log(PRICE .apple); 

  •  any 

  • var a: number = 9;

  • a='hello';// 报错

  • varb:any=9; 

  •  b = "hello";// 正磆, any数据尖型的変量,可以再次賦値カ任意尖型的値. . 

  • undefined 

  • var a;//a的值就是undefined 

  • null 

  • 与undefined相似, 都代表空. nul1代表是引用类型为空.

  • var n =null; 

 4.运算符和表达式

  •  运算符

  •  +.*/%>< &&....这些都是运算符.

  • 由变量(常量), 运算符组成的式子就是表达式。

  •  算术运算符 

  • 运算符:+- */% 

  • 表达式: a + b;a*b;50/3;6%4;

  • 功能:进行数学运算

  • 表值:算术运算的结果 

  • 注意:+这个符号的两侧如果出现字符串,则该+号就编程了[字符连接符]

  • var a = 3;

  •  a+4;// 7 

  • a+'4';// '34' 

  • 赋值运算符 

  • 运算符: = 2

  • 表达式: am 5; 

  • 功能: 是把等号右边的值赋值给等号左边的变量.

  • 表值:复制之后变量的值。

  • 注意:等号左侧必须是变量 .

  • 自増自減迄算符

  • 迄算符: ++(自増) --(自減)

  • 表込式: a+,+ta,a--,--a;

  • 功能:辻変量迸行自増或者自減 

  • 表値:

  • a++ (++在后面,先取変量的値作カ変量的値,然后辻変量+1);// a

  • ++a (++在前面,先辻変量加1,然后再取変量的値);// a+17

  • var a = 1;

  • var b = a++;// 1

  •  var c =  1;

  • var d = ++c;// 2

  • 复合运算符

  • 运算符:+=-+*=/=%=

  • 表込式: a+=3;

  • 功能:先进性算术运算 ,再迸行賦値运算.(a+=3等价于a = a + 3;)

  • 表値:最后賦値之后変量的値.

  • 注意:兩个符号 之囘不能出現空格

  •  a+ = 3;//错误 (应该是 a += 3)

  • 逻辑运算符

  • 运算符: && || !

  • 表达式:3 && 5; 3>4||5>3; !8;

  • 功能:进行逻辑运算

  • 表值:

  •  &&两侧有一个为假即为假

  • II两侧有一个为真即为真

  •  !非真即假,非假即真

  • 注意:所有代码层面的运算符号 ,统统为英文符号.

  • 逻辑运算符的短路现象。

  • var a =3;

  • a > 3 && a++;

  •  console.log(a);// 结果是3而不是4.

  • (可以用Google Chrome浏览器 右键检查 打开控制台 点 Console  复制运行查看结果 控下 回车键就可以看到结果 Chrome浏览器控制台可以直接运行 javaScript 代码 )

  • &&运算符的表达式,如果左侧的表达式为假,则右侧的表达式不再运算.

  • 运算符的表达式,如果左侧的表达式为真,则右侧的表达式也不再运算。

  • 运算符的优先级