银之心-游戏开发-暑期实习-面经

找实习期间看了不少大佬们分享的面经,收获不少,牛客上好像没什么银之心的面经,所以简单分享下自己的经验。
bg:985本,211硕,简历包含一段小厂的unity实习,一个UE的基于GAS的ARPG玩具demo,4月底开始投简历。
----------------------------------------------------------------------------------------------
Time Line:
    5.23 -- 笔试
    5.29 -- 1面
    5.30 -- 2面
    6.3 -- 3面
    6.6 -- hr面
    6.16 -- oc
---------------------------------------------------------------------------------------------
    笔试:4道算法题
    1.给定一个排列,求出所有子区间的中位数之和
    2.给定两个字符串a,b,将b插入a使得字符串为回文串,求有多少种插入方法
    3.给定两个长为n的整数数列A,B,每次可以从A的左或者右端取一个数字,B按顺序取,假设第i次取走的数为ai,则第i次取走的价值为bi*ai,求最大价值和
    4.给定两个长度相同的字符串s,t,每次可以将任何位置的任何字符移动到字符串末端,求至少需要多少次操作可以市s变成t?

---------------------------------------------------------------------------------------------
       面试体验很好,几个面试官相当专业,反问环节回答得很认真,不敷衍,收获良多;hr小姐姐推进流程和回复问题也很及时。
------------------------------------------------------------------------------------------------
一面(55min)
    1、自我介绍
    2、常规的C++八股拷打,这里推荐知乎 不羁的游侠 的 《计算机基础篇》 ,我自己面试过程中遇到的大部分c++八股都可以在里面找到。
    -----没答上来或者答得不好的几个问题:
    (1)一个子类继承了两个父类,两个父类中有同名的虚函数,子类中重写此虚函数,重写的是哪个父类的虚函数?
    (2)类模板的声明和实现可以分别放到头文件和cpp中吗,为什么?
    (3)执行exe,main函数是最先执行的吗?如果不是,举几个在main函数前执行的例子。
    3、问:你的项目里有用行为树实现的敌人AI,有看过源码吗?
               答:没有,不过知道AI寻路的一些过程和原理,(然后balabala开始讲NavMesh生成网格体的过程和A*算法)
    4、问:了解过动画系统中动画动起来的原理吗?
               答:动画的载体是骨骼,动画序列由时间轴上的一系列关键帧组成,每个关键帧存储了每根骨骼的变换信息,非关键帧的骨骼变换信息通过插值等方式可以计算出。
          问:介绍一下UE的动画状态机、混合动画、叠加动画?    答:知乎 TurBo强  的《UE 动画系统框架介绍及使用》;
          问:知道蒙皮动画吗?   答:没了解过
          问:看过动画系统源码吗?   答: 没有
    5、手撕算法题:
            (1)字符串加法,常规题
            (2)追加要求:两个数可以是负数
            询问面试官:能否拆分为两个正数的减法和加法的函数,计算前先单独处理运算的两个数的符号位,并调用相应的函数。
            面试官回答可以,写了5min没写完,面试官表示时间差不多了,直接进入反问环节。
----------------------------------------------------------------------------------------------------
  二面(45min)
    1、自我介绍
    2、问:玩过什么游戏?
              答:最近在玩 最后纪元 ,一个暗黑风格的ARPG游戏
    3、问:这种ARPG游戏里,怎么对敌人造成伤害?
              答:比如玩家发射一个火球,需要为火球添加碰撞体,敌人身上也必须具备碰撞体,同时实现接受伤害的接口,当火球与敌人碰撞时,触发hit或者Overlap事件,传递碰撞信息,其中包括敌人对象,拿到敌人对象后,调用接受伤害的接口。
    4、问:怎么进行碰撞检测?
              答:粗略检测的话,可以用包围盒等包围需要检测碰撞的对象,然后检测两个包围盒是否有相交即可。过程中可以通过四叉树、八叉树或网格加速结构,快速排除远距对象。不同划分区域保证不会碰撞的情况下,就能快速过滤与本物体不同区域的其他潜在物体碰撞。
         问:包围盒和包围球间的范围检测哪种比较简单
              答:包围盒和包围盒吧,只需要把各个顶点投影到坐标轴上。(好像不对,应该是球和球?)
         问:球和球的范围检测怎么计算?球和盒的范围检测怎么计算?
              答:(几何知识,大概画个图就知道了)
   5、问:如果是近战攻击,怎么对敌人造成伤害?
              答:和远程差不多,不过是需要在近战武器上添加碰撞盒,创建两个场景组件放置在武器的两端,作为box trace的起点、终点,挥舞武器的时候,在两点之间执行box trace。
        问:怎么让box trace跟着武器动的?
              答:近战攻击用一个动画蒙太奇实现,武器绑在角色手上的slot里,碰撞盒和起点、终点是武器的子组件,动画动,武器跟着动,子组件也跟着动。
    6、问:项目里有实现自动寻路吗?有了解过吗?
              答:(一面的时候也问道了)NavMesh生成网格体的过程+A*算法。
         问:如果场景中有移动的障碍,怎么处理?
               答:不太清楚 ,不过我猜可以先划分区域,只更新移动物体影响的区域,更新寻路网格体时,把移动障碍和其移动覆盖的区域整体标记为障碍物。
         问:需要重新烘焙吗?
             答:需要。
    7、问:还做过其他什么东西吗?
             答:还做了一个简单的多人游戏项目,不过做得不是很好
         问:网络游戏用什么协议
             答:UDP,不过通常会将在其往TCP的方向改,即可靠的UDP,(序列号与确认,丢包重传、超时重传、滑动窗口、拥塞控制)
    8、无手撕环节
