面试
This commit is contained in:
		
							parent
							
								
									cde3500e22
								
							
						
					
					
						commit
						f47787d292
					
				
							
								
								
									
										3
									
								
								.obsidian/core-plugins.json
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.obsidian/core-plugins.json
									
									
									
									
										vendored
									
									
								
							| @ -26,5 +26,6 @@ | ||||
|   "file-recovery": true, | ||||
|   "publish": false, | ||||
|   "sync": false, | ||||
|   "properties": true | ||||
|   "properties": true, | ||||
|   "webviewer": false | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								Assert/Image/2025.1 绩效.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								Assert/Image/2025.1 绩效.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 66 KiB | 
							
								
								
									
										
											BIN
										
									
								
								Assert/Image/bingfeng_grade.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								Assert/Image/bingfeng_grade.png
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 63 KiB | 
							
								
								
									
										
											BIN
										
									
								
								Assert/Image/me.webp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								Assert/Image/me.webp
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 2.2 KiB | 
| @ -153,7 +153,7 @@ modification date: Friday 7th February 2025 09:47:38 | ||||
| - **红点系统**:简洁强大的红点框架,bug少,易维护 | ||||
| - **寻路系统**:优化路径点寻路,提高导航精准度 | ||||
| - **省电模式**:优化功耗管理,降低设备发热,提高续航能力 | ||||
| - **资源优化**:优化首包大小,减少玩家下载压力,提高留存 | ||||
| - **资源优化**:优化包体大小,减少玩家下载压力,提高留存。首包从一张地图566mb,优化成769mb。整包资源从5.39GB优化成3.55GB | ||||
| 
 | ||||
| #### **工具开发** | ||||
| 
 | ||||
| @ -326,3 +326,39 @@ modification date: Friday 7th February 2025 09:47:38 | ||||
| 
 | ||||
| - 任务节奏优化 | ||||
| 
 | ||||
| ## 朝哥 | ||||
| - 上下骨骼分离 | ||||
| 	- 美术链接点挂在了根骨骼 | ||||
| - 消息顺序问题 | ||||
| 	- 协议改变默认朝向 | ||||
| 	- 剧情特殊朝向 | ||||
| - 剧情优化 | ||||
| 	- 烟花特效,太远,太小 | ||||
| 	- 半透明数量有限制 | ||||
| - pvs | ||||
| - gas | ||||
| - 运行时图集bug | ||||
| 	- 对齐导致大小变了 | ||||
| 	- 代码里使用考虑对齐有bug,然后有黑线 | ||||
| - 省电模式 | ||||
| 	- 帧率低于10时,ui不刷新,不能滑动 | ||||
| - 爬墙 | ||||
| 	- 导航网格比碰撞体大一点 | ||||
| - 动作不循环切换循环 | ||||
| 	- 停在最后一帧 | ||||
| - 剧情 | ||||
| 	- 动作丢失、特效丢失 | ||||
| 	- 动画烘培 | ||||
| 	- 播放CG | ||||
| 		- 切换主线程 | ||||
| 		- 然后取消游戏线程、渲染线程到慢cpu | ||||
| 		- 播放之前切换  | ||||
| -   动作卡死 | ||||
| 	- 死亡时动作会暂停 | ||||
| 	- 如果是在背后死的,会暂停到渲染残留的最后一帧 | ||||
| - 模拟器打包 | ||||
| 	- 花屏 | ||||
| 	- x86库so文件太少 | ||||
| - 跟随踩水卡顿 | ||||
| 	- 寻找最近导航点的时候,要考虑小水坑 | ||||
| 	- 导航点错误,然后会导致速度计算错误 | ||||
							
								
								
									
										9
									
								
								src/m/me/简历.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								src/m/me/简历.md
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										172
									
								
								src/m/me/面试.md
									
									
									
									
									
								
							
							
						
						
									
										172
									
								
								src/m/me/面试.md
									
									
									
									
									
								
							| @ -214,67 +214,151 @@ modification date: Thursday 6th February 2025 13:39:59 | ||||
|      - **延迟刷新机制**:叶子节点频繁变更时,**父节点仅每秒刷新一次**,减少无意义的更新。 | ||||
|      - **事件驱动**:统一处理**道具变化、等级升级**等性能敏感事件,避免无效计算。 | ||||
| 
 | ||||
| ### **简历优化版** | ||||
| 
 | ||||
| #### **📝 基本信息** | ||||
| 
 | ||||
| 📍 **游戏开发工程师** | 🔗 **GitHub** | 📧 **Email** | 📞 **Phone**   | ||||
| 💡 **技术栈**:C++, UE4, Vulkan, NoesisGUI, ImGui, 路径寻路, AI 行为树, 物理碰撞, `std::pmr` | ||||
| 
 | ||||
| --- | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| ### **技术栈** | ||||
| 
 | ||||
| #### **编程语言 & 编译工具** | ||||
| 
 | ||||
| - **C++(C++17/20)**:模板元编程、反射、序列化、智能指针、`std::pmr` | ||||
| - **Python / Lua**:游戏逻辑、工具链扩展 | ||||
| - **XMake / CMake / MSBuild**:跨平台编译 & 构建系统 | ||||
| 
 | ||||
