游戏引擎日常实习总结

还是写个总结吧。

5月初开始投,5月中旬开始第一场面试,5月底结束面试,告一段落了。一共投了十二家,岗位全部为引擎/渲染:

西山居:投了一个月没反应,貌似不要27届的,也可能是投的太晚了还在泡池子

搜狐畅游:不是26届,简历挂

遥遥领先:本来是为了面试经验才投的,后来发现还要机试,直接放弃

特斯拉:同上,不过特斯拉的机试题我还做了一下,结果他给我出了一道线程安全和线程通信的场景题,完全不会,直接放弃

莉莉丝(一面挂):唉,第一次面试,现在仍然感觉面试官水平很高,组里做的内容也能学到真东西,如果要我是真想去的,但凡自己当时多背两天八股,结果会不会有所不同呢?==

不鸣科技(一面挂):这家在我之前的面经里写过,只能说最像kpi的一次,不过也可能是单纯的不合胃口,就算过了我也不会去的,感觉实在是有点草台班子。

字节绿洲工作室(三面挂):我明明投的zero36和微光,结果面的绿洲。绿洲的一二面很有意思。一面比较有意思的地方是先问你渲染管线的步骤,然后从前往后拷打整条渲染管线的详细流程,每一步都一定要你说明白,忘了的话会提示你然后让你继续讲。最后手撕也很有意思,让我手撕Bresenham的画线算法绘制三角形。二面主要拷打cpp和pbr以及稍微现代一点的图形学算法,pbr甚至跟我聊起了底层物理原理,像光子衍射、金属是分子还是原子。手撕一道mid,不过暴力做的有点烂。三面一塌糊涂,一周后发感谢信。一二面都是秒过,最后反问面试官对我的建议和意见,评价都是没什么意见,二面面试官让我多在力扣上刷点算法,说我手撕太紧张。三面的话,一是三面前oc了藤子,所以已经好几天不怎么学了,抱着试试的心态去面的(早知道应该直接拒了的),二是心态不好,开局让我手撕智能指针因为之前只写过一次记不清具体实现了撕得很差,在提示下还是写的坑坑巴巴的导致心态爆炸,后面看我红温了问我很简单的问题都没答出来,最后答得应该是我所有面试里最差的,很遗憾。

xx智能(oc):本地一家中小厂,面的岗位主要做三角形重建,唯一一场线下面,大概面了15min就oc了。不过他们方向和我想做的不是很符,去面试主要是想积攒一点经验,拒了。

中电信AI研究所(oc):主要做工业自研渲染引擎。写过一篇他的面经,详情可自行跳转。本来也是为了面试经验投的,不过oc之后hr提的待遇只能说确实很不错了,但是我一不太想去国企,二想做游戏,拒了。拒了之后hr跟我说他们很缺渲染和三维重建方向的人,有兴趣可以去尝试一下。

永航科技(oc):主要负责维护qq炫舞的自研引擎,技术相对有些落后。待遇还可以,但是北京没房补实在是硬伤,hr貌似也知道这件事,所以反复强调是否在意base北京,最后还是拒了。

腾讯天美(oc):详情可见之前的面经。虽然第二次面试就碰上了藤子,但是面的身心愉悦,可能藤子确实更看重人的基础和发展潜力,也更愿意培养,二面的leader跟我聊了很多这方面的事。

萨罗斯:之前属于字节的工作室,字节大裁游戏部门后被光子收购。一面无手撕,纯拷打了1h图形学方面的知识,跟面试官聊的不错,也能感觉出来面试官的水平很高。一面后一周还没给我反馈,我也没问,也不想面了,拒了后续。

至此找日常实习之路已经结束,其他的游戏厂有的是我以为不招27引擎日常所以没投(比如网易),有的只招客户端所以也没投(大部分小厂),引擎岗相对而言还是太少了。有点遗憾的是莉莉丝。很难受的是字节,前两面跟面试官聊的很好,但是三面实在是烂的出奇,本来打算详细讲讲的,不过现在道心破碎已经没心情了,反思了一下自己差的还是太多,老老实实去藤子沉淀了。

全部评论
请问下佬腾讯二面有没有手撕环节呀
点赞 回复 分享
发布于 07-08 19:59 广东
佬是自学的吗,还是导师是这个方向的
点赞 回复 分享
发布于 07-04 09:42 湖南
佬,天美录用评估后要等多久啊
点赞 回复 分享
发布于 06-30 23:22 浙江

相关推荐

