ue学习路线
引擎
配置UE CPP
ue对比unity项目 : https://dev.epicgames.com/documentation/en-us/unreal-engine/parrot-game-sample-for-unreal-engine X
UE入门: https://www.youtube.com/watch?v=XRmn-EYt8wI X
网易ue教程: https://zhuanlan.zhihu.com/p/647108274 √
UE路径
水曜日鸡 https://zhuanlan.zhihu.com/p/659805638
大钊老师PPT https://zhuanlan.zhihu.com/p/1937270739192505484
模块路线 https://zhuanlan.zhihu.com/p/637519288
最小实现
- 每天读2-3篇文章
- 行业趋势
- 技术类
- 持续学习新技术
- 将大目标拆解成小目标
- 复盘总结
- 知识库
- 资料、笔记整理
- 软件库
- 分享
目前在跟:
- Slate 源码
- 动画
想开坑:
TcpUdp补充
OS补充
LuaGC
Primer-CPP
优先级排序
- GP框架- Actor生命周期 UActorCompent √
- LS - 爆炸小汁 A 差不多完结 √
- Core-GC-UObject-反射-序列化 UHT √
- Lua 源码
- 数据结构 √
- 虚拟机
- GC
- Unlua
https://zhuanlan.zhihu.com/p/24806646625 https://www.cnblogs.com/ZWJ-zwj/p/18342070
UE GC √
Slate
UE蓝图虚拟机 √
C++ Primer - CPP 八股
CSAPP – 网络 OS
GAMES104+ 游戏引擎架构
UGUI源码
Flush
3C方向:
DS √
GAS √
Lyra
动画
AI 行为树 √
多线程 √
零星收集AI
- Lyra 解析
我在项目中采用 Gameplay Tag 驱动 ABP,Ability 只负责施加语义 Tag,AnimInstance 通过监听 ASC 的 Tag 事件缓存状态变量,从而实现动画与逻辑解耦、事件驱动更新以及良好的网络同步。
Lyra 的 Locomotion 不依赖离散状态机,而是基于速度、加速度和是否在地面的连续变量,通过 Blend Space 驱动动画,其中加速度用于区分起步与急停,速度控制移动强度,从而减少状态数量并提升动画平滑度和可扩展性。
Lyra 将 GAS 作为统一的行为与状态执行框架,Ability 负责行为生命周期与 Tag 施加,Gameplay Tag 作为跨系统状态语义驱动动画、输入与逻辑,从而实现高度解耦、网络友好且可扩展的架构。
Lyra 中属性同步完全依赖 GAS 的 AttributeSet 与 RepNotify,属性只通过 GameplayEffect 在服务器修改,客户端通过 ASC 的属性变化委托响应,从而实现权威同步、预测安全以及与动画和 UI 的解耦。
Lyra 的 UI 作为 GAS 的只读视图层,通过监听 Gameplay Tag 与 Attribute 的变化驱动显示逻辑,并使用 UI Extension System 实现模块化注入,从而保证 UI 与 Gameplay 的高度解耦与网络友好性。
在 Lyra 的 UI 架构中,蓝图只承担表现与布局职责,所有状态来源、数据绑定和生命周期管理都在 C++ 层完成,UI 蓝图作为 GAS 状态的被动视图层,从而保证了系统解耦、网络安全和可维护性。
Lyra 局外系统 UI 的蓝图仅负责布局与表现,所有数据、状态和事件通过 C++ Controller 或 Subsystem 管理,UI Blueprint 只响应事件显示状态,从而保持 UI 与业务逻辑的完全解耦,并支持可替换、可扩展的模块化设计。
- 局外
局外系统采用 C++ + UnLua 架构,Lua 使用比例约 70%~80%,
主要负责 UI、流程与玩法规则,核心数据与网络能力由 C++ 保证稳定性。
虽然 Lua 使用比例较高,但它不是权威层。
核心数据最终以 C++ 为准,Lua 只是读取和驱动这些数据。
局外系统整体以 Lua 作为主要开发语言,大约占 70%~80%。
C++ 主要负责底层数据结构、引擎能力封装和与服务端通信的基础设施,
Lua 层负责业务规则、流程控制和 UI 逻辑
Game-Client-Interview-2025
2025游戏客户端开发求职全纪录(C++/UE/Unity) | 涵盖 88 场面试深度复盘与高频题目统计🎮
🚀 为什么创建这个仓库?
在整个 2025 招聘季中,我一共经历了 37 场暑期实习面试和 51 场秋招面试,每一场面试结束后,我都进行了详尽的录音复盘,用穷举法对当前游戏客户端开发的常见题目进行了统计。因为我的简历上同时覆盖了 UE 实习背景与 Unity 个人项目背景,所以这些题目对于不同引擎侧重的同学都有参考性。希望这份面试题能帮助后来者少走弯路!
📊 高频面试题频率统计
题目及考点按大类分组,并依据面试中出现的频率从高到低排列。所有出现的知识点都需要提前做好准备,出现频次超过10的问题不仅要准备答案,还要深入理解相关知识点,避免被追问时卡壳。
1. 核心技术栈(C++ / Lua / 编程基础)
| 知识点分类 | 具体题目 / 考点 | 出现频率 |
|---|---|---|
| C++ 内存与多态 | 虚函数实现原理 (vptr/vtable) | 🔥15 |
| 智能指针 (shared_ptr/unique_ptr) | 🔥14 | |
| 内存对齐 (Memory Alignment) | 🔥9 | |
| 右值引用与移动语义 (Rvalue/Move) | 🔥8 | |
| C++ 多态机制 | 🔥7 | |
| 内存分区 (堆/栈/静态区) | 🔥6 | |
| C++ 类内存布局 | 🔥5 | |
| Lua 专项 | 元表 & 元方法 (Metatable) | 🔥12 |
| Lua OOP 实现原理 | 🔥12 | |
| Lua Table 底层实现 | 🔥7 | |
| Lua 基本语法与闭包 | 🔥5 | |
| C# (Unity) | 垃圾回收机制 (GC) | 🔥7 |
2. 计算机基础(系统/网络/设计模式)
| 知识点分类 | 具体题目 / 考点 | 出现频率 |
|---|---|---|
| 通用架构 | 对象池 (Object Pool) | 🔥15 |
| 协程 vs 线程 | 🔥8 | |
| 单例模式 / 观察者模式 | 🔥6 | |
| 有限状态机 (FSM) | 🔥6 | |
| 网络与系统 | 编译链接流程 | 🔥5 |
| 锁机制 (死锁/悲观锁/乐观锁) | 🔥5 | |
| 状态同步 vs 帧同步 | 🔥4 | |
| 堆 vs 栈 的区别 | 🔥4 |
3. 数据结构与算法
| 知识点分类 | 具体题目 / 考点 | 出现频率 |
|---|---|---|
| 数据结构 | 哈希表 (Hash Table) 实现及冲突 | 🔥11 |
| 红黑树 (Red-Black Tree) | 🔥10 | |
| 四叉树 (Quadtree) 空间分割 | 🔥5 | |
| 堆 (Heap) 结构 | 🔥4 | |
| 算法 | 排序算法 (快速排序/归并) | 🔥8 |
| A* 算法 (A-Star) | 🔥5 | |
| 点在三角形内判定 | 🔥4 | |
| 点乘 vs 叉乘 | 🔥4 |
4. 引擎专项(Unity / UE / 图形学)
| 知识点分类 | 具体题目 / 考点 | 出现频率 |
|---|---|---|
| Unity | Unity 协程原理 | 🔥10 |
| 生命周期函数流程 | 🔥8 | |
| AssetBundle 打包与卸载 | 🔥7 | |
| DrawCall 优化 | 🔥6 | |
| UGUI 布局与适配 | 🔥5 | |
| Unreal Engine | UE 垃圾回收 (GC) 机制 | 🔥9 |
| UE 反射机制 | 🔥7 | |
| UnLua 插件原理 | 🔥7 | |
| GAS (Gameplay Ability System) | 🔥4 | |
| 图形学 | 图形渲染管线 (GRP) | 🔥2 |
5. 实习经历与综合
| 分类 | 考点 | 出现频率 |
|---|---|---|
| 实习 | 负责模块细节深度拆解 | 🔥43 |
| 遇到的问题及解决方案 | 🔥26 | |
| 职业规划 | 想从事客户端的原因 | 🔥12 |
| 为什么选择游戏行业? | 🔥11 | |
| Offer 选择因素 | 🔥9 |
https://zhuanlan.zhihu.com/p/1890089256204092723
根据面试经验,个人建议大家学习是要有侧重点的。自己要选择一个方向去深耕,比如本人面试过三个方向。
1.角色3c方向。
2.系统方向。
3.玩法方向。
当然UE肯定不止这么多方向,方向比如关卡,战斗(部分战斗可能包含在3C)等等。
大家最好选择一个方向作为侧重点去学习。分享一下个人经验。
角色3c:
1.动画蓝图:没有经验就去看ALS和Lyra的动画蓝图就好,吃透了就差不了至于MotionMatching可以作为附加选项。
2.GAS:GAS目前似乎慢慢的流行起来了。大家可以看一下GAS的源码,以及Lyra在GAS中的应用。
3.DS网络:UE这一套网络系统还是会被经常问到的,属性同步,多播函数等,当然如果是MMO项目则不太会被问到,先熟悉应用,源码可以作为附加选项。
4.场景应用:这个就看个人积累了。
系统,玩法:系统和玩法被问到的东西差不多。
1.场景应用:说白了就是项目经验,这个最重要,不过系统和玩法就大概率不会问DS的内容,因为大多数采取的是第三方服务器。
2.UMG与Slate:比较常问。因为系统和玩法与UMG挂钩较多,Slate用于编辑器拓展。
3.脚本语言:比如Lua吧,就会问到Lua闭包原理,垃圾回收原理,lua与Cpp如何相互调用,lua如何运行等等。
4.UE反射:这个我有写过文章。偶尔会被问道。
ok,上面的内容有的我比较熟,有的一般熟,有的甚至完全不了解,所以本人打算把上述内容在两年时间(到2027年清明)内以文章的形式更新完,希望大家可以共同学习,共同努力,共同进步,其实我是想说一年的,然后感觉比较吹牛了哈哈哈哈,而且我要入职新公司了,估计前几个月压力会比较大,也没时间搞这些。唉,希望别碰到裁员,我求求了。除去上面的内容,然后就是一些通用的内容了,几乎大多数面试都会问,比如说C++的知识,虚函数多态,设计模式,MVVM,LRU等等。然后一些厂子比如说网易,字节,祖龙娱乐会让现场写算法,用的都是牛客,所以刷算法和八股的去牛客就好了。