| #### **游戏引擎 & 渲染架构** | ||||
| 
 | ||||
| - **自研游戏引擎开发**:模块化架构、资源管理、渲染系统 | ||||
| - **Unreal Engine 4**:大世界 MMO 研发经验 | ||||
| - **Vulkan / OpenGL(Framegraph 设计 & RHI 资源管理)** | ||||
| - **Shader & 材质系统**:实现 Shader 管理 & 材质框架(但不涉及具体视觉效果) | ||||
| 
 | ||||
| #### **游戏系统 & 逻辑开发** | ||||
| 
 | ||||
| - **战斗 & 技能系统**:寻路优化、目标锁定、技能施法逻辑 | ||||
| - **AI 开发**:UE4 行为树、伙伴 AI 自由移动 & 交互 | ||||
| - **UI 框架 & 交互优化**:红点系统(红点树结构)、增量刷新 | ||||
| - **物理 & 碰撞**:四叉树优化、智能家具碰撞检测 | ||||
| 
 | ||||
| #### **优化 & 工具链** | ||||
| 
 | ||||
| - **性能优化**:Framegraph 调度、寻路算法改进、内存管理优化 | ||||
| - **日志 & 调试**:深入 UE4 源码,排查错误日志 & 优化调试流程 | ||||
| - **资源管理**:包体优化(下载大小 & 加载速度)、数据序列化 | ||||
| 
 | ||||
| ### 教育背景 | ||||
| 
 | ||||
| 2016.09~2022.06        中国海洋大学        计算机科学与技术/本科 | ||||
| 
 | ||||
| 休学一年,延毕一年       985/211		GPA 3.186/4.0 | ||||
| 
 | ||||
| ## **💼 工作经验** | ||||
| 
 | ||||
| ### **冰风网络 | 自研引擎 MMO 游戏开发** | ||||
| 
 | ||||
| 📅 **2023.08 - 2025.02** | **游戏开发工程师** | ||||
| 📅 **2022.08 - 2025.02** | **游戏开发工程师** | ||||
| 
 | ||||
| **职责**:前期负责 **UI 开发**(红点系统优化),后期转向 **核心系统(剧情、战斗、寻路、技能)** 开发与优化,内测阶段专注 **游戏品质提升 & 疑难 Bug 修复**。 | ||||
| **职责**: | ||||
| 
 | ||||
| - 前期负责 **UI 开发**(红点系统优化),后期转向 **核心系统(剧情、战斗、寻路、技能)** 开发与优化。 | ||||
| - 内测阶段专注 **游戏品质提升 & 疑难 Bug 修复**,确保游戏稳定性与流畅度。 | ||||
| 
 | ||||
| #### **核心开发 & 质量优化** | ||||
| 
 | ||||
| - **UI 框架优化**:重构 **红点系统**,采用 **红点树结构(支持条件节点 & 增量刷新)**,计算开销降低 **50%**,提升 UI 响应速度。 | ||||
| - **剧情系统**:优化 **相机运动 & 游戏接口**,**消除相机抖动**,增强沉浸感。 | ||||
| - **战斗系统**:优化 **受击特效、飘字、目标锁定**,提升打击感 & 操作反馈,使战斗更流畅。 | ||||
| - **寻路优化**:改进 **寻路算法 & 路点网络**,**解决大地图卡死问题**,提高寻路效率。 | ||||
| - **技能系统**:优化 **施法逻辑 & 摇杆控制**,提升战斗精准度 & 流畅度。 | ||||
| - **游戏品质提升**:内测期间专注修复 **核心 Bug & 复杂问题**,大幅提升产品稳定性。 | ||||
| 
 | ||||
| **技术栈**:C++, UE4, UI 框架优化, 路径寻路, 战斗系统 | ||||
| 
 | ||||
| ------ | ||||
| - **UI 框架优化**:重构 **红点系统**,采用 **红点树结构(支持条件节点 & 增量刷新)**,计算开销降低 **50%**,显著提升 UI 响应速度。 | ||||
| - **剧情系统**:优化 **相机运动 & 游戏接口**,**彻底消除相机抖动**,大幅提升沉浸感。 | ||||
| - **战斗系统**:强化 **受击特效、飘字、目标锁定**,优化战斗反馈,提升打击感与操作流畅度。 | ||||
| - **寻路优化**:改进 **寻路算法 & 路点网络**,**彻底解决大地图卡死问题**,提升寻路效率与导航稳定性。 | ||||
| - **技能系统**:优化 **施法逻辑 & 摇杆控制**,提高战斗精准度,使角色操控更加顺滑。 | ||||
| - **包体优化**:优化资源加载策略,降低玩家下载成本。首包从 **566MB → 769MB**,整包资源从 **5.39GB → 3.55GB**,显著提升安装体验与留存率 | ||||
| 
 | ||||
| --- | ||||
| ### **心动网络 | UE4 大世界 MMO 游戏开发** | ||||
| 
 | ||||
| 📅 **2019.08 - 2020.07** | **游戏开发实习生** | ||||
| 
 | ||||
