腾讯Wxg游戏客户端六轮面试被拷打(已oc)

算是经历过最长的面试了,虽然我本来也没面过几次
从6月初被wxg捞开始,整整六轮面试啊,五轮技术面,一直面了一个多月才出结果,幸好没被挂不然难受死了
岗位是游戏客户端,很多题我都不记得了,所以我挑记得的来讲


一面(压力面,1.5h,最难的一次
学到的教训是简历上不要乱写,用过不代表懂原理

聊简历项目,问了一个程序化地形生成:套perlin噪声调下参数+高度图+不同类型地形,更多的不会了

问ecs的原理:发现自己不会,我说就好像是什么数据驱动的component
然后面试官问我为什么这样性能好:我不会

问dependency injection的原理:发现自己不会,
跟他硬扯了些interface和design pattern在游戏开发中的应用和我对oop的一些优化/替代方案的尝试

问ik的原理:强调自己只用过插件

问学过图形学/控制论吗:没,会学的


问nevmesh的原理:我说我只会astsr和djkstra,nevmesh只用过unity和unreal的,原理不懂,面试官继续问我动态避障和人群寻路什么的,我也不懂

问unity生命周期,这个我熟,然后讲了下对象池和线程池


八股好像就问了智能指针,inline函数,new 和 malloc区别,虚函数表,右值引用,c++类型转换,多线程死锁,static关键字,内存对齐,memoryset等这些经典八股题,这些倒是大多数都答上了


一道leetcode medium难度的手撕,写的时候突然忘记了c++的iterator怎么用了(我用的比较少
搞得我汗流浃背了,被面试官指出来以后才做出来
然后问我如何判断圆形和矩形碰撞了,

我说,可以解方程,面试官不太满意,后面我说判断圆心和最近点距离什么的,面试官好像还是不太满意
然后结束后我以为我直接要挂了,没想到一周后还是进了



二面(2h,最长的一次

聊项目

经典八股,多问了一些拆箱装箱,tcp udp的

问我udp该怎么变成tcp:我不会

问c++字典的原理,我说是字典吗,面试官说是红黑树,我说我不会

问thread和携程区别,这个我熟

问虚拟内存怎么实现更大内存,我说因为有多级页表,每个页表索引指向下一级页表什么的,面试官说这不足以解释为什么能实现更大内存,那我就不会了

因为上次的失利,我好好研究了下,这次问我ecs我直接抢答了

ik我也抢答了,虽然别的不懂,但1d optimization和nd optimization我学校刚好学过,描述了下怎么使用梯度下降和牛顿法等来算ik约束角度

问了下vr ui 交互怎么实现,我说检测下line trace就行了

手撕一道leetcode medium,忘了题是什么了,反正我从头写了一个binary tree和二叉搜索,因为不熟练没怎么刷题,写了快一个小时才写完,感谢面试官这么有耐心等待了

面试官直接说我过了




三面总监 45分钟
无手撕,
和之前一样的,经典八股,他们真的很喜欢智能指针,
主要还是聊项目,再聊了下我在学校的游戏社团,怎么在一个20人的游戏团队里每学期产出一个游戏,我怎么去和他们协作,我怎么从社团里的一个程序员到主程给他们分配任务,到社长怎么做项目管理什么的




四五面面委 45分钟
无手撕,一点八股+主要聊项目,聊学校的课程作业,应该是确认真实性
我还直接给他们投屏了说项目就在这自己看hh




六面hr,聊完就当即云证,一周后oc


结论:
我还是喜欢聊项目,
然后是八股,从失败中学习的很快,以前八股答不出来,这次面着面着八股大部分都会了,什么红黑树tcp,c++特性,地形生成,就那么几个来回问
最讨厌手撕因为刷少了(我leetcode才刷了30多道,而且花时间)

#腾讯##面经#
全部评论
大佬太强了
3 回复 分享
发布于 2024-07-24 19:45 广东
这也太可怕了
3 回复 分享
发布于 2024-07-24 11:11 湖南
微信也有游戏?
3 回复 分享
发布于 2024-07-24 10:50 广东
请问unity生命周期这个问题是指那些函数的调用顺序吗?比如 start awake
点赞 回复 分享
发布于 2024-08-19 18:05 山东
又是wxg还是游戏客户端还是实习,这都要问你地形pcg。。现在找学生真沟槽的汗流浃背啊😅
点赞 回复 分享
发布于 2024-08-06 21:21 广东
感觉WXG的面试就逆天。我3月份面试呢PCG,一面拉满1h,二面三面基本40分钟解决,而且没有手撕,让我都一度以为KPI,最后Offer了没去,哈哈哈哈。
点赞 回复 分享
发布于 2024-07-31 14:25 四川
确实,这部门前几天还让我去暑期实习,好像就是客户端,也太晚了😂
点赞 回复 分享
发布于 2024-07-24 20:38 浙江

相关推荐

05-13 15:58
已编辑
复旦大学 Unity3D客户端
背景:top3本,文科专业,23年毕业生,零游戏开发相关实习经历,无工作经验。毕业后23年下半年考研无果,24年下半年开始学习Unity游戏客户端开发的相关知识,如C++、C#、数据结构、算法、Unity引擎、图形学基础等。写了两个小项目,一个是很简单的光栅化软渲染器,另外一个是Unity开发的一个回合制RPG游戏框架。最近半个月开始找工,海投了一百多份简历,中大厂没有回应(不过也算意料之中),有回应的都是外包或者小厂小工作室。目前只有一个网易外包游戏客户端开发岗位过了,项目我觉得还可以,过两天定offer。现在很纠结和犹豫,不知道要不要接。一方面我清楚外包的各种不好,另一方面我觉得以我现在的情况,继续投简历一两个月下去,也很难找到更好的机会。为了之后更好发展的话,不知道网易外包是否算是目前的一个合理选择,或者说是,混经验的一个跳板。毕竟我零经验非科班的转行往届生,路确实难走,现在社招想要好的机会感觉无异于奢望。因此想听听大家的想法,希望大家可以给点建议,指个路。--------------------------------------------在这里顺便把面经贴出来吧,也不知道是否帮到有需要的朋友:一面(1h10min):1.自我介绍2.C++如何实现多态3.虚函数和纯虚函数,有什么特点4.C++和C#常见容器,C++中vector和list的区别,map和unordered_map底层实现5.C#垃圾回收6.多线程和进程7.IP地址,IPV4和IPV6,8.TCP和UDP,三次握手和四次挥手9.野指针10.智能指针,介绍shared_ptr11.设计模式,说了单例模式、观察者模式、对象池,然后问到MVC12.口撕LRU13.平时常玩的游戏14.游戏设置中有很多设置选项,玩家进行多个勾选、设置等修改操作,如果不想修改了,怎么实现?(我也不知道,就瞎说了个用栈记录修改选项操作,取消保存时候就弹出、恢复)15.ECS框架(不了解)16.详细说下我游戏项目的技能和Buff系统,cd怎么实现的,还有范围指示器的实现17.树的深度优先遍历和广度优先遍历18.走到n阶台阶的方法,简单说一下就行,dp方法,时间复杂度19.写了一道简单的算法题,已知n天股票价格,买卖各一次,最大利润多少。贪心、dp都行20.反问:我哪里需要提升?接触到的工作内容?(商业化功能,前期做些UI、3D模块) 工作环境?二面(1h):1.自我介绍,聊了聊为什么不想进入媒体行业,中间考研(包括半年时间准备从零跨考408,最后专业课复习不完,就又报名跨考了法硕,复试没过未果)、自学的经历2.时间复杂度和空间复杂度,举例说了说3.快排具体流程(只记得双路快排了,所以说了双路快排),时间复杂度,为什么是O(nlogn)4.最近打的游戏,问如何评价游戏性能优化做得好不好(我也不清楚,随便说了说,帧率、加载速度、DrawCall、Batches),举例说相关游戏设置选项,然后说了TAA和SMAA,问原理5.位运算6.线程和协程7.一道和专业关系不大,比较发散的脑力题8.同样和专业关系不大,问一个小团队中午点外卖,线下询问收集大家要点什么一起点,如果做一个内部小工具或者程序来改善流程,有什么思路去实现?9.leetcode41.缺失的第一个正数,问写过没,说写过,可以哈希、排序,忘记原地哈希的解法了。然后让写下排序解法10.反问:项目技术(系统向,用Python多,偏UI和模型),最快多久可以到岗11.最后又问了职业规划(继续深入游戏客户端,想学点shader和渲染)hr面:1.自我介绍,之前经历2.因为做了个Unity回合制RPG游戏的小项目,问为什么做这个?过程中遇到最难的点?怎么解决的?以后有没有要改进迭代的地方?3.找工作考虑什么?4.职业规划?5.是否顾虑外包?6.加班,是否接受工作强度?7.手上其他流程或offer?8.偏好网游还是单机?9.期望薪资10.家庭背景11.最快到岗时间12.反问:项目团队规模等等----5.13更新已拒打算再多找找,后续如果还有面经可能会再更吧
点赞 评论 收藏
分享
05-19 10:02
已编辑
门头沟学院 C++
05-12 这一周的面试。字节暑期实习一面 C++ 后端,1 小时 40 分钟。有两三个聊天风格的问题。手撕代码做得一般。发面经攒人品 自我介绍面试官问 CTF 比赛是什么,我介绍比赛内容,说了一个 CTF 签到题。实验室研究方向项目和八股(40 分钟多)项目是一个重写 muduo 库,一个功能不多的 web server。面试官没有问 web server。我想写个协程库了。在做聊天项目,没做完。1. 介绍 muduo 网络库2. 为什么要有 muduo 库?它有什么价值?进一步引导,线上为什么要用 muduo 库,为什么不用其它方式,比如多线程?   (答完这里我掉线一次)3. 对 epoll 原理的理解4. epoll 相关的内核数据结构5. linux 上的进程,线程,协程(答了 linux 的 task_struct 记录一个进程的信息,线程也是一个 task struct,它们共享内存地址空间,等等)6. 操作系统调度的最小单位是什么?7. 一个进程的地址空间是怎么样的?8. 一个进程是怎么跑起来的?比如,在终端输入 top 命令,发生了什么?9. fork 系统调用有几个返回值?追问父进程中 fork 的返回值10. 一个进程把内存用光了会发生什么事?11. 你在 linux 上用什么软件?怎么使用,用到什么功能?追问 qemu 怎么拉起一个虚拟机。问,是自己折腾的吗?    - docker 的原理?追问,只用 namespace 就可以了吗?    - 为什么用 podman12. 在浏览器中输入一个网址,到网页展示出来,这个过程发生了什么?13. dns 查询过程14. 网络包到网卡之后,是怎么到用户进程的?15. 进程阻塞在 read 系统调用,有数据时怎么唤醒?你有看过代码吗?写代码题(40 分钟)在飞书里面的编辑器,像是一个 vscode,有代码自动补全。- 代码一:求有 n 个字母的集合的所有子集。比如,{a, b, c} 的所有子集有 8 个。(讲思路,实现代码,10 分钟多)- 代码二:三数之和(25 分钟多,一开始不记得双指针的解法,只好自己拿一个 map,一个 set,来保证唯一性。写完讲思路,问有没有其它方法,把双指针方法凑出来了)反问部门工作内容有几轮面试部门技术栈面试官问是第几次面试,有其它 offer 吗,能实习几个月
查看18道真题和解析 面试问题记录
点赞 评论 收藏
分享
评论
25
97
分享

创作者周榜

更多
牛客网
牛客企业服务