UE4/UE5 引擎常见面试题总结(1)

UE4/UE5 引擎常见面试题总结(前端/游戏开发岗必看)

一、前言

本文整理UE4/UE5引擎开发岗位高频面试题,覆盖基础概念、渲染、蓝图、C++、性能优化、网络、物理、动画八大模块,适合校招、初级/中级UE开发岗复习,附核心答案要点,方便快速背诵。

二、基础概念类(必问)

  1. UE中的Actor和Component有什么区别?
  • Actor是场景中的实体对象,本身不包含功能,是一个容器。

  • Component是功能模块,挂载到Actor上赋予能力(移动、碰撞、渲染、音频等)。

  • 关系:Actor包含多个Component,Component依附Actor存在。

  1. Pawn、Character、Controller分别是什么?
  • Pawn:可被控制的Actor,是角色基础。

  • Character:继承Pawn,自带CharacterMovement、CapsuleComponent,专门做人形移动。

  • Controller:负责控制逻辑,分PlayerController(玩家)、AIController(AI),与Pawn分离解耦。

  1. UObject、AActor、UActorComponent继承关系?

UObject → AActor

UObject → UActorComponent → 各种Component(USceneComponent等)

三、蓝图与C++相关(高频)

  1. 蓝图和C++各自优缺点?
  • 蓝图:开发快、可视化、迭代快、适合逻辑/界面;运行效率低、大型项目难维护。

  • C++:执行效率高、底层可控、架构稳定;编译慢、上手门槛高。

  • 项目规范常用:C++做底层框架+核心功能,蓝图做业务逻辑与配置。

  1. UE反射机制(UCLASS、UPROPERTY、UFUNCTION)作用?
  • 实现GC垃圾回收、细节面板暴露、蓝图调用、序列化、编辑器集成。

  • 不加宏,变量/函数无法被引擎识别与蓝图访问。

  1. GC垃圾回收机制简单说?
  • UE使用标记清除GC,UObject自动管理。

  • 被强引用(UPROPERTY)的对象不会被回收;无引用则自动销毁。

  • 避免野指针:不用裸指针,多用 TWeakPtr 、 TSharedPtr 、 UObject* 配合UPROPERTY。

四、渲染与材质(渲染/TA必问)

  1. 前向渲染与延迟渲染区别?UE默认?
  • 前向:每个物体对每个灯单独绘制,适合少灯、移动端,支持透明。

  • 延迟:先渲染几何信息到GBuffer,再统一光照,适合多灯、PC/主机。

  • UE默认PC/主机延迟渲染,移动平台前向为主。

  1. PBR是什么核心思路?
  • 基于物理的渲染,遵循能量守恒,核心两部分:

  • 漫反射Diffuse

  • 高光Specular(粗糙度+金属度)

  • 材质更真实,灯光统一,不用手动玄学调参。

  1. 什么是DrawCall?怎么优化?
  • DrawCall:CPU向GPU提交一次渲染命令。

  • 优化:

  • 合并Mesh、合并材质

  • 使用Instancing(实例化)

  • LOD、剔除(视锥剔除、距离剔除)

  • 减少透明物体、减少状态切换

五、动画系统

  1. 动画蓝图、Animation Blueprint工作流程?
  • 状态机管理动画状态(Idle/Run/Jump)

  • 混合空间BlendSpace处理方向/速度混合

  • 动画蒙太奇Montage做技能、攻击、受击

  • 根运动RootMotion、IK(手部/脚部)

  1. IK是什么?常用在哪?
  • 逆向运动学,根据末端节点反推骨骼旋转。

  • 常见:脚部贴地、手部抓握、瞄准IK。

六、物理与碰撞

  1. UE碰撞通道、碰撞响应有哪些?
  • 通道:ECC_WorldStatic、WorldDynamic、Pawn、Visibility、Camera等。

  • 响应:Block、Overlap、Ignore。

  • 项目必须统一碰撞规范,避免逻辑BUG。

  1. 物理模拟(PhysX)常见优化?
  • 减少模拟物体数量

  • 合理设置质量、阻尼

  • 远距离关闭物理、休眠不动物体

  • 简化碰撞形状(用胶囊、盒子,不用复杂网格)

七、网络与多人(进阶必问)

  1. UE网络模型:Server/Client、Authority?
  • 服务器拥有最高权限(Authority),客户端仅预测。

  • 逻辑尽量在服务器跑,防止外挂与不同步。

  1. 复制相关:Replicate、RepNotify?
  • Replicate:属性从服务器同步到客户端。

  • RepNotify:属性同步后触发回调函数,做表现更新(血条、特效、状态)。

  1. RPC函数分类?
  • Server:客户端调用,服务器执行(必须可靠)

  • Client:服务器调用,对应客户端执行

  • NetMulticast:服务器调用,所有客户端执行

八、性能优化(面试官最爱)

  1. UE性能优化常用手段(通用)

  2. 减少三角形数量、合理LOD

  3. 合并材质、减少贴图分辨率与通道

  4. 控制灯光数量,用静态灯、烘焙光照

  5. 合理使用遮挡剔除、HLOD

  6. 减少Tick函数,禁用不必要Tick

  7. 蓝图转C++核心逻辑

  8. 内存优化:减少冗余对象、及时释放资源

  9. 使用Stat Unit、Stat Game、ProfileGPU调试瓶颈

  10. 什么是Tick?为什么要少用?

  • Tick每帧执行,频繁逻辑非常耗性能。

  • 能用定时器、事件驱动,绝不每帧跑逻辑。

九、常见场景题(实战向)

  1. 如何做一个角色跳跃?
  • Character自带Jump函数

  • 给CharacterMovement设置跳跃高度、重力

  • 动画蓝图监听IsInAir、Jump状态播放动画

  1. 如何实现物品拾取?
  • 球体/盒子碰撞Overlap事件

  • 判断碰撞对象是否为角色

  • 销毁物品Actor,添加到背包数据结构

十、总结

UE开发面试核心考察:

  • 基础架构理解(Actor/Component/Controller)

  • 蓝图+C++配合思路

  • 渲染/动画/物理基础

  • 网络复制常识

  • 性能优化意识

后续会更新UE高级面试题+手写C++代码题+项目经验回答模板,需要的同学点赞收藏。

相关推荐
四代水门7 天前
UE5实现客户端与服务器时间同步
ue5
智海深蓝9 天前
海上平行战场:态势模拟三维可视化平台
3d·ue5
_守一10 天前
UE5 ListView记录
ue5
成都渲染101云渲染666610 天前
CR15新功能介绍以及CR15云渲染流程
ue5·图形渲染·blender·maya·corona
一锅炖出任易仙11 天前
创梦汤锅学习日记day30
学习·ai·ue5·游戏引擎
OSwich11 天前
【UE5学习笔记】UMG中控件命名规范
笔记·学习·ue5
一锅炖出任易仙12 天前
创梦汤锅学习日记day29
学习·ai·ue5·游戏引擎
吴梓穆12 天前
UE5 C++ 注册 开始重叠和结束重叠事件
开发语言·c++·ue5
妙为13 天前
unreal engine5(UE5)中使用Rider
ue5·游戏引擎·虚幻·rider
Yuk丶14 天前
厌倦了假AI对话?本地 LLM 语音对话 + 口型同步系统 2.0(已开源!)
c++·人工智能·语言模型·开源·ue4·语音识别·游戏开发