| #### **家园系统开发**(团队协作) | ||||
| #### **家园 & 工坊系统开发** | ||||
| 
 | ||||
| - **家具碰撞检测**:优化检测算法,性能提升 **20%**。 | ||||
| - **伙伴 AI**:独立实现 **自由移动、交互 & 行为树控制**。 | ||||
| - **UE4 工具链扩展**:优化策划数据配置,提升开发效率。 | ||||
| - **日志优化**:清理 **100% 错误日志**,修复 **90%+ 警告**,降低调试成本。 | ||||
| - **技术分享**:撰写 **4 篇技术文档**,总结优化经验。 | ||||
| 
 | ||||
| #### **家园工坊系统(核心贡献)** | ||||
| 
 | ||||
| - **建造 & 改造**:支持 **敲墙、砌墙、房间抬升/下沉**,动态调整结构。 | ||||
| - **智能家具摆放**:优化检测逻辑,支持 **墙壁、天花板、地面吸附**。 | ||||
| - **墙体透视优化**:建造模式下自动隐藏遮挡墙体,提高可视性。 | ||||
| - **碰撞检测优化**:采用 **四叉树加速**,减少无效计算,提高检测效率。 | ||||
| 
 | ||||
| **技术栈**:C++, UE4, AI 行为树, 物理碰撞, 四叉树优化 | ||||
| 
 | ||||
| ------ | ||||
| - **建造 & 改造**:支持 **敲墙、砌墙、房间抬升/下沉**,动态调整建筑结构,并优化 **墙体透视逻辑**,提升可视性。 | ||||
| - **智能家具摆放**:优化 **碰撞检测 & 吸附算法**,支持 **墙壁、天花板、地面精准吸附**,提升用户体验。 | ||||
| - **家具碰撞检测**:采用 **多四叉树加速**,减少无效计算,提升检测效率 **20%**。 | ||||
| - **伙伴 AI**:独立实现 **自由移动、交互 & 行为树控制**,增强 NPC 互动体验与智能化。 | ||||
| - **日志优化**:深入 **UE4 源码** 逐步排查错误来源,彻底清理 **100% 错误日志**,修复 **90%+ 警告**,降低调试成本。 | ||||
| - **团队合作**:撰写 **4 篇技术文档**,总结优化经验,促进团队知识共享。 | ||||
| 
 | ||||
| ### **引擎架构研究 & 关键模块开发** | ||||
| 
 | ||||
| 📅 **2023.08 - 至今** | **个人技术探索** | ||||
| 📅 **2023.08 - 至今** | **个人技术探索** 🔗 GitHub 项目 | ||||
| 
 | ||||
| 🔗 [GitHub 项目]() | ||||
| **项目描述**:   | ||||
| 一个基于 C++ 的模块化游戏引擎,采用 `xmake` 进行项目管理,支持 Vulkan 渲染,集成 `NoesisGUI` 和 `ImGui`,具备模块化管理、资源加载、序列化等功能。 | ||||
| - **架构设计 & 模块化**:基于 **XMake** 构建 **多模块引擎架构**,提高扩展性与可维护性。 | ||||
|    | ||||
| - **C++ 反射 & 序列化**:开发 **高效反射系统**,支持 **自动序列化 / 反序列化**,降低手写代码成本。 | ||||
|    | ||||
| - **渲染系统优化**:基于 **Vulkan** 设计 **Framegraph**, 实现RHI层,优化 **渲染依赖 & 任务调度**,提升渲染性能。 | ||||
|    | ||||
| - **资源管理优化**:改进 **RHI 资源管理**,优化 **显存分配 & 资源生命周期**,减少 GPU 负载。 | ||||
| 
 | ||||
| **核心技术点**: | ||||
| --- | ||||
| 
 | ||||
| - **模块化设计**: | ||||
|     - 采用 `engine.dll + 多个 lib` 方案,合理拆分 `core.lib`、`render.lib`、`asset.lib` 等模块,减少 `dll` 依赖开销。 | ||||
|     - 通过 `singleton.dll` 解决跨模块全局变量问题,确保唯一性。 | ||||
| ## **🚀 个人项目** | ||||
| 
 | ||||
| ### **🎮 自研游戏引擎** | ||||
| 
 | ||||
| 📅 **2023.08 - 至今** | 🔗 **GitHub 项目** | ||||
| 
 | ||||