07-16 14:42
浙江大学 C++
7.13号参加了网易互娱上海引擎沙龙的现场面试,也是非常没有自知之明了,感觉现场大佬云集,被复旦上交游戏相关的大佬包围了。面试官也很专业很随和,个人感觉聊的很开心,然后现场出结果,直接挂了。第二次面网易了,上次是暑期实习,也是一面挂了,自身能力也不太够,经历也不匹配,不过感觉网易的面试官都很不错,非常专业。在此放上面经。首先是问项目和简历,略过。(不过网易对简历挖的不深,但是很喜欢知识迁移,比如说从我的项目引申出去,加一个场景,问我会怎么处理,这种情况我每次都答得不好)然后是八股环节~不会问常规八股,首先问智能指针shared_ptr的实现,然后问一个计数器是否是线程安全的(shared_ptr本身是线程安全的,但是我自己实现的不是),要我写一段反例代码说明为什么不是线程安全的。考察了一些多线程的知识,后续又问了互斥锁和读写锁的区别和实现。感觉自己还是理解的不透彻,之前一直是在背基础八股,稍微深问一些,就模糊了。然后是问快排,如何不用递归实现。(其实很简单,就是通过栈去实现,但是我在现场被自己绕进去了,经面试官提醒才写出来)最后是问了一下为什么要做游戏,反问环节问了简历还怎么优化。总计时长五十分钟左右,感觉面试官非常专业,可惜自己实在是差点意思。最后想问一下大家如何更深入系统得去学习八股相关的知识,现在感觉只是背了一些博主总结的表面八股,再深入不知道如何下手,很难跟面试官聊得有深度,学起来感觉像无头苍蝇。
查看8道真题和解析
点赞 评论 收藏
分享
07-14 17:04
已编辑
门头沟学院 C++
先说结论:目前不建议入行。除非你真的参与过工业界游戏开发管线,并且仍觉得自己非常合适,否则不建议任何人凭着对游戏的热爱和满腔热血杀进这个行业,起码现在不建议。给大家讲讲目前业界的状况:去年我自己和几位朋友加一起经历了6个项目,目前的情况是:一个上线但苟活,一个上线但缩编,一个正常在研,一个重做,两个砍掉。情况没有两三年前那么严峻(那时候5个项目砍4个),但也远远谈不上什么前途。十年前游戏行业最大的困境在于人才缺乏,五年前最大的困境在于版号稀缺,现在最大的困境在于缺少方向。以前是没有资源做,现在是不知道做什么。援引某高管的观点:过去十年,手游发展的动力,来自于将主机pc平台的佳作搬上手机,而现在这种动能已经十分微弱。(下面开始是个人观点)由于缺乏确定的方向和可预见的回报,现在业界的打法仍然十分保守,以防御为主,扩张和立项都十分谨慎,hc极其有限。另一方面,近年来得益于games系列等优秀课程的出现,以及ue5的发布,游戏界确确实实多了很多人才。尽管靠谱的ue程序依然难招,但也不至于跟以前一样会点cpp就要。以上因素综合导致了新人入行竞争加剧的现象。至于单机市场,尽管近年来国内涌现出一批以黑猴为代表的优秀作品,但国单市场盘子很小,roi很低。虽然玩家群体目前充满乐对国单市场的期望,但资方大多仍保持克制谨慎的现象,大厂项目很少,且人员要求比较高。手游尚且可以容忍粗制滥造,愿给新人一些成长的机会,单机基本立项之初就是冲着高品质去的,再加上项目组面对资方预期回报数据的巨大压力,更倾向于把有限的hc用在高熟练高产出的业内老兵身上。除开大厂,独立游戏工作室倒是愿意给新人机会,不过大多数独游工作室都不太稳定(虽说大厂也没好到哪去,但你可以活水不是),而且技术栈比较浅,人员质量参差不齐,出了问题都不知道问谁(我组有句俗语:我要去引擎组搬救兵了),从成长的角度来说不建议职业初期就去做独游。OK,以上是大环境部分,下面我们讲一讲个人部分。先声明:本人是做客户端的,如果你想了解服务器的知识,可以直接翻到最下面先说引擎吧,unity从数量上看仍然是绝对主力,但ue的反攻势不可挡,现在有点实力的厂都在纷纷开设ue项目,so如果你是大一大二的同学,建议学好cpp,以ue为主力引擎。如果你无法学会cpp,建议离开游戏行业,因为语言关只是第一关,游戏的技术栈深度太恐怖了,cpp无法学明白的话,就算换unity估计也只能在ui仔的岗位上空蹉跎几年。再说说学历,鄙人近年来没亲眼见过公司里新进过非985 211的正编,但听说过有这样的人,不过主要集中在非技术岗,so我不是很了解。实际上211都很少,985本硕是主力,海外名校有很多。不过你能掌握好cpp的话,学历估计也能到这个标准吧,so个人并不觉得学历会卡人再说说方向。客户端的方向主要分渲染,物理,动画,ai,gameplay五大方向。渲染是负责绘制游戏画面的,主要分图程和ta,图程偏向于挖掘更多性能,ta偏向于做出更好的视觉效果,技术上前者更深,后者要懂美术。不过图形学最大的问题其实在于严重的人才过剩。顶刊顶会的top2佬也捞不到渲染的工作做,只能天天写lua搓ui,一个项目组往往有一两个人图程就够了。至于其他人,猛学了两年图形学,到头来也只能证明你很聪明,仅此而已。物理主要是修bug和搞性能。学物理的没有学渲染的那么多,但用物理的项目就更少了。绝大多数游戏只要用引擎提供的基本功能就好了,不会需要用到什么复杂的软体,绳索模拟等。就算真要,一般也只会寻求视觉欺诈的解决方案,找不到就砍需求,而不是找个物理程序去给你改底层物理引擎。实际上物理程序一般不是做物理需求,而是处理因为组内同事搞不来物理引擎导致的物理bug。另一方面,游戏物理会教你怎么做高性能计算,因此物理出身的程序往往在做性能优化,场景管理,加载管理等看起来跟物理没关系的事。动画顾名思义,研究角色动画的。底层要改的很少,工作中更多的是用动画编辑器,配合美术干纯体力活。ue那动画蓝图你就连去吧,一连一个不吱声。动画的技术比较古老且少,绝大部分游戏用的还是传统状态机,少部分会用状态树,motion match(手游用不上,因为太吃性能了)等技术。算是这5个方向里水最浅的一个。ai现在分两种,一种是做传统游戏ai,一种是通过ai辅助游戏生产。前者目前比较新的实用技术是通过机器学习给ai下行动指令,多见于对抗性较强的竞技游戏(我做过,我的评价是版本管理学的灾难,pm的噩梦)。后者业内还在研究,目前处于一个各家都说自己做的ai好使,但大家看了还是更愿意发挥工匠精神,手工研制游戏的阶段gameplay是搞玩法的。以上4个方向都可以说是纯技术,但决定游戏做成啥样的还得是做gameplay的(其实是策划,gameplay只是负责伺候策划的)。这很杂,水很深。市面上主要是3c和战斗系统比较缺人。吃经验,吃在某一游戏类型上的钻研程度。网络同步也是gameplay在做当然还有做工具的,做打包构建的,做ui的等,不一一列举,但你确定你入行就是为了做这个吗关于方向的选择,我的答案是新人没有选择,全都要学,不求学得多深,只求学个皮毛,看看这个领域主要在干嘛,以及自己适不适合。全入门之后再决定自己要研究什么也不迟不过目前市场上比较缺乏的,主要是做网络的,做战斗的,做动画的,做3c的,做性能的(刚入行搞不了这个),可见都集中在gameplay方向。这是因为其他方向引擎已经把工具做的很好了,项目组只要做gameplay的把这些工具拿来拼一拼就能拼出个游戏了再说说语言,目前手游界主要是cpp/cs+lua的组合。lua总归是要学的,这语言挺简单的,语法学完再看看虚拟机原理,关键源码(lua虚拟机是用c写的,而且开源)读一读,基本都能熟练掌握。网上学习资料也有很多关于项目,其实只要不是ui点点点,走路模拟器,跑跑跳跳吃金币这种,都行。关键要有技术闪光点。打个比方,都是跑跑跳跳吃金币,有的人只会给金币加个碰撞体,做个输入绑定,播个动画就完事,这种属于培训班2天速成的。有的人能做循环地图,随机路径金币生成,角色动画没有滑步跳变,位移方式和角色姿态多样,这种就是有技术闪光点的关于面试,面试看的所谓技术,是你对引擎工具的了解程度,毕竟刚入行的做游戏就是拿工具拼好游嘛。但是能拼好游的多了去了,培训班速成的一大堆,so只能看你知不知道工具上各个螺丝钉是干啥的,或者看你能不能把工具抡得虎虎生风举个栗子:面试官问你怎么做枪械开火的命中检测。你说我不知道,下个公司见。你说射线检测,或者给子弹加个碰撞体,下等马。你说考虑到对远距离目标的弹道下坠问题,需要分段射线检测,中等马。你说对低速子弹,比如手雷,箭矢,给子弹加碰撞体,同时考虑到隧穿问题,风速问题等,上里马。你说我还知道射线/碰撞检测的原理,我还知道如何处理网络延迟,千里马。最后聊聊服务器,ue项目的服务器主要是在做非战斗的,系统侧的业务。比如什么改改勋章啊,发发成就啊,送送奖励啊这种。战斗的部分是由客户端做的(因为ds和客户端代码是一体的)。有项目(这种一般是陈年老项目,或是有大佬为了晋级想重复造轮子)不用ds的,会让服务器参与到战斗里去,这种比较少。unity项目的服务器在干什么我不懂。原本是想写点毕业一年的总结,结果临时起意突发奇想地想给没入行的朋友们写点感受。行文不成体系,多有碎碎念。错字先发后改。看到这里的同学,如果能帮到你就最好啦
程序员小白条:[赞干货,就是文章可以搞些排版和格式[赞]
点赞 评论 收藏
分享
评论
5
7
分享

创作者周榜

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