惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Jina AI
Jina AI
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
Troy Hunt's Blog
T
The Exploit Database - CXSecurity.com
Microsoft Security Blog
Microsoft Security Blog
V
Visual Studio Blog
F
Fortinet All Blogs
博客园_首页
P
Proofpoint News Feed
V
Vulnerabilities – Threatpost
The Cloudflare Blog
C
Cyber Attacks, Cyber Crime and Cyber Security
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
H
Heimdal Security Blog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
A
About on SuperTechFans
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
AI
AI
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
S
Security Affairs
The Register - Security
The Register - Security
S
Security @ Cisco Blogs
Hugging Face - Blog
Hugging Face - Blog
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - 聂微东
Schneier on Security
Schneier on Security
WordPress大学
WordPress大学
Google DeepMind News
Google DeepMind News
GbyAI
GbyAI
T
Tailwind CSS Blog
Hacker News: Ask HN
Hacker News: Ask HN
W
WeLiveSecurity
D
Docker
L
LangChain Blog
B
Blog RSS Feed
The Last Watchdog
The Last Watchdog
Cloudbric
Cloudbric
TaoSecurity Blog
TaoSecurity Blog
N
Netflix TechBlog - Medium
酷 壳 – CoolShell
酷 壳 – CoolShell
I
InfoQ
The Hacker News
The Hacker News
AWS News Blog
AWS News Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
宝玉的分享
宝玉的分享
I
Intezer
云风的 BLOG
云风的 BLOG
V2EX - 技术
V2EX - 技术
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO

会走路的三百块

part 4 踩坑记录 | 会走路的三百块 Unity-进阶知识 | 会走路的三百块 CICD | 会走路的三百块 part 1 linux的历史节点 | 会走路的三百块 C的编译器 | 会走路的三百块 字符串常量存储 | 会走路的三百块 第三章 数据和C | 会走路的三百块 类型转换和缩减 | 会走路的三百块 零散知识点 | 会走路的三百块 DNS选择机制 | 会走路的三百块 网络八股Cache | 会走路的三百块 第三章-数据和C | 会走路的三百块 一些零散的知识点 | 会走路的三百块 自顶向下 | 会走路的三百块 linux简单速通 | 会走路的三百块 设计图的概述 | 会走路的三百块 AI和自动化暂存 | 会走路的三百块 第一章 初识C语言 | 会走路的三百块 Games101 | 会走路的三百块 Unity-Lua补充 | 会走路的三百块 Unity-个人Demo | 会走路的三百块 Unity-基础知识 | 会走路的三百块 Unity环境搭建 | 会走路的三百块 Unity-经典MMO | 会走路的三百块 Fastapi-Pydantic | 会走路的三百块 Fastapi-Sqlalchemy | 会走路的三百块 Scrapy-Redis分布式爬虫 | 会走路的三百块 Scrapy-Web集成 | 会走路的三百块 Scrapy爬虫 | 会走路的三百块 Twitter爬虫 | 会走路的三百块 Uinotes爬虫 | 会走路的三百块 PythonCheatSheet | 会走路的三百块 Python库 | 会走路的三百块 Python快速复习 | 会走路的三百块 Python语言进阶 | 会走路的三百块 Py自动化办公 | 会走路的三百块 Py踩坑记录 | 会走路的三百块 深入Python | 会走路的三百块 基本前端常识 | 会走路的三百块 文档分发与产品安全 | 会走路的三百块 跨平台应用脚手架 | 会走路的三百块 后端开发常见层式结构 | 会走路的三百块 mongodb | 会走路的三百块 PG-ep1 | 会走路的三百块 分库分表 | 会走路的三百块 docker常用知识 | 会走路的三百块 K3S | 会走路的三百块 后端常见安全措施 | 会走路的三百块 part 2 常用命令 | 会走路的三百块 part 3 shell脚本 | 会走路的三百块 服务器装机 | 会走路的三百块 测试与性能指标评估 | 会走路的三百块 缓存系统设计 | 会走路的三百块 Caddy | 会走路的三百块 Nginx-EP1 | 会走路的三百块 Nginx-EP2 | 会走路的三百块 EP1-设计模式 | 会走路的三百块 EP2-创建型模式 | 会走路的三百块 EP3-结构型模式 | 会走路的三百块 EP4-行为模式 | 会走路的三百块 EP5-其他 | 会走路的三百块 软件工程 | 会走路的三百块 日志模块设计 | 会走路的三百块 订单和支付模块 | 会走路的三百块 minio对象存储 | 会走路的三百块 Rustfs对象存储 | 会走路的三百块 一次性搞懂 | 会走路的三百块 基本硬件知识 | 会走路的三百块 开源协议 | 会走路的三百块 彩蛋收集 | 会走路的三百块 版本控制 | 会走路的三百块 项目管理 | 会走路的三百块 leetcode-EP1 | 会走路的三百块 第二章 C语言概述 | 会走路的三百块 第零章 计算机概论 | 会走路的三百块 爬虫基础 | 会走路的三百块 Sqlite | 会走路的三百块 README | 会走路的三百块 异步任务模块 | 会走路的三百块 用户和验权 | 会走路的三百块 通用数据库执行器 | 会走路的三百块 clickhouse | 会走路的三百块 会走路的三百块 Obsidian博客搭建 | 会走路的三百块 关于 | 会走路的三百块
Unity-天命6源码 | 会走路的三百块
2026-06-03 · via 会走路的三百块