| - **模块化架构**: | ||||
|     - `engine.dll + 多个 lib`,减少 `dll` 依赖开销。 | ||||
|     - `singleton.dll` 解决 **跨模块全局变量问题**,确保唯一性。 | ||||
| - **内存管理优化**: | ||||
|     - 基于 `std::pmr` 进行高效内存分配,优化 `zlib.lib` 以减少临时分配开销。 | ||||
|     - GPU 端实现动态缓冲区(借鉴 `NoesisGUI` 设计)。 | ||||
| - **资源与序列化**: | ||||
|     - 反射系统:借助 `zlib` 反射机制,实现 `JSON/YAML` 序列化与反序列化。 | ||||
|     - 资源管理:`asset.lib` 负责资源加载、管理与持久化存储。 | ||||
|     - 基于 `std::pmr` 进行高效内存分配,减少临时分配开销。 | ||||
|     - GPU 端实现 **动态缓冲区**(借鉴 `NoesisGUI` 设计)。 | ||||
| - **资源管理 & 序列化**: | ||||
|     - 反射系统:基于 `zlib` 实现 **JSON/YAML** 序列化。 | ||||
|     - `asset.lib` 负责 **资源加载 & 持久化存储**。 | ||||
| - **渲染架构**: | ||||
|     - `render.lib` 采用 `FrameGraph` 设计,支持 Vulkan,并计划扩展到 OpenGL、DirectX、Metal。 | ||||
|     - `vulkan.dll` 实现 RHI 层,支持 `NoesisGUI` 和 `ImGui` 渲染。 | ||||
|     - `FrameGraph` 设计,支持 **Vulkan**,计划扩展至 OpenGL/DirectX/Metal。 | ||||
|     - `vulkan.dll` 实现 **RHI 层**,支持 `NoesisGUI` & `ImGui` 渲染。 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 目前我在职,但经过深思熟虑,我发现现有工作与我的长期职业规划不太一致。我更倾向于专注于UE开发,因此决定在年后主动离职,寻求更符合我兴趣和职业发展的机会。 | ||||
| 
 | ||||
| 在学校时,我对编程越来越感兴趣,花了很多时间自学和实践,相比之下,学校的课程反而让我提不起劲儿。那时候确实有过退学的想法,后来在辅导老师的建议下,决定休学去实习。 | ||||
| 
 | ||||
| 大三暑期,我参加了心动网络的夏令营,在坦克AI大赛拿了第一名,之后进入《翠星物语》项目实习。这段经历让我真正接触到了游戏开发的实际工作,也让我更确定自己想走这条路。回校后,我继续学习UE,毕业后进入行业工作。 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 您好,我对贵公司的 UE4 客户端开发岗位非常感兴趣,我有 3.5 年游戏开发经验,之前在心动网络和冰风网络参与过 MMO 项目开发。请问该职位目前还在开放吗?方便的话,我可以先发送简历,期待进一步沟通,谢谢! | ||||
| 
 | ||||
| 网易游戏研发能力一直很强,有机会还是愿意尝试的。自研引擎也完全能接受,没有压力 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 赵伯双--c++游戏客户端开发 | ||||
| 
 | ||||
| 【背景】22年本科毕业于中国海洋大学,19年在心动网络有一年UE4 开发世界MMO实习经验。毕业后进入冰风网络工作至今,参与c++自研引擎MMO游戏研发。 | ||||
| 
 | ||||
| 【离职原因】由于参与的项目因主策兼制作人离职而封存,公司安排我进入新的二次开发项目。经过深思熟虑,我更希望挑战更高难度的项目,拓展自己的技术能力。因此,主动选择离职,寻找更契合自身发展方向的新机会。 | ||||
| 
 | ||||
| 【地点述求】我的家乡在江西上饶,上海和杭州都离家较近,都是我理想的工作地点。如果从上海搬到杭州,我的对象也愿意一起调整。 | ||||
| 
 | ||||
| 【技术栈】擅长UE4游戏开发,曾深入学习过UE源码。熟练使用lua,以及lua 与c++交互原理。有过两份MMO游戏工作经验,有UE4的,也有公司自研C++游戏引擎的。目前正在开发独立引擎,学习游戏引擎底层模块开发。包括xmake 多模块引擎构建,反射、序列化反序列化、资源管理、Vulkan渲染。 | ||||
| 
 | ||||
| 【薪资】目前薪资20k*13,拒绝了公司技术专家职位(25k * 13 + 奖金),期望薪资25K*16 | ||||
| 
 | ||||
| 【加班】目前公司是单休朝九晚十。能接受大小周/996,但还是希望平时双休,关键时刻单休 | ||||
| 
 | ||||
| 【面试进展】2月14号离职,目前刚开始投递简历,寻找机会。 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										94
									
								
								src/m/me/面试2.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										94
									
								
								src/m/me/面试2.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,94 @@ | ||||
| --- | ||||
| aliases: | ||||
| tags:  | ||||
| creation date: 2025-02-06 13:39 | ||||
| modification date: Thursday 6th February 2025 13:39:59 | ||||
| --- | ||||
| 
 | ||||
| ## 面经 | ||||
| 
 | ||||
|   #### **冰风网络 | MMO 自研引擎游戏开发**(2022 - 至今) | ||||
| 
 | ||||
| **职责**:前期负责 **UI 开发**(红点系统优化),后期转向 **核心系统(剧情、战斗、寻路、技能)** 开发与优化,内测阶段专注 **游戏品质提升 & 疑难 Bug 修复**。 | ||||
| 
 | ||||
