10.14&18 西山居 游戏客户端 一面40min二面1h

两个面试官

10.14 一面40min

面试官1:

  • C++分区
  • 优化堆内存的方法?比如内存池?有了解过吗?
  • C++11智能指针?shared_ptr的引用计数保存在哪?

(还有一堆C++八股,不多赘述了)

面试官2:

  • 先提了个小建议,简历最好为一页(因为我东西多写了两页- -)
  • -8的补码?-8的补码最少要多少位来表示?4位二进制补码表示的范围?(答得不好)
  • 数据库里事务的四大特性?
  • 事务读取幻读是什么?
  • TCP协议如何保证可靠?
  • TCP流量控制?TCP三次握手?TCP流量控制和拥塞控制?
  • 内存对齐?
  • 动态链接库和静态链接库的区别?都是有多份拷贝吗?
  • 算法题:判断正整数n是否为2的整数次幂?时间复杂度?

面试官1:

说一说实习经历里的Two Bone IK里的Alpha是怎么控制过渡的?

有一个物体A,物体B,B绕着A的轴(世界的Y轴)旋转,要怎么做?(这里答了绕Y轴旋转的矩阵数学形势,但是面试官说要用图形API要怎么做,OpenGL或者DX12的。。。)

反问

当时感觉一面凉了,问数据库的东西基本全忘了,没怎么复习数据库。

而且补码和计组那些东西有的也忘记了,打的不是很完美。

但没想到第二天HR直接通知二面了。

10.18 二面1h:基本上全是场景题

面试官1:

  • 你的意愿偏向哪块?客户端?服务端?引擎?
  • 面试官介绍了一下它们团队
  • 实习经历中IK的Alpha过渡怎么实现的?
  • 场景题:有两个点,怎么计算两个点之间的插值?给一个初始矩阵,一个时间,和一个权重?(这里描述的十分繁琐,我大概答了线性插值,,)
  • 那上面的例子,旋转怎么插值?可以理解为三个欧拉角,在不同时刻三个维度如何插值?(说了个大概,说了弧度和角度插值,但感觉不对。。)
  • 说一说你做的游戏demo,技术上的关键点?

---------然后这个时候会议断了,随后打了个电话过来,说是那边电脑没电了。。。遂开始电话面----------

  • 场景题:人物绑定摄像机,那人物在移动的时候,场景中的物体是如何映射到摄像机和屏幕上的?(这里没懂啥意思,问了问是不是渲染管线的几何变换阶段?)
  • 接上题,面试官举了个例子,说开车的时候,后视镜里面映射一个世界空间中的物体,问这个物体是如何映射到我们相机空间中并且显示在这个后视镜上的(依然没太懂,这里答了平移变换、屏幕映射以及反射)
  • 说一说你的demo中子弹是如何实现的?你有用过UE里的碰撞逻辑函数吗?
  • 场景题:如何判断子弹是否以物体相交,因为游戏画面以帧为单位,子弹每一帧都会移动一个距离,如果这个距离大于这个物体就没判定为未相交,如何解决这个问题?(答了包围盒,又答了隐式方程直接计算,后来觉得不可行,又答了可以根据每帧移动的距离来确定包围盒大小。。面试官说对,,但我觉得好像不对。)
  • 你的子弹类可以不通过类来实现吗?(我:???)用struct行不行?struct和class的区别?struct有没有默认构造函数?
  • 场景题:看你玩过只狼,勾绳飞檐走壁的效果怎么实现?那现在有个需求,需要判断物体中的突出部分?比如说寺庙塔那种屋檐的边角?(这里答了包围盒,又答了根据三角形面数的密集程度。后来面试官说可以通过一个点所在的三角形面数的多少以及法向量来判断。。)
  • 场景题:有超大规模的顶点数,比如600w个,用什么数据结构来存比较合适?(答了hash+链表,中间想了想OpenGL存索引的方式,还是有点忘记了)
  • 接着上个问题,计算机中浮点数的表示范围?因为顶点可能需要用浮点数来表示。
  • 最后可能看没啥问的了,问了本科自己带队做的科研项目,问了项目代码行数大概是多少。总之就是看着简历上的东西问的。
  • 10.19 更新:想起来一个,面试官问用没用过VisualStdio,用没用过数据断点,说多线程情况下的(没用过)
  • 10.21 更新:又想起来一个,说说sprintf

