学习规划
- 学习基础: TypeScript, LayaAir
- 学习LayaAir2D UI模块
- 测试发布微信
- 验证FairyGUI发布微信
- 验证FairyGUI没问题,深入学习使用
- 学习Shine的使用
- 学习Http通信, 验证微信通信
- 学习Websockt通信, 验证微信通信
- 学习资源分包,验证微信资源加载
- 验证微信资源更新
- 测试JSON, XML
- 测试Web Storage数据存储,验证微信
- 验证微信支持文件格式有哪些
- 测试声音,验证微信
- 测试获取地理位置信息,验证微信
- 测试发布应用
- 测试图集
- 测试富文本, 验证各个微信、浏览器和APP
- ipv6服务器搭建
框架搭建
- 配置生成,读取
- 协议生成,读取
- 资源加载
- 资源更新
- Http通信
- WebSocket通信
- FairyGUI接入
- 模块管理(Modlue, Menu)
- 消息事件Signal
- 公共组件
-
游戏数据模型(UserData, Prop, Hero, Item)
- 生成FGUI资源URL变量kEY
-
封装FGUI资源加载卸载(后续资源加密)
- 调试GM工具
- 配置加密
- 资源加密
- 资源缓存
-
应用资源更新
- 演员属性配置表
-
角色属性配置表
- GameSetting 游戏设置配置
约定
- 公共UI
- 公共组件
- 代码命名空间、模块命名规则
- UI组件命名规范
- 多语言
约定--多语言--配置表
字段名用两个下划线分割"__"
zh_cn 中文简体 zh_tw 中文繁体 en_us 英文美国 en_us 英文美国 ja 日文 ko 韩文 de 德文
| string | string | string |
| 名称 | 名稱 | Name |
| name__zh_cn | name__zh_tw | name__en_us |
程序规格
- 微信主包只能是4M以内
- 引擎代码占用2M
- FairyGUI占了1.2M (不包含引擎, 包含一点点图片就相当于加载界面)
- 游戏代码最多只能占0.8M
缓存资源规格
- 配置文件假设5M
- 字体都用系统文字
- UI资源1M
- 图片资源5M (Icon, 卡牌等)
- 角色资源5M (演员包含动画)
- 角色资源5M (演员)
GameSetting 游戏设置配置
// 运行模式
enum RunModel
{
// 开发模式
Develop,
// 发布模式
Release,
}
// 语言
enum LangType
{
// 中文简体
ZH_CN,
// 中文繁体
ZH_TW,
// 英文美国
EN_US,
}
// 压缩打包和加密设置
interface ZipAndEncryptSetting
{
//是否压缩打包
zip:boolean = false;
//是否加密
encrypt:boolean = false;
}
// 游戏设置
class GameSetting
{
// 运行模式
RunModel:RunModel = RunModel.Develop;
// 配置文件
Config: ZipAndEncryptSetting = {zip: false, encrypt: false};
// 协议文件
Proto: ZipAndEncryptSetting = {zip: false, encrypt: false};
// UI文件
GUI: ZipAndEncryptSetting = {zip: false, encrypt: false};
}
动态图片资源配置约定
图片资源,为了避免冗余配置,都配置到avatar里。 所有的图片资源路径规则。只能有2层, 不需要写后缀 PackageName/ResName PackageName也就是文件夹名,只能有一层文件夹 如: Icon/item_001 Icon/item_002 Head/head_tangsheng Head/head_zhubajie
多语言约定
默认配置里