25届游戏客户端春招总结

一、前言

有些后悔学的东西太杂太广了,没有早点选定一个方向深入学习,导致秋招没拿到梦想的offer。秋招之后,开始奋发图强(开始摆烂),也没怎么用心准备,没刷题也没看八股,忙着写毕业论文。春招本来只打算碰碰运气,投了想去的公司和一些产品做的比较好的游戏公司,也不局限于游戏,还投递了一些C++开发相关的岗位。总的来说,赚钱的游戏厂商就那么多,但是这些公司要求往往比较高,行业不太景气的情况下,很可能只有极少数人能够找到满意的工作。除了自身实力以外,运气还挺重要的,有时候offer就是在实力的基础上再加一些运气。如果没有拿到offer,也不用灰心,慢慢提升自己吧。

其实真心不建议不热爱做游戏的人搞游戏开发。还记得去年暑期面试的时候,面试官说做游戏和玩游戏是两码事,爱玩游戏不代表爱游戏开发。而且,游戏开发的薪资不算高,不过大公司给的比较大方一点。其他游戏中小厂的薪资普遍比互联网中小厂的薪资要少一点。还有一点就是,游戏开发加班会比较严重一点,人员流动也比较大。

二、投递概括

笔试挂

英雄互娱(说是岗位调整)、鹰角。

一面挂

波克城市、拓竹科技、元戎启行、Zoom。

二面挂

米哈游(对基础考察最深的,没有之一)。

OC

Unity中国、腾讯、B站游戏。

三、面经

有很多问题与秋招的面试题重合了,这里就不放上来了。不包含米哈游面试题

  1. 个人职业规划、打算往哪个方向深耕,这两个问题其实值得思考,很多面试官会看回答的契合度。
  2. 有没有想做的游戏类型,如果项目组开发的游戏不是你理想的游戏类型,你会怎么办。
  3. 如果你进入项目组之后做的东西和你职业发展不匹配,你会怎么办。
  4. 手撕单例模式,手撕对象池,手撕行为树。
  5. 行为树能不能和大模型有结合点。
  6. 用过哪些设计模式,优点是什么,举个例子看看。
  7. 遇到过内存泄露吗,如何排查内存泄漏。
  8. 移动端的性能优化有了解吗。
  9. GC了解过吗,什么时候触发GC,怎么缓解GC带来的性能下降问题。
  10. 1%Low帧知道是什么吗。
  11. 如何排查卡顿原因,可能出现卡顿的情况。
  12. 如何排查性能下降是不是因为drawcall数量过多。
  13. 游戏过程中,手机发热可能是什么原因。
  14. 了解外挂吗,有没有什么好的办法防止外挂呢。(DMA)
  15. 协程底层实现原理。
  16. 进程同步方式,临界区用过吗。
  17. 共享内存会出现什么问题。
  18. cache是什么。
  19. 讲讲cache的写回机制。
  20. 进程同步和线程同步有什么不同。
  21. 线程共享了进程的哪些资源,为什么能够共享,底层实现是什么。
  22. 内核态和用户态的区别。
  23. 互斥锁、读写锁、自旋锁的概念和区别。
  24. 什么情况下会出现死锁。
  25. 地址长度、虚拟内存和物理内存的关系。
  26. 如果一个程序需要8G的内存,而物理内存仅有1G,这个程序能够运行吗。
  27. std::vector的扩容机制,为什么不直接使用memcopy和memmove。
  28. 有哪些迭代器失效的情况。
  29. 模板、模板偏特化,如何实现std::vector<bool>。
  30. std::shared_ptr的引用计数存储在堆上还是栈上。
  31. 手撕std::shader_ptr。
  32. 如果修改.text段的数据,会发生什么。
  33. 移动构造函数最后会调用析构函数吗。
  34. C++const的作用,如果类的成员函数声明为const,有几种办法可以修改成员变量。
  35. dynamic_cast的底层实现原理。
  36. 两个对象的内存空间中值一样,能不能互相转换。
  37. 虚函数指针会有几个,考虑多继承情况下。
  38. 虚函数表存在哪个位置,虚函数表的生成时机。
  39. printf怎么实现任意多个参数,了解调用约定吗。
  40. 汇编层如何实现函数调用的。
  41. Phong和Blinn-Phong的区别。
  42. Early-Z和Z-Buffer以及遮挡剔除。
  43. 怎么绘制一个三角形。
  44. BVH树和kd树原理以及应用场景。
  45. 你会怎么实现类似虚幻引擎蓝图的功能。
  46. 有没有看过最近几年的GDC。
全部评论
还要手撕shared_ptr
点赞 回复 分享
发布于 昨天 21:31 湖南
忍耐王
点赞 回复 分享
发布于 04-25 12:09 湖南

相关推荐

评论
6
22
分享

创作者周榜

更多
牛客网
牛客企业服务