还有一道场景题,想不起来了。

总体感觉回答的一般,能答的都尽量答了。

而且感觉场景题实在是不好答。

-----------------------------------------------------------------------------------------------------------

说点感想吧

连续面了一周多吧,目前这算是最后一场了(游戏)。

十月中旬了,不知道后面还有没有机会了。

准备了几个月下来,感觉校招游戏这一行确实难度不小。

需要ACM的编程水平(笔试)、C++(需要项目经验以及深挖底层)、图形学(客户端的话可能要求没那么高)、游戏引擎、以及实习经历和游戏项目经验(场景题)。每一方面的知识都需要长时间的积累,都是难啃的骨头。

以及过硬的计算机基础,这几场面试都闻到了操作系统底层、以及计算机组成原理的很多知识,掌趣科技的面试直接从计算机原理开始问。网上基本上所有的八股文都不涉及这些东西,尤其是计算机组成原理这一块。可能很多读研的同学、以及大三下的同学,计组已经学完了一年,很可能都忘记了。

也可能是水涨船高,一年比一年卷。记得上两届的学长和我说当时八股文问了一遍加上简单问问项目就进大厂了,今年可不是。

上午开组会,下午面试。开完组会被导师留下谈话,最近科研没什么进展,基本上天天都是笔试测评,还有几场面试。导师多少也说让我认清现实,找个国企之类的得了,以后的事以后再说。(还问我认命吗??我当然不认命了)

也不算什么风凉话吧,毕竟导师也是为了学生着想。确实这形势太难了。我也很幸运能遇到我的导师,能坐下来像朋友一样和我聊天,给我各方面的指导,也给我这么长时间去找工作。

抛去这些客观因素,话说回来还是自己菜,如果手里有ACM的牌子,提前一年半准备,图形学的作业该好好做就好好做,unity和UE起码都了解了解,打磨一个细致点的demo,可能形式再怎么不好也能拿offer吧。

对于算法编程笔试这一块,还是想多说几句。

力扣是远远不够的,在此奉劝看到这个贴子的大一大二同学,以及研一的同学,算法提前准备,以ACM的强度去训练自己,参考今年网易雷火和互娱的笔试难度,这样起码笔试和面试算法这一块才能过关。同时感觉米哈游、吉比特、剑心、友塔等公司笔试难度也不小,基本感觉全A才能进面。(当然我米全A了也没能进面,应该是投晚了,提前批就招满了)

如今博主也是十分后悔当初大一没有跟着ACM队一直练下去。而是为了所谓的绩点刷着一遍又一遍的练习题。这一行,还是技术实力是最重要的,无论是科研还是工程,coding能力是第一。

时间不早了,睡觉了。心态还是要保持良好,无论环境形式好与坏,提升自己的能力是最关键的。晚安。

2022.10.19

祝所有游戏新人早日拿offer,秉持着热爱继续坚持下去

---------------------------------------------------------------------------------------------------

2022.11.28 凌晨更新

没想到这帖子引起不少关注。。。

楼主目前手里也只有俩offer,现在基本差不多结束了吧,目前觉得进个游戏小厂,先入行吧。不想去非游戏核心业务的。

同时也打算春招再试试。。