|   - 负责 UI 相关功能开发,主动优化并**重构红点系统**,提高**维护性、扩展性**和**性能**。 | ||||
|   - 问题分析 | ||||
|     - 旧红点系统未建立**父子关系**,需手动更新上级节点,导致维护复杂且易出 Bug。 | ||||
|     - **刷新方式低效**,每次 UI 变更均**全量计算红点状态**,带来性能开销。 | ||||
|   - 优化方案 | ||||
|     - **基于红点树重新设计系统**,支持 **与/或/非逻辑、条件节点、隐藏节点**,子节点可**自动影响父节点**。 | ||||
|     - **缓存 + 增量刷新策略**:避免重复计算,减少无效更新。 | ||||
|     - **延迟批量刷新**:脏节点**每秒合并刷新**,减少频繁触发父节点更新。 | ||||
|     - **兼容旧系统**:新功能采用新红点逻辑,老功能逐步迁移,降低切换成本。 | ||||
|   - 优化成果 | ||||
|     - **减少约 30% 的重复红点逻辑**,提升代码复用性,降低维护成本。 | ||||
|     - **计算开销减少约 50%**(缓存中间结果、增量刷新、批量更新),显著提升 UI 响应速度。 | ||||
|     - **方案推广至公司另外两个团队项目**,标准化 UI 逻辑,提高团队开发效率。 | ||||
| 
 | ||||
| ------ | ||||
| 
 | ||||
|   ### **问题解答** | ||||
| 
 | ||||
|   数据是我结合对比新老红点,进行逻辑估算得出的。虽然没有进行严格的性能测试,但在实际使用中,UI 响应速度明显提升了。 | ||||
| 
 | ||||
|   1. **30% 的重复逻辑减少**来源: | ||||
|      - 旧系统:**所有 UI 组件手动监听并刷新红点状态**,代码高度重复。 | ||||
|      - **新系统交由红点树自动管理**,简化红点逻辑,减少大量重复代码。 | ||||
|      - **辅助功能(条件节点、隐藏节点、逻辑节点)**使代码更加简洁,减少冗余实现。 | ||||
|   2. **50% 的计算开销减少**来源: | ||||
|      - **缓存中间计算结果**,避免父子节点**重复执行相同逻辑**。 | ||||
|      - **由全量刷新改为增量刷新**,只更新变更部分。 | ||||
|      - **延迟刷新机制**:叶子节点频繁变更时,**父节点仅每秒刷新一次**,减少无意义的更新。 | ||||
|      - **事件驱动**:统一处理**道具变化、等级升级**等性能敏感事件,避免无效计算。 | ||||
| 
 | ||||
| ### **冰风网络 | 自研引擎 MMO 游戏开发** | ||||
| 
 | ||||
| 📅 **2022.08 - 2025.02** | **游戏开发工程师** | ||||
| 
 | ||||
| **职责**:前期负责 **UI 开发**(红点系统优化),后期转向 **核心系统(剧情、战斗、寻路、技能)** 开发与优化,内测阶段专注 **游戏品质提升 & 疑难 Bug 修复**。 | ||||
| 
 | ||||
| #### **核心开发 & 质量优化** | ||||
| 
 | ||||
| - **UI 框架优化**:重构 **红点系统**,采用 **红点树结构(支持条件节点 & 增量刷新)**,计算开销降低 **50%**,提升 UI 响应速度。 | ||||
| - **剧情系统**:优化 **相机运动 & 游戏接口**,**消除相机抖动**,增强沉浸感。 | ||||
| - **战斗系统**:优化 **受击特效、飘字、目标锁定**,提升打击感 & 操作反馈,使战斗更流畅。 | ||||
| - **寻路优化**:改进 **寻路算法 & 路点网络**,**解决大地图卡死问题**,提高寻路效率。 | ||||
| - **技能系统**:优化 **施法逻辑 & 摇杆控制**,提升战斗精准度 & 流畅度。 | ||||
| - **包体优化**:减少玩家下载压力,提高留存。首包从一张地图566mb,优化成769mb。整包资源从5.39GB优化成3.55GB | ||||
| 
 | ||||
| **技术栈**:C++, UE4, UI 框架优化, 路径寻路, 战斗系统 | ||||
| 
 | ||||
| ------ | ||||
| 
 | ||||
| ### **心动网络 | UE4 大世界 MMO 游戏开发** | ||||
| 
 | ||||
| 📅 **2019.08 - 2020.07** | **游戏开发实习生** | ||||
| 
 | ||||
| #### **家园系统开发**(团队协作) | ||||
| 
 | ||||
| - **家具碰撞检测**:优化检测算法,性能提升 **20%**。 | ||||
| - **伙伴 AI**:独立实现 **自由移动、交互 & 行为树控制**。 | ||||
| - **UE4 工具链扩展**:优化策划数据配置,提升开发效率。 | ||||
| - **日志优化**:清理 **100% 错误日志**,修复 **90%+ 警告**,降低调试成本。 | ||||
| - **技术分享**:撰写 **4 篇技术文档**,总结优化经验。 | ||||
| 
 | ||||
| #### **家园工坊系统(核心贡献)** | ||||
| 
 | ||||
| - **建造 & 改造**:支持 **敲墙、砌墙、房间抬升/下沉**,动态调整结构。 | ||||
| - **智能家具摆放**:优化检测逻辑,支持 **墙壁、天花板、地面吸附**。 | ||||
| - **墙体透视优化**:建造模式下自动隐藏遮挡墙体,提高可视性。 | ||||
| - **碰撞检测优化**:采用 **四叉树加速**,减少无效计算,提高检测效率。 | ||||
| 
 | ||||
