分类: Trick

22 篇文章

thumbnail
基于 ECS 设计下的加载管理
之前在 Addressable 迁移 YooAsset 这篇文章中做了分层设计的相关介绍,本文为分层中详细的解析,以及为什么要这么设计 目标 & 背景 我们当前使用的框架,需要设计成一个基础库,以 Package 的形式进行使用,方便公司中其他项目后续的接入,所以泛用性要求很高,此外,开发者的水平可能会参差不齐,可能会有应届生刚刚接触 Unity 等现实因素的考量,因此我们需要达成如下目标…
thumbnail
为什么抛弃了 Addressable
外链 多人协作灾难 自动 Import git hook 禁止提交 Missing Reference 资源地址撞 key 源码异常难懂 偶现的首包 ab 错误 https 校验问题 动态切换 CDN 源 Addressable 做的好的地方 YooAsset 个人使用和关注 Addressable 有段时间了,对 Addressable 的缺点容忍了很久,最终在一次打包时加班到 11 点后,决定…
thumbnail
如何有效的对 UGUI Button 成组排队
多指触控带来的问题 连续点击重入的问题 解决思路 按钮成组 框架统一分发 Popup 的新问题 后续可能会碰到的问题 单个 UI 粒度的防重入 红点、新手引导异步化 循环列表异步化 点击通用化 一般来说,对按钮的事件监听通常采用 AddListener 的方式,有些项目可能会对此处的处理函数额外做一层包装,做一些统一处理,最后再执行具体的逻辑 无论上面哪种方式,想要将按钮的点击事件完美成组排队,都…
thumbnail
Luban Excel 配表工具使用推荐及总结
相关链接 为什么使用 Luban 核心功能介绍 数据有效性验证 生成模板 复杂类型的填写 数据及定义过滤 数据反倒 本地化 其他 流程推荐 导出脚本选择 test、dev、release auto_validation watch 几乎每个游戏的制作过程中都少不了和配置打交道的需求,有的是用 Unity 自带的 ScriptObject 进行存储,或者更多的是使用 Excel 等表格工具,二次导出…
thumbnail
[转] Unity I18N 小探
前略 从 key-value 表到 I2 Localization Rosetta - 关于本地化问题的反思和实现 只有这些了吗 结语 参考 原文地址 前略 软件要分发给使用不同语言和处于不同地区的人员,需要从多个方面处理从而使这些人能以自己文化背景下熟知的方式来使用。这包括了最基本的文本的翻译,也有一些通用习俗和约定的问题(如不同国家和地区的日期时间的表示等)。而本地化(L10N)和国际化(I1…
thumbnail
ET 热更可用的命令行GM指令方案
起因 尝试的方案 iOS 捷径 GM UI UnityIngameDebugConsole 具体实现 ConsoleMethod Hotfix 监听 IGmCodeHandler 展示ID 的指令示例 GMCodeComponent 总结 起因 最近项目需要做游戏的 GM 指令,思前想去,想了几个方案后, 最后决定使用 UnityIngameDebugConsole提供的 GM 指令,然后封装一个…
thumbnail
获取Unity GameView 分辨率大小
起因 代码部分 起因 项目需要做不同机型的分辨率的适配,UI 的适应还好说,GameView 修改分辨率之后,UI 就自适应了,但是场景中 Camera 的 Size 适配还需要自己动手做些工作 之前代码是直接获取Screen.width 和 Screen.height,但是当在Editor 下, 修改了GameView 的分辨率时,获取到的值是不对的 代码部分 Unity 源码参考 这里需要写两…
thumbnail
Unity 调用 Android Native 使用及排坑
起因 使用 路径参考 MainActivity.java AndroidManifest.xml MobileHelper.cs 排坑 起因 最近项目需要统计手机的运营商和 WiFi 、4G 等情况,这个时候必须调用机器的 Native 代码 使用 这里不对如何获取运营商做详细的介绍,主要介绍如何完成 Unity 和 Android Native 之间的交互 运营商代码参考 路径参考 Assets…
thumbnail
Addressables 异步对实例化物体的生命周期影响
起因 await 加载 await 加载 + 手动 active 回调方式加载 起因 最近和小伙伴交流的时候突然注意到, Addressable 在异步实例化物体时,Unity 生命周期也不太相同 下面为各种情况下的测试数据 await 加载 加载脚本 public class TestAddressable : MonoBehaviour { private async Task Awake()…
thumbnail
URP + PostProcessing + 2D Renderer 使用
起因 基础配置 Unity Universal RP Package 2D Renderer 配置 思路及实现方式 Layer Camera Volume UI Blur 其他效果 已知的坑 Cinemachine 不会切换 VCam 起因 最近在搞 URP,需要用到 UI 背景 Blur的效果,突然想起 PostProcessing 中本身可以实现这个效果 基础配置 Unity 我们使用的版本为…