在这再多加一条感想吧:想冲游戏的目前还是选Unity吧,岗位多,上手容易,另外后端那些知识也别放弃,有时间多学学,技多不压身。国企银行清一色java,后端岗通吃啥都能投。别把自己的技术栈局限于游戏这些,不然技术栈太窄。明年或者以后形势啥样真不好说,反正今年大部分人都是手足无措的。我也是。总觉得自己准备的够久了,一定能上岸***厂吧,我做的方向没那么卷吧应该好进***厂吧。然而现实很骨感,并不是按照自己的想法来的。

就这样吧。

另外有没有Unreal赛道的朋友啊,感觉UE方向的同学真的太少太少了。面试倒是问的不浅。这条赛道的同学都怎么样了,有想法的可以私信交流一下下~

以上~希望大家身体健康

#2023校招##游戏客户端开发工程师##游戏开发##西山居##面经#
全部评论
我是24届的,看到老哥这个帖子有点泪目,今年这个环境真的让我迷茫了,不知道还应不应该坚持下去,每天都在焦虑中度过,虽然时间看起来还很长,但我一个实习也没有,c++都没学完......
3 回复 分享
发布于 2022-10-19 16:51 新加坡
多少薪资
2 回复 分享
发布于 2022-10-19 12:29 浙江
客户端0offer,已经准备换赛道了。想开了,与其996做换皮游戏,不如955国企躺平,休息时间做自己的游戏。
2 回复 分享
发布于 2022-10-19 00:54 北京
老哥加油,一直看你的帖子
1 回复 分享
发布于 2022-11-29 22:15 新加坡
老哥硕士是什么方向。面试感觉问了好多图形学的
点赞 回复 分享
发布于 2024-07-21 02:32 湖南
我是24届unreal赛道的...看了些面经都问源码,ue上手也不简单,前两天腾讯实习面试问的计网图形学都还没学。。应该是寄了
点赞 回复 分享
发布于 2022-12-11 00:18 湖南
lz是哪两个offer啊,准备去哪了🤕
点赞 回复 分享
发布于 2022-11-29 13:38 浙江
楼主客户端只问c++嘛,如果只想做Unity是不是只问c#
点赞 回复 分享
发布于 2022-11-22 22:57 澳门
楼主咋样了
点赞 回复 分享
发布于 2022-11-22 22:56 澳门
看看首页
点赞 回复 分享
发布于 2022-11-12 16:49 北京
看得我心惊胆战,学校不好,ACM也没打出成绩,又不想读研,大三上才开始准备C++八股和引擎学习,学的计组,数据库也忘得差不多,但是又想进游戏行业,真的好难
点赞 回复 分享
发布于 2022-11-01 21:41 辽宁
和你情况差不多,前几天问了你snk笔试的事不知道你还记不记得,结果可能hc满了当天收到笔试是策划的,直接放弃了 归根结底是自己把秋招看得太简单,盲目自信,重视程度不够,单靠突击八股突击引擎撑不到最后,很多东西都是一边笔面试一边补充漏洞。加上本身投的也晚,现在心态已经放平当锻炼经验 被面试官问到最直击灵魂的问题是你的优势在哪?在今年这个竞争环境下,如果每项都只是60分到80分,我自己都给不出公司选我的理由 目前阴差阳错拿了个西山居的训练营实习offer,打算抓紧最后机会再学习学习。导师倒是不管我,但是家里多少还是倾向进国企或者当老师,有时候我也会想955或者寒暑假,大把空闲时间自己做游戏不香吗?可悲的是,内心承受不了这么多年的沉没成本,不甘心辛辛苦苦上学,也不舍得放弃入行机会。等春招破釜沉舟,要么上岸,要么彻底想开了  和lz还有楼里的同学一起加油,有机会多多交流w
点赞 回复 分享
发布于 2022-10-21 16:11 河南
一面还好,二面我都不会。。。
点赞 回复 分享
发布于 2022-10-19 11:50 北京
加油吧哥们,看了你几个帖子了,感觉我跟你情况很像,现在也是0offer,秋招和学校两头催。 只不过我没有这么多大厂面,西山居和快手笔试完没消息,snk中国一面后没消息,掌趣笔试都没有。我也投了非常多的小厂,一是面的场景题更多,二是很多都要求实习,我导师是不让的。到现在小厂流程也没几个了。 我的刷题应该算是特别短板了,笔试面试做题都不太行。想的是秋招先坚持到最后吧,结束了就刷刷题,剑指春招了。我也是属于想好了找一个游戏开发工作的,加油。
点赞 回复 分享
发布于 2022-10-19 01:32 吉林
居二面过了吗
点赞 回复 分享
发布于 2022-10-19 00:45 北京

