本人末流985 数字媒体技术 大三学生,参加了2020年腾讯暑期实习面试,总结一下,整体感觉不是特别难,可能是不同工作室之间面试的难度不一样吧。
一面
- C++和C的区别
- 联合体、结构体、类的区别
- 说一说多态
- 虚函数的用法
- const用法(重点问成员函数三个位置的区别)
- static的用法
- 用过STL嘛?
- map的实现原理
- 什么叫红黑树
- 介绍一下快排
- 渲染管线
- 深度测试
- 为什么要用虚幻4引擎
- 什么叫骨骼蒙皮
- 法线贴图
- 做过什么项目?
- 会不会做动画?
- C++怎么切换版本?
- 玩过什么游戏?
- 实习地点有没有什么要求?
反问
我有什么不足需要改进?
项目经历丰富,但基础不够扎实,建议不要太过注重美术方面的内容,加强代码能力,毕竟我们是程序员。
(答主const用法说错一处、不会切换版本、渲染管线和深度测试都没复习)
用时20mins,本以为一面凉了,没想到第二天显示进了复试,感谢面试官抬我一手。
二面
- 是不是用C++
- extern “C”,为什么会用C语言的方式编译
- 指针和数组的区别
- 虚函数、虚表、虚指针
- 析构函数可不可以是虚函数,为什么
- 构造函数呢
- 构造函数和析构函数的调用顺序
- 用过STL么
- vector实现原理、扩容
- 和list比较
- DFS和BFS
- 快排原理(又是快排!)
- 时间复杂度,稳定么
- new和malloc区别
- 内存五大区
- 栈和堆区别
- 栈内存增长顺序
- 线程和进程的区别
- 线程间的通讯方式
- 进程间的通讯方式
- UDP和TCP区别
- 射击游戏应该用什么
- 稳定的UDP有么
- 听说你自己做过游戏,讲一下
- 你刚才说了行为树,介绍一下行为树都有哪些节点(UE4)
- 反问
我有什么不足需要改进?
还可以,等我们进一步综合考量,再通知你。
(答主复习了好几天数据结构与算法、计算机图形学、计算机网络、计算机系统基础)
时间也是20mins,问的问题甚至比一面还轻松一些。面试官人很好,会引导回答一些问题。问项目的时间太短了,我看其他面经二面问了很多关于项目的问题。可能是一面面试官评价项目还可以,基础一般,所以二面问了很多基础?答主自己用UE4做过VR游戏、安卓FPS游戏、ACT游戏 和 RPG游戏,当然都是简单实现了部分功能而已,很简单的那种。我介绍完项目面试官只问了行为树问题,就没了。一小时后变为HR面。目前一直等待中。
HR面
大晚上突然打来的电话,随便聊了一下,通知应该过了,等一个星期有人联系我。挺幸运的吧这次面试,希望继续努力~
总结
三个方面。一是基础,包括C++、数据结构、计算机网络、计算机系统基础。二是算法,多刷LeetCode,先把剑指offer刷了,我觉得可以先刷简单题。三是项目,有几个拿得出手的项目,可以是自己做着玩的,一定要懂各部分的细节知识,能滔滔不绝的讲一会儿。
接下来答主还有西山居面试,可能还有其他公司面试,希望好运,也祝大家好运~
后记
收到了OC,IEG,天美工作室群。我大概做梦也没想到能获得去腾讯的实习机会吧,害怕会花光今年一年的运气哈哈。很开心,希望能继续努力,好好学习,不管能不能转正,都是我大学最重要的一段经历吧。
无论身在何处,都要奋力前行~
其他面经:
2020大连西山居暑期实习面经
2020完美世界暑期实习面经
2020巨人网络暑期实习面经
2021字节跳动游戏客户端秋招提前批面经