自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 h5游戏工具集的设计

一:热更工具的设计 1:补丁生成原理 遍历所有文件,为每个文件生成md5码并记录 当次生成的md5文件和上次md文件对比,找出差异文件 差异文件依目录拷贝出来 2:补丁热更原理 laya本地缓存策略:缓存最近50m,当到达临界值时删除最先5m laya版本管理策略:发布时所有资源重新命名(名字+hashcode)保证和上次不重复,生成version.json记录原有资源和新资源映射关系,读取资源时通过原资源名映射获取新资源,本地资源热更通过与上个资源名不一致实现本地资源热更 3:工具设计 遍

2021-09-15 19:39:33 402

原创 fairygui下autoui代码的两种压缩方案

autoui的生成压缩方案及其对比 1:原生方案: 原生的ui定义文件 原生的binder文件 2:方案1 40%的压缩率写方法集合 方案1的binder文件 方案1的ui定义文件 合并getChild为:this.getChilds("com_card",””) 合并getTranstion为this.getTransitions 合并getController为getControllers 合并bindall下面的调用,只需要传类名即可 修改...

2021-09-15 19:14:07 339

原创 字典树实现高性能屏蔽字算法(原理及实现)

前言:前段时间看到公司的游戏使用的暴力遍历的方法去实现游戏的屏蔽字算法,后续发现这种算法的效率比较低下,所以在网上百度了相关资料,了解了trie树,所以现在用trie树去实现一个屏蔽字算法。 trie树的构建原理:trie 树也称为字典树、单词查找树,最大的特点就是共享字符串的公共前缀来达到节省空间的目的了。例如,字符串 "abc"和"abd"构成的 trie 树如下: trie 树的根节点不存任何数据,每整个个分支代表一个完整的字符串。像 abc 和 abd 有公共前缀 ab,所以我们可以共...

2021-09-15 14:02:14 1349 3

原创 从零开发一个h5游戏:超实用的前端红点管理器实现

这里我们要设计一个前端红点管理器: 红点管理的实现原理基本就是是一颗树的实现原理,在游戏开始时初始化红点的关联状态,游戏中我们通过对红点树的叶子节点状态进行更新,从而更新父节点的状态。这里我们为了让叶子节点能够关联多个父节点,使用图的方法去实现这个前端红点,并且一个红点key也可以同时注册关联多个红点ui。 在这个红点管理器中我们加入了模块开启的判断,可以通过功能模块的开启状态来改变前端红点的状态。 下面就让我们上代码吧: import { util } from "../util"; import {

2020-05-16 01:07:21 746

原创 从零开发一个h5游戏:事件管理器的设计

从零开发一个h5游戏:事件管理器的设计 class GameEvent { private static uniKey = 1; public static getUniKey():string {//生成唯一的事件key return ++uniKey+""; } //所有的事件 public static TEST_EVENT_ONE= this.get...

2020-01-15 23:29:53 528

原创 从零开发一个h5游戏:对象池管理器的设计

开发一个h5游戏需要的系统:对象池管理器的设计 //所有对象池类均要实现此接口 export interface IPoolable { init();//对象池取出初始化 reset();//对象池放回重置 } export class PoolMgr extends BaseClass { private _poolMap = {};...

2020-01-15 22:45:36 353 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除