| **技术栈**:C++, UE4, AI 行为树, 物理碰撞, 四叉树优化 | ||||
| 
 | ||||
| ------ | ||||
| 
 | ||||
| ### **引擎架构研究 & 关键模块开发** | ||||
| 
 | ||||
| 📅 **2023.08 - 至今** | **个人技术探索** | ||||
| 🔗 [GitHub 项目](git@github.com:ouczbs/zengine.git) | ||||
| 
 | ||||
| - **架构设计 & 模块化**:基于 **XMake** 构建 **多模块引擎架构**,提高扩展性与可维护性。 | ||||
| - **C++ 反射 & 序列化**:开发 **高效反射系统**,支持 **自动序列化 / 反序列化**,降低手写代码成本。 | ||||
| - **渲染系统优化**:基于 **Vulkan** 设计 **Framegraph**,优化 **渲染依赖 & 任务调度**,提升渲染性能。 | ||||
| - **资源管理优化**:改进 **RHI 资源管理**,优化 **显存分配 & 资源生命周期**,减少 GPU 负载。 | ||||
							
								
								
									
										33
									
								
								src/m/me/面试记录/不鸣科技.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								src/m/me/面试记录/不鸣科技.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,33 @@ | ||||
| --- | ||||
| aliases: | ||||
| tags:  | ||||
| creation date: 2025-02-12 15:18 | ||||
| modification date: Wednesday 12th February 2025 15:18:55 | ||||
| --- | ||||
| # 红点系统 | ||||
| 怎么优化的? | ||||
| - 老红点没绑定,会遗漏,容易出bug,ui也没有自动绑定 | ||||
| - 新红点,父子关系,红点树,ui自动绑定刷新,性能优化延迟刷新,批量刷新,兼容老红点。 | ||||
| # 动画系统 | ||||
| - 不会哈 | ||||
| # 寻路系统 | ||||
| - 导航网格生成 | ||||
| 	- 体素化 | ||||
| 	- 空白区域压缩为二维,第三维的空区域转为span链表 | ||||
| - 路点系统 | ||||
| 	- 策划手动划分路点 | ||||
| 		- 怎么教的呢? | ||||
| 	- 路点系统支持跳点、传送点 | ||||
| 	- 跳点如何丝滑一点呢? | ||||
| 		- 选择小怪点 | ||||
| - 离线渲染 | ||||
| 	- 烘培资源时,加载地图后再导出 | ||||
| - a*寻路 | ||||
| 	- 如果你把寻路过的节点绘制在gn-hn 图上。然后你就可以看到你搜索了哪些节点。你还可以把节点数量也绘制进去。如果你进行一个简单的优化,修改搜索范围,从直线改为曲线,也就是把最下面的曲线上移n个单位。在这个范围内搜索,你能使用最小的代价,最大概率的搜索到最优解。 | ||||
| 	-  | ||||
| # 战斗优化 | ||||
| - 技能编辑器,飘字系统,受击特效、受击动作、受击位移 | ||||
| # 网络同步 | ||||
| - 低延迟情况下解决网络同步问题 | ||||
| # 包体优化 | ||||
| - 老项目资源很大,团队 | ||||
							
								
								
									
										87
									
								
								src/m/me/面试记录/准备阶段.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										87
									
								
								src/m/me/面试记录/准备阶段.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,87 @@ | ||||
| --- | ||||
| aliases:  | ||||
| tags:  | ||||
| creation date: 2025-02-11 19:28 | ||||
| modification date: Tuesday 11th February 2025 19:28:17 | ||||
| --- | ||||
| # 流程 | ||||
| - 自我介绍 | ||||
| 大家好,我叫赵伯双,毕业于中国海洋大学。 | ||||
| 
 | ||||
| ## **早期经历**:   | ||||
| 2019 年暑假,我参加了心动网络的夏令营,并在坦克 AI 大赛中获得第一名,因此获得了在 **UE4 开放世界项目《翠星物语》** 实习的机会。那时原神尚未发布,项目借鉴了《塞尔达:荒野之息》。由于我对网易《明日之后》的家园系统很感兴趣,我与另一位同事负责**家园工坊系统的构建**。这次经历让我对 UE4 的强大与便捷印象深刻,实习结束后,我继续**自学 UE4**,研究了当时新出的 **UnLua 插件**,并深入学习**代码框架设计**。 | ||||
| 
 | ||||
| **正式工作 & 技术成长**:   | ||||
| 毕业后,我加入冰风网络,参与 **自研引擎 MMO 游戏** 的开发。初期主要负责 **UI 相关功能**,期间主动提出优化 **红点系统**,简化了使用逻辑,降低了 Bug 率,并推广到公司其他两个团队。随着经验积累,我逐渐承担 **游戏核心功能开发**,并在 **去年三次内测期间** 负责 **游戏品质提升** 以及 **宕机和复杂 Bug 修复**。 | ||||
| 
 | ||||