创建于 2025年9月14日 07:28:56 · 约1,078字

求职用的,主要扒游戏管理和UI部分。想要可以找我要,我有翻译韩语完的。
游戏中最好不要使用魔法值,所有的值都应该用常量定义出来,放到Scripts/GameDefine下面。
游戏从Logo场景开始,一个简单的动画控制,播放对应商店的Logo Sprite,Logo播放完毕的时候加载Certification场景。

这个系统的UI用的是NGUI,每个面板用不同的摄像机然后叠加culling。把组件都挂到Animation下面,便于控制动画和效果

从Logo场景进入,Logo场景很简单,就是一个logo,判断了一个莫名其妙的宏,加载动画,然后进入Certification场景

Certification场景目前来的功能是验证AB包+验证身份登录(? UI部分重要的结构

C

UStartPackage_Launcher: UStartPackage

Certification下
加载脚本的顺序是:
- UStartPackage_Launcher : UStartPackage
    - 这里面塞了三个全局prefab管理器
        - GlobalFontManager 字体
        - BGM Module 背景音乐
        - UI Root Dialog 全局的UI提示弹窗
     - 单例触发ULocalPlayer
- ULoginCtrl
- ULauncherCtrl
- 表驱动
- 网络
- 搞定两个UI

UStartPackage 设置UI缩放和分辨率,读取预制体,加载三个模块的预制体,中间重置本地客户端的旧数据 如果PlayerPrefs中没有保存数据,则从旧文件中读取信息并保存到PlayerPrefs(我好像没怎么弄懂这东西的数据持久化是怎么管理的 Lancher完事了,会调用PostAwake自定义生命周期函数

ULocalPlayer 是“全局玩家与系统服务的聚合单例”,涵盖资源、网络、设置、前后台行为等。没有全看完,ULocalPlayer.Instance.LocalPushMgr.CancelLocalPush();里面包含了一个服务通知推送管理模块,底层推送使用的是NMSDK 聚合单例使用partial关键字分段编写,降低合作编写难度和耦合。 LobbyMenuData是大厅(战斗外)的核心数据单例,战斗时的核心数据单例使用的是另一个上下文。

此时已经初始化好了UI缩放适配,音乐,游戏设置,AB包的资源,全局字体管理器。

接下来使用的是,ULoginCtrl,

仅针对非战斗部分 首先是基础架构和业务使用分开 基础架构看 网络 数据

跨场景管理

  • 启动与生命周期:游戏怎么从 Logo 起来,怎么进 Certification、登录、最后到大厅

  • 资源管理:静态资源、AB 包、版本检查、补丁、缓存、本地和 CDN 的关系

  • 配置与表驱动:CSV、字符串表、本地化、区域配置,什么时候加载最小集,什么时候加载全量

  • 账号与网络:SDK 渠道登录、游戏服登录、握手校验、登录后拉用户数据

  • UI 系统:NGUI 分层、页面、弹窗、全局提示、加载中、摄像机和 culling 的组织方式

  • 全局服务:音频、字体、推送、日志、设备适配、全局单例

  • 场景与流程编排:谁决定下一个场景,什么时候进 Lobby,什么时候进剧情

  • 本地持久化:PlayerPrefs、旧数据迁移、客户端设置、登录痕迹和缓存数据

  • 网络:重点讲“怎么用”,请求怎么发、登录后怎么拉数据、模块怎么分层,不必深挖底层通信架构

  • 表驱动:讲静态配置怎么组织、什么时候加载、和本地化/数值/功能开关的关系,再补一点本地持久化怎么落

  • 场景管理:讲启动链路、登录到大厅、教程/恢复场景分支,谁决定跳场景

  • UI 架构:讲 NGUI 分层、摄像机/culling、全局弹窗、页面与弹窗的组织

  • MVC 业务写法:讲一个常见页面怎么拆控制器、数据、视图交互,按钮事件、状态刷新、弹窗调用、表读取、网络回包后的 UI 更新

  • 资源管理:讲 AB 包、版本检查、启动器、为什么先补丁再登录

  • 全局单例/基础设施职责 讲 ULocalPlayer、UGameStatices、UGameTableManager 这种大总管类怎么承担全局能力

换大厅的时候使用单例里GetLobbySkinSenceName获取皮肤按需加载不同场景,因为不同大厅皮肤里的灯光效果等等,都是不同的 换场景的时候统一抽象中转出GameLoading场景,这个场景下会清理资源AB包,等等,最后进去要进的场景,UI上也能统一加载

感觉只看不太够,得自己古法把这些坑踩一遍才有从头构造的能力。