哥们我java转Unity客户端开发,只做过一个游戏,有相关八股文不
点赞 评论

相关推荐

头像
11-28 13:10
已编辑
上海大学 Java
本次分享游戏测开岗位的前三轮面试的面经,我面试体验下来,游戏测试开发岗位跟互联网测开是有非常大的区别的,是给游戏测试那边开发测试工具的,所以是强开发性质,基本不涉及测试内容,所以要投的这个岗位的小伙伴要注意一下。有了找实习时经历的十几轮面试的磨炼,秋招的面试变得比较得心应手。所以前两轮都算是速通了。-------------------------------------9月2日,一面的面试官是一位小哥,估计是刚当面试官没多久,面评写的很慢,基本上他问一道题,我答出来之后,要等他打一分钟左右的字才能继续问下一道问题整体体验感有点割裂,整体45分钟左右:1.自我介绍2.缓存体系优化中,为什么使用简历上提到的方法3.如果需要频繁定时刷新的话,怎么使用4.讲一下国自然项目的背景5.假如几十艘无人艇同时渲染摄像机视角,怎么降低负载6.天气变换怎么做的7.雾天怎么实现的8.不同无人艇之间的镜头切换怎么做的9.场景之间的加载和保存逻辑怎么实现的10.如果保存的场景文件有错误,怎么办11.强化学习项目中,无人车如果掉湖里了,应该算逻辑失败,怎么判失败的12.无人车撞到障碍物了,怎么判断的13.Java中针对List创建迭代器,在迭代的时候删除List中的某个值,为什么会报错14.Java中对于创建的对象和实例,放到内存中的哪个位置15.手撕——最长公共子序列-------------------------------------第二天中午打电话约了二面,9月8日,二面面试官很有水平,并且强度十分大,八股盛宴,各种类型的八股都有,我都扯到计组上面了,整体1小时20分钟:1.自我介绍2.讲一下强化学习中的Q值和V值3.强化学习中的贝尔曼方程4.Unity Bind啥啥啥(没用过,说了package)5.说一下你用过Unity中的哪些组件,都干了什么6.讲一下Unity中的Rigidbody7.如何检测两个Unity实体之间碰撞8.讲一下索引、聚簇索引和非聚簇索引、explain的作用9.如果客户端请求服务端很慢,怎么排查10.如何排查网络问题、讲一下四次挥手12.如果服务端Time_Wait过多,怎么办13.限流算法了解吗,如何实现一个限流算法14.CPU Cache了解吗,如果有一段代码CPU Cache利用率不高,怎么优化15.锁竞争,死锁怎么排查16.讲一下乐观锁、内核态和用户态、IO多路复用,epoll函数17.如果有个文件需要发出,内存需要拷贝多少次,讲讲零拷贝18.手撕——LRU,想一些测试用例,尽可能全面19.内存碎片问题,如何解决20.LRU能怎么改,让他多线程安全,效率尽可能高21.反问-------------------------------------面完一小时之后秒约三面,9月11日,三面面试官应该是个大leader,很有气场,问的问题也比较宏观了,我应该是有些宏观问题答的不太好,并且手撕虽然做出来了但是时间复杂度比较高,挂掉了,整体一小时:1.为什么选择测试开发,为什么不选别的岗位,为什么实习投的游戏测试现在改成开发了2.有没有比较深刻的经历3.在优化数据规模这块,为什么选择mongo4.数据迁移过程中,双写时如何保证数据及时更新5.为什么订阅了binlog还要双写6.迁移为什么选择一千万这个数量级7.迁移时的边界条件怎么确定8.如果在迁移时,先写mongo,再写mysql后,mysql又把mongo的数据变成老数据怎么办9.xxl的架构10.手撕——为游戏上层实现一个优先队列容器,提供以下方法:入队,需要提供优先级信息,优先级是个整数,从0开始,数值越大优先级越高出队,优先级最大的元素优先出队,优先级相同时满足先进先出默认元素类型是GameObject应用情景是一段时间内集中入队,而出队是分散不频繁的-------------------------------------面完之后泡了三个工作日,hr打电话通知不通过,但是别的组觉得我可以再面一下,流转到另一个组重新二面,详见下一篇
发面经攒人品
点赞 评论 收藏
分享
头像
11-28 13:27
上海大学 Java
继我上一个部门挂掉之后,流转到新部门,从二面开始,说是能加速流程,体验下来也没有加速但是这个组的面试体验大体都还不错,米家的面试体验基本上都挺好的,这点没得喷。-------------------------------------9月17日,四面的面试官看起来比较沧桑,比较疲惫应该没少加班,但是面试体验还是很好的,整体1小时15分钟:1.介绍一下你简历上的实习和项目2.项目中哪些是合作的,哪些是自己做的3.大模型应用方面怎么做的,延迟如何4.Unity中Animator底层实现,模型之间平滑过渡怎么做的,如何防止穿模5.前后端交互中,如果发现响应变慢了,可能是哪些情况,如何优化6.CI/CD底层实现,有没有写过自动化测试7.压测怎么做的,JMeter底层实现8.写一个脚本自动运行Unity并且测试帧率波动,怎么做9.场景题:给你一个Unity地图,地图上有多个障碍物,现在想让你测试除了障碍物之外所有区域是否可通行(环境建模是否有问题),你会如何做,选择什么数据结构,怎么测试10.手撕——合并区间,写出来之后想一些测试用例,要求覆盖所有情况11.喜欢玩什么游戏,有没有写过游戏脚本12.求职意向,接不接受转语言13.反问-------------------------------------面完第二天约下一面,9月25日五面,五面部门的技术总监,很有威严,但是给我的感觉却没啥压力,人还是非常不错的,面试之前还在开会,导致面试迟到了十多分钟,不过hr有跟我及时沟通,到也可以理解,项目赶得比较急,五面整体1小时10分钟:1.自我介绍2.实习学到了什么3.说说你对游戏测开的理解4.未来职业规划5.手撕——从零实现有序区间的插入与删除6.针对手撕设计一些测试用例7.如果手撕的数据量很大怎么办,百亿级别,如何优化8.为什么选择游戏测开9.Beta测试的时候效果如何10.如何衡量一个新角色是否超模,从测开的角度11.希望从测开这里学到什么技术12.喜欢什么游戏,Top313.反问-------------------------------------面完之后泡了几个工作日,约hr面,中间隔了一个国庆,并且还收到了一个我比较满意的offer,所以爽玩了一个国庆节国庆之后返校准备了一下,10月14日hrbp面,这位hr非常有资历了,她说她是8年前校招进米哈游的,所以这次hr面跟我之前面过的hr面完完全全不一样,很有压力,并且时间也长一倍,需要吐槽一下的是,到我反问时,她基本不正面回答我的问题,而是用我提出的问题来问我,比如我问了一个公司文化与氛围,她不回答,反而说我连这个都不知道吗整体1小时左右:1.自我介绍2.前几轮面试自己觉得表现如何,挂掉的面试为什么挂掉的3.岗位投递的方向4.对于未来的发展,转岗是怎么考虑的5.现在秋招有什么意向和进展6.其他公司面试体验如何7.实习公司的优缺点8.工作比较看重哪些点9.有哪些缺点10.反问-------------------------------------后续是泡了整整42天,在11月24日晚上六点半多点,收到感谢信。中间我催过一次,hr保温一次,hr询问手里offer一次,我全部如实回答了,我本来非常期待进入米哈游的,但是随着时间的一点点流逝,也变得无所谓了。导致我收到感谢信的时候,内心毫无波澜,就像意料之中那样。
发面经攒人品
点赞 评论 收藏
分享
11-25 11:18
已编辑
华中师范大学 Unity3D客户端
因为我是一个月前投的简历,但是等了一周没等到约面以为不会有机会了就没准备,结果过了一个月突然打电话约面。本人第一次面试,没准备过面经也没刷算法题(力扣十道题的实力)算是完全没实力的面试。面试得也是一团糟,好多问题答不上来,大概率过几天就会挂了。本人不太会c++,虽然CS也没好到哪里去11.24 一面自我介绍问了一下项目,因为简历上只有项目。问了一下项目是跟着教程做的还是自己做的。问了一下项目里的BUFF系统。听到buff分配是switch语句后就没深入了,估计是觉得写的不行。问八股讲一下c++里的多态多态里的虚函数的底层是怎么实现的?(回答了虚函数表,但是太紧张了,说的乱七八糟的)假如有十个同一个类的对象,虚函数表有几份(答一份)虚函数表存储在内存中的哪个区域?(答在rodata区域)c++中的内存分区是怎么样的?(静态存储区、rodata区,剩下的想不起来了,就给面试官说我的c++不太好,面试官就不再追问了,开始问c#了)c#的堆和栈?(说了一些乱七八糟的东西,扯到了堆是由GC控制的,肯定没答对)你对c#的委托理解?(说了一点委托和多播委托,以及存储关系,他们怎么存储函数)委托怎么删除某个方法(答使用-=运算符,不确定对不对)链表与数组的区别(回答了存储空间分配,插入删除的区别)数组插入的时间复杂度(答O(n))哈希表的理解?(我回答了字典处理哈希表的逻辑,顺便提到了哈希冲突)哈希冲突怎么解决?(字典里采用了链地址法,大概讲了一下,但是语言非常混乱,实在是太紧张了)了不了解平衡二叉树的概念?(这时候以及蒙了,一年前学的数据结构,猛地没想起来,随口答了一下模糊概念)平衡二叉树的左右子树深度差值是多少(答0或1)手撕平衡二叉树的判断,要求自己构建树结构(原本以为没手撕的,结果还是来了,因为忘了平衡二叉树的概念,写了40分钟没写出来,深度判断用的还是层次遍历)讲一下代码思路(一边讲面试官一边看,估计看到代码错了,没深入问)问渲染管线(答,cpu将数据传入到GPU,然后经过顶点着色器、片元着色器等处理,然后投影、裁剪、最后进入光栅化整合输出)深度测试是在什么阶段实现的?(答光栅化,这里答错了应该,下来后搜了发现是在片元着色器阶段)如果要实现半透明的话shader代码怎么写?(不会,直接说了不知道,只了解shader graph知识,现在想想应该可以在深度检测时对后方物体进行颜色均值处理?不太确定)反问环节问我现在基本都是在做项目,这一阵子发现自己开发项目与面试经验不是特别吻合,如果接下来要找面试的话应该往哪个方向走。面试官说我不会c++的话在面试的时候会有一定劣势,如果要做项目的话还是争取能做到把游戏完整上架的程度才比较好,项目算是加分项。相比之下把基础弄好会好一些。然后又聊了很多有关c++和c#的事情,说基础知识之所以是c++是因为c++更偏向于底层,在回答的时候可以描述的更清晰一点。(如果需要的话可以单独开一篇文章说,面试官还是讲了很多内容的)问是哪一个项目组的?游戏还在研发阶段。整体面试下来刚开始的时候非常紧张,语言组织不太好。不过面试官人很好,很有耐心,第一次面试还没准备答成这样子也是没啥可说的,接下来就坐等被挂了。11.25 挂
查看22道真题和解析
点赞 评论 收藏
分享
12-02 14:53
已编辑
拷打项目和unity引擎知识多一点,印象只能记起来这些了,有些细问的小知识忘了面试题目:项目实习拷打:自我介绍介绍一下你做这个项目碰到最难的事情,并且是怎么解决的(然后拷打了这个事情解决方法细分的知识)介绍一下你在实习碰到最难的事情,并且是怎么解决的(也拷打了这个事情解决方法细分的知识)unity引擎里面函数执行的顺序是怎么样的?update和latedate和fixupdate有什么区别?为什么相机在跟随的时候要放在lateupdate里面?不能放在fix或update里面吗?如果放了会怎么样animator了解吗,知道animator是怎么样使用事件帧的吗?渲染画面帧的时候是在update这个帧里还是帧前或是帧后?渲染完成之后的帧是在帧前帧后还是哪个出现?介绍一下你你在时候关于性能优化的工作?scriptableobject了解吗?你了解图形学在渲染画面的时候是怎么进行工作的吗?顶点,面元,片元,像素之类的知识。人物武器攻击的时候碰撞是怎么做的?协程在unity是怎么实现的?有在项目中具体用到吗?八股:常用的数据结构有哪几种?哈希冲突怎么解决?lambda表达式了解吗?你刚才说到捕获上下文常量变量,知道是怎么进行捕获的吗?lambda表达式可以在编译函数中进行吗?或者是怎么样进行?lambda表达式怎么样简化代码的?lambda表达式有过具体的运用吗?构造函数可以是虚函数吗?如果是会怎么样?(这里是挖坑了,主要还是回为什么不能的原因)析构函数一定是虚函数吗?如果不是会怎么样?vector和list和map了解吗?vector和list的遍历和插入时间复杂度分别是多少?如果有很多数据要进行哪个更快一点?智能指针有哪几种?weakptr的作用是什么?具体是怎么实现解除循环引用的作用的?回答的不怎么样,问八股越问越细,直到不会为止,10月上旬做的笔试,12月才面试,八股都忘完了,引擎知识也差不多,都已经在进行做新项目备战春招了,反问随便问两个问题就拜拜了,面试官人很好,问到很难的问题不会的时候都会给出解答,还介绍了一下公司和聊了一会天,面试完之后秒挂。
查看23道真题和解析
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务