thumbnail
内存加密
目标 & 背景 抵御市面上常见的内存模糊搜索工具 没有致命性能问题 在手游的内存搜索工具上,一般来说 Android 需要 root 权限,iOS 需要越狱,但是在 PlayCover1出现后,打破了这个平衡 现在在 iOS 的版本下,对当前 iPA 进行砸壳后,使用 PlayCover1 运行,可以直接用 CE2 等工具,在开启 SIP3的情况下,可以直接对当前游戏进行内存搜索和修改,这…
thumbnail
群晖 + Nas-Tools 一个懂事的媒体库
简介 入手群晖已经一段时间了,之前下载一些媒体文件总是需要手动找资源,然后下载、整理,最后由专门的资源软件,如:Plex 进行刮削。需要人为介入的阶段比较多,不够自动化,尤其是一些正在追的番或者剧,都需要记得下载 由此就准备接入 nas-tools1 这整套解决方案了,此方案使用 jackett 或 prowlarr 作为 pt 资源的索引器,Qbittorrent 等作为 pt 的下载器,Ple…
thumbnail
UWA Pipeline 使用前的准备工作
Pipeline1 简介 后面简称为 ppl ppl 是集合了目前 UWA所有产品功能为一身的工具,可以用很小的成本,从一些真机自动化等机械性重复性劳动中解放出来,如:自动化性能测试、可靠性真机测试等等,当然里面功能很多,如果不了解 ppl,推荐去官网1 了解一下具体功能,或者找 UWA 的工作人员申请一下试用 目前整体使用下来,对我们项目而言,最重要的是解放重复性劳动,以及整体项目的性能把控上。…
thumbnail
粒子性能持续监测
最近受到 UWA 的启发,有一个非常不错的粒子性能持续检测的思路,这里需要使用使用 UWA 的 GOT,后续的完全自动化,需要使用 UWA 的 Pipeline 最终结果呈现如下,这里的每个间隔代表了每个特效的实际渲染耗时,可以非常直观的看到,到底哪个特效存在问题 目标 & 背景 测试项目完全与客户端工程隔离 美术资源完全复用 前两项是为了隔离美术工程和客户端工程,一般来说,美术不应该接触…
thumbnail
如何设计本地化组件
在我们项目开始初期,面临一个问题,就是本地化组件到底要不要重新造一次轮子。为了回答这个问题,首先我们需要仔细分析一下,本地化究竟需要哪些功能 业务逻辑动态扩容语言支持 运行时热切换语言,无需重启 对于代码赋值的部分,无法做到实时变化,需要等下一次赋值 任意多种资源类型的本地化 文字 图片等 配表字段自动本地化 代码动态赋值本地化 避免手输 string,提供动态生成翻译 key 常量代码工具 脚本…
thumbnail
TextMeshPro 填坑
最近在项目里碰到字体开启描边后缩放很小时,会有清晰的轮廓线,查了半天也没弄明白到底因为啥,最后看了 Unity 的论坛发现, Padding 最好设置为当前子大小的 10%,也就是下面的第二条 这是和我碰到同样问题的小哥贴的图 原文1 requently Asked Questions (in the process of being revised / edited) 1. When I cha…
thumbnail
ET Entity Tree 工具
目标 对整体 Entity 组件的树形图进行绘制 多个 Child 要有效区分,如 Unit、Scene 选中 Entity 时,可以查看 Entity 的属性 有办法查看 Unit 上挂载的 NubericComponent 中具体的属性 具体实现 第一条树形图的绘制没什么好说的,本身就是 Unity 自带的 TreeView 的基础实现,这里直接略过,感兴趣可以自行阅读源码 不同实体区分 日常…
thumbnail
对资源的规范化我们能做什么
游戏开发中,资源的管理是一项非常精细的活,不同类型的资源往往拥有完全不同的管理方式和配置方式,本文希望从 5 个不同的管理级别对资源管理进行解构 致命资源错误不让保存 保存了不让提交 提交了可以快速发现问题 发现问题可以快速修复 版本问题记录 对于可以使用 AssetPostprocessor 解决的问题,这里就不做介绍了,这种问题一般都非常简单,如果不清楚如何使用,可以搜一下相关实现 本文提到的…
thumbnail
基于 ECS 设计下的加载管理
之前在 Addressable 迁移 YooAsset 这篇文章中做了分层设计的相关介绍,本文为分层中详细的解析,以及为什么要这么设计 目标 & 背景 我们当前使用的框架,需要设计成一个基础库,以 Package 的形式进行使用,方便公司中其他项目后续的接入,所以泛用性要求很高,此外,开发者的水平可能会参差不齐,可能会有应届生刚刚接触 Unity 等现实因素的考量,因此我们需要达成如下目标…
thumbnail
一些关于代码积累的记录
UPM 开始之前 通用框架要解决什么问题? 什么内容有资格放进框架中? 这种设计会不会给开发者带来额外的负担? 内网!内网! OpenSSH 标准的 ssh 管理 最后 当你需要新开一个项目时,往往需要从一些旧项目中拿走一些现成的框架,但这里的代码,如果没有好好管理,新开项目时往往要大费周章从旧有项目中剔除很多没必要的内容 如果将框架直接放在业务逻辑中,往往会出现一些开发者胡乱修改框架内容,或者图…