相关推荐

05-27 17:21
上海大学 C++
  一本211硕士,计算机科班,从去年5月时间准备走ue方向,到现在有一年的经验了,目前有一个自制ue游戏,一个实习经历(ue研发非游戏厂),这些看着还行是吧,但是我硬实力非常一般,比如算法因为之前一直做项目没怎么刷,开始力扣只有100题还是大学时候累记的。从3月中旬开始投,到现在大败而归,也准备继续沉淀秋招了。不怕丢人这些经历也都说出来吧按照时间顺序,不算没过简历的,有笔试和面试的经历分别是米哈游。及其后悔投的太早了,那时候算法能力还很弱,选择题不知道但是还行,四道编程题只过了1.5。网易互娱,四道编程还是3道来着,只过了一道多好像。让我深刻知道了自身实力的差距腾讯天美,是唯一一个先面试的,当然面试的手撕题我不会做,后面看其实比较简单,然后除此之外回答也一塌糊涂,根本不是一个量级的,感觉自己表现的不是人哈哈网易雷火,经过前面几次失利,我一直备考刷题,在这里雷火已经做了4道对1.5道,虽然还是拉垮,但是对我来说竟然是做的最好的一次华为,华为是没有游戏的但我冲着华为两个字投了软件开发,结果那次遇到最难的题,让我一下打回原型了,150分都没达到。之后就补短板,练输入输出,图,回溯灵犀互娱,这次与以往不同就是选择题分值很大,编程题的话3.5/5,阿里的题居然有1-2道打卡题,所以做的还不错,但是可惜最后一题实在不会,本来是在牛客上刷到过但是我以为不会出,没想到还真出了。自此我开始留意牛客上的帖子柠檬微趣。这个就是unity岗了。也有选择,是我唯一编程题4道全a的,也是唯一进面的,太惨了,结果ai面虽然好好准备,但是还是寄了,可能还是基础太差截止目前有点摆烂了,七次失败,岗位真的不多剩下的只有次一点的厂了游酷盛世。 听说风评不好,只是试一试,还是很多选择不过很窝火做的,编程题的话3道本来全做出来的,只是第二道不知道为什么就是不通过,后面想想可能是牛客系统要写个函数而不是只在main函数写西山居seed训练营。这次编程题倒是全a,但是分值太少了,选择题和不定项选择太多,因此没了下文兔皮鸭科技,一个boss看的公司,直接面试的,问的也是实习和基础的c加加和ue八股,基础是真的根本没有腾讯那么深。他们在做乙游。然后可能hr不满意,不知道为什么就没有后续了以上是持续到5月底现在的,其他简历没通过或者没下文默认没通过的比如鹰角,叠纸(叠纸没有游戏客户端实习),莉莉丝,祖龙,搜狐畅游等一部分游戏厂。累是真的累,一边科研一边刷题,还陆续准备图形学,因为图形学真是可能必备的了,对于我从来没学过很痛苦。希望秋招能有个好结果!    