| **求职动机**:   | ||||
| 尽管三测数据较好,但年底主策离职,项目被封存,公司安排我进入新的二次开发项目。经过慎重考虑,我希望挑战更高难度的项目,拓展自己的技术能力,因此主动选择离职,寻求更契合自身发展的机会。 | ||||
| 
 | ||||
| 想挑战更高难度的项目和技术栈,参与更大更喜欢的项目,积累更多的开发经验。然后选择游戏功能以及渲染优化深入专研下去。 | ||||
| ### **💡 1. UE4 相关问题** | ||||
| 
 | ||||
| 你在 **《翠星物语》实习时用 UE4 开发家园系统**,面试官可能会问: | ||||
| 
 | ||||
| 1️⃣ **UE4 里家园系统的数据是如何存储和同步的?**   | ||||
| 👉 **思路**:如果是单机模式,可能存本地 JSON/SaveGame;如果是 MMO,则可能涉及数据库、RPC、Replication。   | ||||
| 2️⃣ **UE4 蓝图与 C++ 结合的最佳实践?如何优化蓝图调用?**   | ||||
| 👉 **思路**:讲述 **BlueprintCallable、BlueprintPure、UFUNCTION 里的优化策略**。   | ||||
| 3️⃣ **你研究过 UnLua,那 UE4 的反射系统是怎么实现的?**   | ||||
| 👉 **思路**:`UCLASS、USTRUCT、UFUNCTION、UPROPERTY` 这些宏如何用于 UE4 反射。 | ||||
| 
 | ||||
| --- | ||||
| 
 | ||||
| ### **💡 2. C++ 语言 & 代码架构** | ||||
| 
 | ||||
| 你有 **优化红点系统**、**核心功能开发** 经验,面试官可能会考察你的 C++ 能力: | ||||
| 
 | ||||
| 4️⃣ **红点系统的优化是怎么做的?为什么更好用、更少 bug?**   | ||||
| 👉 **思路**:是否减少了数据存取次数?是否优化了事件触发逻辑?是否从**拉取改为推送**?   | ||||
| 5️⃣ **UE4 里 C++ 内存管理如何优化?如何避免循环引用?**   | ||||
| 👉 **思路**:智能指针 `TWeakPtr` vs `TSharedPtr` vs `TUniquePtr`,什么时候用 `GC` vs `RAII`。   | ||||
| 6️⃣ **你如何设计一个模块化的 UI 系统,支持动态加载?**   | ||||
| 👉 **思路**:使用 **UMG + WidgetTree + Slate**,考虑**工厂模式、数据驱动**的方式实现。 | ||||
| 
 | ||||
| --- | ||||
| 
 | ||||
| ### **💡 3. MMO & 自研引擎相关问题** | ||||
| 
 | ||||
| 你在 **冰风网络** 参与过 **MMO 开发 & 自研引擎**,面试官可能会问: | ||||
| 
 | ||||
| 7️⃣ **MMO 游戏中,服务器如何管理大规模玩家数据?**   | ||||
| 👉 **思路**:是否用 **分区/分服架构**?数据是**全量存数据库,还是用 Redis 缓存**?   | ||||
| 8️⃣ **你们的自研引擎主要解决了哪些 UE4/Unity 没法解决的问题?**   | ||||
| 👉 **思路**:是为了更高效的网络同步?更轻量的客户端?更灵活的资源管理?   | ||||
| 9️⃣ **你的游戏优化经验?遇到过最难优化的问题是什么?**   | ||||
| 👉 **思路**:可能涉及 **Draw Call、CPU/GPU 负载、内存泄露**,要能讲出一个具体案例。 | ||||
| 
 | ||||
| --- | ||||
| 
 | ||||
| ### **💡 4. BUG 处理 & 故障排查能力** | ||||
| 
 | ||||
| 你提到在 **三测期间负责游戏品质提升 & BUG 修复**,面试官可能会问: | ||||
| 
 | ||||
| 🔟 **你修过最复杂的 bug 是什么?怎么找到原因?**   | ||||
| 👉 **思路**:描述 **重现 bug → 定位原因(日志、调试、二分排查)→ 解决方案**。   | ||||
| 🔟 **如何排查 UE4 的崩溃问题?**   | ||||
| 👉 **思路**:使用 **CrashReport、callstack 分析、UE_LOG 调试**,或者 `FPlatformMisc::RequestExit()` 的调用分析。 | ||||
| 
 | ||||
| --- | ||||
| 
 | ||||
| ### **💡 5. 个人职业规划 & 求职动机** | ||||
| 
 | ||||
| 最后,面试官可能会问一些开放性问题,看你的思考能力和目标感: | ||||
| 
 | ||||
| 🔟 **为什么选择离职?你更希望进入什么样的团队?**   | ||||
| 🔟 **你更喜欢 UE4 还是自研引擎?为什么?**   | ||||
| 🔟 **未来 3-5 年,你希望自己在哪些方面有所突破?** | ||||
| ## 简历&项目经验 | ||||
| 
 | ||||
| ## 技术考察 | ||||
| 
 | ||||
