- 博客(6)
- 收藏
- 关注
原创 h5游戏工具集的设计
一:热更工具的设计1:补丁生成原理遍历所有文件,为每个文件生成md5码并记录 当次生成的md5文件和上次md文件对比,找出差异文件 差异文件依目录拷贝出来2:补丁热更原理laya本地缓存策略:缓存最近50m,当到达临界值时删除最先5mlaya版本管理策略:发布时所有资源重新命名(名字+hashcode)保证和上次不重复,生成version.json记录原有资源和新资源映射关系,读取资源时通过原资源名映射获取新资源,本地资源热更通过与上个资源名不一致实现本地资源热更3:工具设计遍
2021-09-15 19:39:33
473
原创 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
390
原创 字典树实现高性能屏蔽字算法(原理及实现)
前言:前段时间看到公司的游戏使用的暴力遍历的方法去实现游戏的屏蔽字算法,后续发现这种算法的效率比较低下,所以在网上百度了相关资料,了解了trie树,所以现在用trie树去实现一个屏蔽字算法。trie树的构建原理:trie 树也称为字典树、单词查找树,最大的特点就是共享字符串的公共前缀来达到节省空间的目的了。例如,字符串 "abc"和"abd"构成的 trie 树如下:trie 树的根节点不存任何数据,每整个个分支代表一个完整的字符串。像 abc 和 abd 有公共前缀 ab,所以我们可以共...
2021-09-15 14:02:14
1532
3
原创 从零开发一个h5游戏:超实用的前端红点管理器实现
这里我们要设计一个前端红点管理器:红点管理的实现原理基本就是是一颗树的实现原理,在游戏开始时初始化红点的关联状态,游戏中我们通过对红点树的叶子节点状态进行更新,从而更新父节点的状态。这里我们为了让叶子节点能够关联多个父节点,使用图的方法去实现这个前端红点,并且一个红点key也可以同时注册关联多个红点ui。在这个红点管理器中我们加入了模块开启的判断,可以通过功能模块的开启状态来改变前端红点的状态。下面就让我们上代码吧:import { util } from "../util";import {
2020-05-16 01:07:21
810
原创 从零开发一个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
587
原创 从零开发一个h5游戏:对象池管理器的设计
开发一个h5游戏需要的系统:对象池管理器的设计//所有对象池类均要实现此接口export interface IPoolable { init();//对象池取出初始化 reset();//对象池放回重置 }export class PoolMgr extends BaseClass { private _poolMap = {};...
2020-01-15 22:45:36
413
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人