点赞 评论 收藏
分享
06-02 12:37
已编辑
吉林大学 C++
过去的一年一直在为找游戏客户端开发实习做准备,但直到现在也就只接到过一个小公司的offer。思考了一下打算转前端了,目前大三下转战也还有机会。我其实内心也还在纠结,感觉这样做属于是,遇到瓶颈困难就半途而废,东一榔头西一棒,最后一事无成,但又担心万一自己的分析是对的,转战是合理利用自己优势,死磕游戏开发是执迷不悟。下面我会讲述原因,希望有懂行的前辈或是同学锐评一下我的观点,如果能给出建议,真的不胜感激,我现在真的有些迷茫。放弃游戏客户端开发最大的原因:我感觉,我了解到的游戏客户端开发的学习路线不够规范化,缺少学习框架的机会,学起来总感觉只会纸上谈兵,脱离实际生产(面试考察)需要。我觉得学习一项计算机技能大概分三个层次:第一层基础:学习算法,线性代数,OS,计网,数据库这些计算机学科基础,熟练掌握对应领域常用编程语言,常用api;第二层框架:有了第一层可能可以开发一个看起来能运行的一个小项目,但毫无章法,这时候就要学习框架,用行业内更规范化的结构组织你的项目(我正是缺了这一部分,所以这会儿也说不出具体的),第三层专精:向底层更深度的理解,就比如说你可能会用unity的shader,会用c++的openglAPI,但为了达到第三层你最好要会计算机图形学,最好能自己手搓软渲染器,游戏引擎。根据个人面试经历、招聘要求我总结,游戏客户端开发有以下面试考点:1、c++面向对象,操作系统,问你八股要答得上来2、算法,说实话我个人感觉挺难的尤其是雷火精英实习笔试,面试时也经常会有那种看起来简单,但是加上时间复杂度限制就变成hard难度的题。3、计算机图形学、渲染管线、lua热更新网络编程、游戏引擎实操、这一部分正式我迷茫的地方所以可以看见我只是列出了关键词。前两点不是问题都算是第一层基础,无非就是多刷题多背,学习路线知识体系也很明了,你也大概知道面试官会问些什么。如果是因为前两点失利我是不会萌生换赛道的想法的,重点就在第三点。考点3混合了第二三两层,框架与进阶,游戏开发确实很卷,面试经常会遇到问第三层的知识,但其问第三层也无所谓了,我觉得第三层知识的考查就只是为了筛人,而且也不是所有公司都一定要求会第三层,所以卷也不是我想转战最主要的原因。最主要的问题是游戏开发在应试时缺乏一个公认的框架,我不知道要学什么,面试时面试官问的问题也是涉及广泛,有的时候我也分不清一些知识到底属于第三层还是第二层,我可以去学计算机图形学,了解管线渲染过程,学习lua热更新网络编程,学习OpenGL、学习unity等等,但这些都各自独立我不知道怎么把他们组织起来,不知道我要做一个什么东西,说出一些什么理论,在面试官看来是有意义的。所以又卷又学习框架不清晰,我的技术实力也不高,本身就是把计算机学习当作是学一门高级一点手艺,混口饭吃,当初选择游戏开发,是觉得反正以后都是软件开发,游戏开发,开发出来的产品是自己感兴趣的,可能会更有动力一些,而且游戏开发好像以后的技术壁垒会更高一些(现在看来也确实如此),就选择了游戏开发,我当时以为的难是知识难,现在才发现难点是你不知道要学什么。而我所了解到的前端就没有这个问题,虽然我还没开始具体的学习,但就根据我搜索到的面经,B站上学习路线指导视频,你可以看到面试官还有这些指导视频所关注的点是一致的,而且框架层的知识体系是明了的。当然前端开发也有他的问题比如竞争人数更多(但岗位至少比游戏开发多),技术壁垒低,目前职业发展有被淘汰的风险,很多人都在考虑转后端或是全栈。大概就是这样吧,游戏开发我真不知道我要做什么,不只这里我会四处去请教,再思考两三天,是要做个决断了。
牛客414065333号:好像游戏客户端知识又多又难,我感觉使劲刷算法和基础八股就行了,那些高级的像什么引擎底层应该也不指望应届生会吧
投递哔哩哔哩等公司8个岗位
点赞 评论 收藏
分享
评论
24
76
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务