---------------------------------------------------------------------------------------------------
    三面(30min)
    三面大部分时间聊聊天了,问了一些简历上提到的东西,比如MVC的难点,ui的MVC和工程上的MVC的关系等,有三分之一的时间是面试官在给我讲解反问环节问的问题,醍醐灌顶,可惜忘记录音了...
-------------------------------------------------------------------------------------------------
#牛客AI配图神器#
全部评论
同银之心oc,但是怎么感觉我这问的这么简单😧
3 回复 分享
发布于 06-22 15:48 广东
接好运
1 回复 分享
发布于 06-20 03:10 北京
是游戏开发,用的c++吗?
点赞 回复 分享
发布于 07-06 17:35 福建
同985本,211硕
点赞 回复 分享
发布于 06-26 11:27 四川
居然有做游戏的校友,泪目了
点赞 回复 分享
发布于 06-18 17:38 上海
恭喜啊
点赞 回复 分享
发布于 06-17 14:53 重庆

相关推荐

我是某985大四的陈某某,专业AI方向,平时刷题刷到秃头,但一提到写简历就脑壳疼。去年春招到秋招,我从一个大厂实习小螺丝钉,混到另一个大厂转正,现在想想那段日子真他妈像过山车:一开始以为大厂光鲜亮丽,结果进去才知道全是坑。但也多亏了那些坑,我才学会怎么写实习项目经历,简历从垃圾桶直接变offer收割机。这些大厂的共同点一:别信那些小红书、知乎上的鸡汤帖,大厂实习不是什么“高大上”的镀金之旅,就是个高强度劳改营。我大三下投实习时,简历上就俩项目:一个是学校的大作业图像识别,另一个是Kaggle的玩具比赛。投了三次才过筛,面试时leader问我:“你为什么选我们?”我当时脑子一热,说:“因为你们算法牛。”他点点头,说行,进来吧。我心想:卧槽,这么简单?入职第一天,园区看着真酷:到处是咖啡机、健身房、免费水果。但现实很快就打脸了。组里20多人,实习生占一半,大家从早9点卷到晚10点,中午饭盒饭扒两口继续干。我的第一个项目是优化推荐系统的A/B测试模块,leader扔给我一堆代码仓库,说:“一周内熟悉,输出报告。”我当时啥都不懂,PyTorch刚入门,熬了三天夜,代码跑了50次bug,终于调通。组会时,我汇报了优化结果:点击率提升了2%。leader冷冷地说:“2%?太低了,重做。”我差点儿当场崩溃。大厂的共同点二:别信那些“弹性工作制”。弹性是“早来晚走都行,但活儿必须干完”。我有次加班到凌晨2点,地铁没了,骑共享单车回家,路上还下雨,湿透了。第二天早上9点又得爬起来开晨会。组里有个前辈,名校硕士,天天戴着眼镜敲代码,我问他:“哥,你不累吗?”他说:“累,但为了期权。”期权?实习生有个P的期权,我们就5k工资+饭补,干得再好也只是“表现不错”。共同点三:人际关系复杂得像宫斗剧。组里分派系:一个是老鸟帮,从其他大厂跳槽过来的;一个是新人帮,我们实习生抱团取暖。有次项目delay了,leader开会甩锅,新人帮被怼得狗血淋头。我私下问前辈:“这正常吗?”他说:“大厂就这样,KPI压力大,谁弱谁挨刀。”我从那学到:干活别只埋头,得会汇报。不会汇报的项目,再牛逼也白搭。共同点四:福利听着好,实际抠门。健身房是免费,但你得加班完才有时间去;水果无限,但天天吃香蕉吃吐;还有传说中的“企业文化”,其实就是卷王文化。实习三个月,我瘦了6斤,头发掉了两把。朋友问我:“大厂实习爽吗?”我说:“爽个锤子,就是个加速器,把你从学生卷成社畜。”但话说回来,这些坑也让我成长了。尤其是实习项目经历,怎么写进简历,才是真金。很多人以为项目就是“做了啥”,其实写法有门道。我的方法论是基于那段血泪史总结的,我刷了很多帖,结合自己实践,归纳成几步。别急,我一步步讲,带例子。第一步:选材祛魅,别吹牛逼。大厂HR看简历,第一眼就筛“水分”。我刚开始写实习项目时,傻乎乎写:“参与推荐系统优化,提升点击率2%。”结果投下一个大厂时,直接初筛挂。为什么?太泛,太小。祛魅写法:选有痛点的项目,写真实挑战。比如,我改成:“在实习中,负责A/B测试模块优化,面对海量数据(每日亿级日志)导致的计算瓶颈,通过引入分布式Spark框架,将处理时延从30分钟降至5分钟,提升整体点击率2%。”见没?这不光写了结果,还写了问题(瓶颈)和解决方案(Spark),真实感爆棚。HR一看,就知道你不是水货。方法论核心:用STAR法则,但加“祛魅”味。S(Situation):背景真实,别编大场面,就说“实习期内,组内KPI压力下”;T(Task):任务具体,“优化模块,目标提升效率”;A(Action):行动详细,列步骤,“第一步分析日志,第二步调参,第三步上线测试”;R(Result):结果量化,但加反思,“虽提升2%,但后续迭代中发现边缘case,优化了异常处理”。这样写,不光牛逼,还接地气,像真人经历。第二步:量化+工具,数据说话。我在第二个项目是调试一个NLP模型,bug多得像筛子。原写法:“调试模型,修复bug。”投时拒了。祛魅改: “调试BERT-based NLP模型,识别出10+类常见bug(如token溢出、梯度爆炸),使用PyTorch Profiler工具定位瓶颈,优化后模型准确率从85%升至92%,每日处理查询量增加50%。”量化了bug数、准确率、查询量,工具名一扔,专业感up。有人说“数据假的也行”,别听,HR查得出来。真实数据最好,哪怕小,也写反思:“虽准确率提升,但部署时遇资源限制,学到云服务优化。”第三步:连项目,秀成长弧线。别孤立写一个项目,大厂爱看“连续剧”。我简历上把两个项目连起来:“从A/B测试入手,积累数据处理经验,后应用于NLP调试,提升整体技能。”这样,HR觉得你不是一次性英雄,是可持续发展的。祛魅点:加失败经历,“第一个项目delay一周,吸取教训后,第二个提前交付。”真人味儿十足。第四步:匹配JD,关键词植入。ATS系统筛简历靠关键词。我投下一个岗位时,JD上写“熟练ML框架、分布式计算”,我就把“PyTorch”“Spark”红字标出来。手动改太累,我当时用泡泡小程序的AiCV简历王,导入JD一键匹配,帮我补了“Kubernetes”“Docker”等词,简历匹配度从60%跳到90%。投出去,三天过筛。第五步:反思+软技能,别只写硬货。大厂不光看技术,还看人。我加了:“项目中与跨部门协作,处理需求冲突,锻炼沟通能力。”祛魅写:“一度因需求变更争执,学到用Jira工具跟踪,减少误解30%。”软硬结合,立体。实习结束,我用这套方法论重写简历,投下一个大厂算法岗。一面技术问项目细节,我背得滚瓜烂熟;二面HR问挑战,我讲了加班祛魅故事,她说:“真实。”三面leader聊成长,我秀弧线,他点头:“来吧,转正机会大。”现在我转正了,工资翻倍,但还是那个卷王营。祛魅后,我不迷信大厂了,就是个跳板。总结方法论:1. 选材真实,STAR+祛魅,加痛点反思。2. 量化数据,工具名点缀。3. 连项目成故事,秀弧线。4. 关键词匹配JD,用工具辅助。5. 加软技能,反思拉满。牛客兄弟们,大厂没那么神,实习项目写好了,offer随便拿。心态别崩,拒了继续改。
没有实习经历,还有机会进...
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
15
57
分享

创作者周榜

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