腾讯天美工作群(客户端开发)一面凉经
📍面试公司:腾讯天美工作群
👜面试岗位:游戏客户端开发
📖面试问题:
自我介绍
Q:看你的简历有游戏引擎,Unity,UE的项目,你方便讲一下你是怎么想的嘛?
A:UE的项目是大二的时候刚动手游戏开发的时候做的,unity是看到这个引擎的泛用性后面去学习的,游戏引擎是因为自己学了一些些计算机图形学的理论知识想尝试运用一下。
问项目(以为会先问C++八股)
Q:UE5项目中敌人AI行为树你了解多少?
A:我有点不太记得了(23年9月份跟教程做的项目,而且面试通知得有点着急就都拿去背C++八股了,项目都没重新理)
Q:你的俯视角射击游戏中的有限状态机要注意什么?
A:回答了一下状态机的构建过程......(注册状态,用字典存储状态等)
Q:那状态切换之间是怎么进行的呢?
A:用变量条件判断进行切换
Q: 那假如我进入了射击状态用的是什么条件判断呢?
A:我是把状态切换放在Update中检测鼠标左键输入进行切换的
Q:那要是长按呢?
A:......(其实这里有点被问懵了,当时状态机的一些东西也是有点忘记了,不过还是想知道面试官想听到的是什么答案)
Q:要是Unity要是想隐藏一个gameobject有什么方式?
A: 一般可以使用SetActive()函数和禁用gameobject的SpriteRenderer组件
Q: 那你觉得哪个会更加耗性能一些呢?
A:调用SetActive函数会更加耗费性能,毕竟禁用SpriteRenderer只是改变gameobject其中的一个组件
Q: 你了解对象池嘛?在使用的时候要注意什么?
A:当时稀里糊涂好像说到了对象池通过切换状态来减少性能消耗(但是要注意些什么没想到)
Q:你的项目里面有提到使用NavMesh,可以描述一下A*算法嘛?
A:没了解到
Q:关于分部位动画了解多少?
A:没了解到
Q:帧同步和状态同步的区别是什么?
A:帧同步是同步输入,状态同步是同步状态
Q:那假如我玩家基本的移动,帧同步是传什么值?
A:应该穿的是玩家的位移矢量吧(紧张说错了,后面加强记忆了一下是传的输入指令)
Q:什么时候可以用得上二叉树?
A:不知道(当时在脑海中好像在做项目的时候没用到过二叉树,后面想想行为树也类似二叉树?)
Q:堆和栈的区别
A:八股
Q:链表的优点,缺点和存放位置
A:八股
Q:说一下你比较擅长的?
A:......(有点楞住了)
反问:
Q:关于游戏引擎学习的方向
A:每个公司用的都不太一样,像网易用的是自研,米哈游用的是Unity比较多,腾讯是Unity和UE都有
🙌面试体验:处女面感觉准备还是太不充分了
#软件开发笔面经#