来源:好完美 浏览次数: 发布时间:2022-07-31 12:02:21
完美世界面试体验
作为中国老牌游戏厂商,完美世界也曾有过辉煌。经历了一连串的勾心斗角和分道扬镳,如今的局面只能说是小二黑过年,一年不如一年。但是完美世界还要写多久,瘦死的骆驼比马大。作为曾经的一线工厂和行业的技术标杆,对于很多游戏工作者(尤其是北京的学生)来说是一个不错的选择。
面试时间为2020年9月左右。
面试地点:
线下、北京、大屯、嘉铭同城、完美总部
学术要求
本科及以上学历,一两本书均可
面试职位
三年以上工作经验,中高级开发人员,月薪20k左右,13薪
面试过程
1、第一个是技术面试,两个比较资深的面试官,历时一个小时左右,主要是算法完美世界还要写多久,图形原理,游戏逻辑(根据你简历里写的功能),和性能优化。
我还问了你工作中最有成就感的事情是什么,以便扩展它。
2、技术完了,没有第二面了,直接去找HR,讲了未来的计划,怎么加班,怎么跟规划沟通。有人告诉我不是996,我很高兴,然后他们说是10106,停了一会儿。
然后我们谈到了项目类型,是移动MMO(完美,当然是MMORPG),最后我们谈到了薪水。
算法部分
1、 如何确定一个点在矩形内。
2、二叉树求最大路径总和(leetcode 刷过)。
3、字符串的顺序相反。你好一个北京 闪回北京一个好你。
算法部分比较简单,很常见的题,就在leetcode上多刷。
游戏逻辑部分(根据简历上写的功能)
1、第一个和图集有关。为什么要制作地图集?图集划分的策略是什么(按功能,调用common(共享图集))
2、UI 中的 ABA 存在问题。三幅图像相互叠加。上下图使用A图集,中间图使用B图集。有几个drawcall,为什么?如何优化?
3、什么是UI适配策略?异形屏(刘海、水滴)怎么处理
4、UI中动静分离的原理是什么?为什么要分开?(动态 UI 导致合并的网格重建)
5、游戏中的战斗系统是如何实现的?
6、什么是热更新策略?资源热更新和逻辑热更新有什么区别?tolua的热学原理是什么?为什么lua可以调用c#?
7、lua如何实现继承?
8、游戏中有一堆相同的怪物,100多个,如何优化加载和实例化(分帧处理,不能一帧全部实例化)?如何优化渲染(同一屏幕上多个人的 gpu 实例化)
图形部分
1、说说渲染管线的流程
2、手写旋转、平移、缩放、旋转矩阵
3、顶点坐标变换的流程(mvp)
总结
1、一般多刷questions.leetcode,最少几百题。基础一定要扎实,数组、连接表、二叉树的基础一定要掌握。
2、Perfect作为一家历史悠久、底蕴深厚的公司,对图形的要求比较高。原则,一定要注意原则。
3、对完美的要求不是很高,和其他几家厂商差不多(祖龙、曲家、米哈游、紫龙等,都是完美分离出来的)。
4、功夫一般,填鸭不行。
5、很多公司问你工作中最有成就感的事情是什么。同学们一定要做好充分的准备,解释他们做过的最技术性的事情,比如解决困难的bug,实现一个很酷的shader,把帧率从30fps优化到60fps等等。
但是很多同学说我每天的工作就是拧螺丝、搬砖,没什么花哨的。然后,去网上浏览大师们的博客,学习研究更多的前沿技术(比如现在很流行的原神Impact的渲染技术)。理解它,实现它,然后合理的打包,说在你自己的项目中已经实现了这个或那个效果。
更多游戏公司面试经验将在未来发布。有需要的同学可以加这个431563887,QQ群号。