| ## 反向提问 | ||||
| 团队规模是怎么样的,负责哪些工作。项目前景怎么样? | ||||
| # 02.12 | ||||
| - 不鸣科技 | ||||
| - 无端科技 | ||||
| 
 | ||||
							
								
								
									
										86
									
								
								src/m/me/面试记录/无端科技.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										86
									
								
								src/m/me/面试记录/无端科技.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,86 @@ | ||||
| --- | ||||
| aliases: | ||||
| tags:  | ||||
| creation date: 2025-02-12 19:17 | ||||
| modification date: Wednesday 12th February 2025 19:17:34 | ||||
| --- | ||||
| # 一面 电话面试 | ||||
| # c++基础 | ||||
| - 左值右值 | ||||
| - 智能指针 | ||||
| - 三大特效 | ||||
| - 多态如何实现 | ||||
| -  | ||||
| ## lua 基础 | ||||
| - 如何实现面向对象 | ||||
| - 如何GC | ||||
| 	- 标记-清除算法 | ||||
| 	- 回收什么 | ||||
| 		- table | ||||
| 		- 函数 | ||||
| 		- userdata | ||||
| 	- 如何遍历 | ||||
| 		- 遍历_G根变量 | ||||
| 		- 查看是否在栈上 | ||||
| 		- 查看全局对象列表 | ||||
| 			- 回收不可达对象 | ||||
| 	- 分段GC | ||||
| 		- 三色标记 | ||||
| 		- 分段条件 | ||||
| 			- 内存、时间 | ||||
| 		- 解决漏标 | ||||
| 			- 没有标记为黑色,白色就会进入GC | ||||
| 			- 有两个方法 | ||||
| 				- 黑色节点指向了白色节点 | ||||
| 					- 增量更新 | ||||
| 					- 记录这个关系,最后以这些白色节点作为灰色节点 | ||||
| 					- 重新遍历 | ||||
| 				- 灰色节点删除了指向白色节点的路径 | ||||
| 					- 原始快照 | ||||
| 					- 别删,额外记录一下 | ||||
| 					- 然后最后也是重新遍历 | ||||
| - 字符串管理 | ||||
| 	- 40字节的短字符串,会有一个字符串池 | ||||
| 	- 大字符串,每次都要分配新内存 | ||||
| - 点调用和冒号调用 | ||||
| 	- 可以互相转化 | ||||
| ## ue基础 | ||||
| - tarray 了解的怎么样  | ||||
| 	- 如何避免内存扩容 | ||||
| - gc 实现 | ||||
| - unlua插件 | ||||
| 	- 如何避免GC | ||||
| ## 渲染效果 | ||||
| - 边缘自发光 | ||||
| ## 反问环节 | ||||
| - 你们期望招的是什么样的?我有哪些地方不满足 | ||||
| - 团队规模、上班时间 | ||||
| ## 公司团队 | ||||
| - TPS第三人称射击游戏 未上线 | ||||
| - 项目100人左右 | ||||
| 	- 策划 + 程序 + 服务器 + 测试 | ||||
| - 上班时间: 9点半 ~ 6点半,双休,周三 回归之日,玩一天项目游戏 | ||||
| - 招的是UI系统功能设计 | ||||
| 	- 我更想做的是核心模块 | ||||
| # 反思 | ||||
| - 回答不算流畅,有点结结巴巴 | ||||
| 换hr来面 | ||||
| 	- 谈规划 | ||||
| 	- 谈薪资 | ||||
| 	- 谈入职 | ||||
| # 二面 | ||||
| 赵伯双--c++游戏客户端开发   | ||||
|    | ||||
| 【背景】22年本科毕业于中国海洋大学,19年在心动网络有一年UE4 开放世界MMO实习经验。毕业后进入冰风网络工作至今,参与c++自研引擎MMO游戏研发。   | ||||
|    | ||||
| 【离职原因】由于参与的项目因主策兼制作人离职而封存,公司安排我进入新的二次开发项目。经过深思熟虑,我更希望挑战更高难度的项目,拓展自己的技术能力。因此,主动选择离职,寻找更契合自身发展方向的新机会。   | ||||
|    | ||||
| 【地点述求】我的家乡在江西上饶,上海和杭州都离家较近,都是我理想的工作地点。如果从上海搬到杭州,我的对象也愿意一起调整。   | ||||
|    | ||||
| 【技术栈】擅长UE4游戏开发,曾深入学习过UE源码。熟练使用lua,以及lua 与c++交互原理。有过两份MMO游戏工作经验,有UE4的,也有公司自研C++游戏引擎的。目前正在开发独立引擎,学习游戏引擎底层模块开发。包括xmake 多模块引擎构建,反射、序列化反序列化、资源管理、Vulkan渲染。   | ||||
|    | ||||
| 【薪资】目前薪资20k*13,拒绝了公司技术专家职位(25k * 13 + 奖金),期望月薪资25K左右 | ||||
|    | ||||
| 【加班】目前公司是单休朝九晚十。能接受大小周/996,但还是希望平时双休,关键时刻单休   | ||||
|    | ||||
| 【面试进展】2月14号离职,目前刚开始投递简历,面了两家,还在寻找机会。 | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user