米哈游客户端二面(全程拷打)(已凉)

开局拷打50分钟项目,太痛苦,问的非常细节
比如说我做了一个2d横板动作打怪游戏,他会问你,从玩家发起攻击到怪物受伤,整个流程是如何实现的,当我回答到“怪物调用受伤函数”的时候,他会问,在这个函数里,UI更新和特效创建会一起调用吗,如何解耦,我tm也不懂啊,当时做着玩的。
包括比如说我说屏幕震动特效,他会问我怎么实现,其实早忘的差不多了,绷。
反正类似的细节问的很多,很难受。
最后问了道算法题:

存在无序数组A,使其排列成奇数在前偶数在后,并保持相对稳定?

按理说要用双指针的,但是被拷打得已经有点神志不清了,直接用魔改插入排序做了,md结果 !(arr[j-1]%2) 和 !arr[j-1]%2 语法上居然不一样(导致判定有问题),搞了半天没搞出来心态爆了(从没想过写插入排序写爆了,我草),幸好考官也没看出来,不过没用双指针,寄!

最后问考官,二面比较看重的是什么,他说比较看重实战中数据结构的实现,比如实现解耦这种。
问他有没有必要接触UE(因为我只玩过unity)他说没必要,主要关注理论实战的结合。

感觉整体问下来强度真的大,无八股纯问项目,体验下来就是,比如认真对待你的项目,不要想着完成功能就行,很多时候要考虑规范性。

感觉这是我遇到强度最大的二面了
-------------------------------
寄咯,经典过满2周挂了
全部评论
怎么我米二面就是纯拷打八股,连编译原理都出来了
5 回复 分享
发布于 04-02 02:37 广东
游卡春招也在看客户端哦,可以投递简历尝试一下哦~
1 回复 分享
发布于 04-03 11:18 浙江
蹲个结果( ゚∀。)
1 回复 分享
发布于 04-02 01:11 上海
uu可以问下一面后多久约二面么,我一面完3天没消息了😂
点赞 回复 分享
发布于 05-13 14:29 浙江
我今天面试应该是遇到同一个考官的,他是绝区零的,算法也是这个算法。其中中间说对了正确解法,但是没我深入进去,写的是另外一种,最后发现有问题。都是双指针。不知道结果怎么样了,要是我提前去准备这个就好了。
点赞 回复 分享
发布于 04-30 17:07 四川
我感觉跟楼主挺相似的。一面刚结束等结果中,祝愿咱俩都能收到老米offer吧
点赞 回复 分享
发布于 04-11 15:40 上海
今天一面问了技术栈感觉unity+c#很重要,c++主要是涉及写插件的时候会用到
点赞 回复 分享
发布于 04-10 18:06 上海
今天也是客户端二面,祝好运
点赞 回复 分享
发布于 04-02 08:31 美国
佬春招还是实习啊?
点赞 回复 分享
发布于 04-02 07:16 安徽

相关推荐

2025.7.22实习了几个月之后晕晕乎乎的来秋招了,完全没复习,果然是大败而归。全程40min,因为没有录音,这些都只是我记得的问题(总体上应该大差不差)1.讲一下C++的static。当时人有点晕,只说了全局唯一,如果是成员变量就是第一次用到的时候创建,然后一直存在。2.讲讲重载和重写的区别。重载是同一个类中,方法名相同,参数不同。重写是子类对父类方法的重新实现,方法签名必须完全一致。3.讲一下虚函数、虚函数表之类的。经典问题,这里不赘述了,网上一堆高质量回答。4.迭代器通过泛化指针遍历容器内部节点的东西。比如链表 iterator 内部保存节点指针,operator++ 沿 next 指针移动即可;operator* 返回 node->value。一个最小迭代器需要指针 + 类型。(不知道这里说的对不对,迭代器相关的知识点确实没怎么背过)5.讲讲C#的ref和out的作用和区别。和C++的引用传参类似,(太久没写C#了),当时说ref主要是给个东西让函数改,out是要输出的。(总之答案应该不只是这么简单,ref:调用前必须初始化(输入+输出),out:方法内部必须赋值(只输出))6.讲讲装箱和拆箱。前者是用引用类型装值类型,后者相反。7.聊聊单例模式。某个类整个程序生命周期内只产生一个实例,全局和唯一。一般写管理器或者全局配置比较常用。8.聊聊TCP和UDP的区别。什么时候用UDP,如何优化UDP。连接、可靠、有序、拥塞控制、流量控制、传输效率之类的(这个问AI应该能总结的很清楚,就不多说了)。实时性 > 可靠性的时候选择UDP,比如说射击游戏。优化思路:缺什么补什么,加上ACK,重传,排序、拥塞控制、流量控制之类的功能。9.手撕算法给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素。先用最小堆做了,然后面试官说用快速选择也写一遍。有点不熟练,不过勉勉强强写出来了。10.然后问时间复杂度。我这里发狂了,说O(nlogn)。不知道当时在想什么。11.反问。感觉问的东西面试官都说不方便透露。然后就结束了。太久没面试好多知识点生疏了(悲)2025.7.23挂。吐槽:为什么引擎相关的和项目还有实习完全没问啊
小小:更多面经八股,欢迎大家查看:https://m.nowcoder.com/mianshi/top
查看10道真题和解析
点赞 评论 收藏
分享
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项目的服务器在干什么我不懂。原本是想写点毕业一年的总结,结果临时起意突发奇想地想给没入行的朋友们写点感受。行文不成体系,多有碎碎念。错字先发后改。看到这里的同学,如果能帮到你就最好啦
程序员小白条:[赞干货,就是文章可以搞些排版和格式[赞]
点赞 评论 收藏
分享
评论
16
51
分享

创作者周榜

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