萨罗斯游戏引擎一面

1h2min

自我介绍

闲聊

导师不是图形学方向?都是自学的吗?

以后想往游戏的哪个方向走?

为什么没有学一下ue或者unity?(时间不够啊...)

实习时间相关(评价:你们学院这么好?)

想看一下项目的演示

图形学学习路线

平时会看技术文章或者论文吗?

讲一下最近看的内容

c++和计算机基础

int占几个字节?long呢?不同cpu架构下会有不同吗?

B和bit的转换...

引用传递和指针传递有什么区别?

他们本身的区别?

对引用和指针分别++,++的是什么?

深浅拷贝

c#写过吗?

讲讲LRU和LFU

图形学

联合双边滤波和TAA

实际的光栅化中静态物体和静态场景可以应用TAA吗?怎么应用?(轻微抖动摄像机)

TAA存在的问题?怎么解决?

移动端开发经验有吗

怎么在渲染时debug?

屏幕上的一个像素存几个字节?几个通道?

MVP变换,详细过程以及需要注意的地方

MVP之后裁剪之前的一步操作是什么?(透视除法)

z-buffer的实现

z-fighting

提高depth精度的方法

computer shader用过吗?

着色器中其他常用的精度了解吗?(没听懂什么意思)

延迟渲染

性能瓶颈在哪里?

剔除光照的方法你了解哪些?

前面提到Tile-Based Shading,如果一个格子里有很多深度相差很大的光源,如何处理?

了解移动端的PBR吗?

贴图压缩的算法有了解吗?

讲讲你了解的后处理算法(想问图像方面而不是渲染阶段的后处理)

bloom

屏幕空间如何重建世界空间的坐标?(*VP逆矩阵/w)

蒙皮了解吗?

了解不同的插值方法吗?

比较过不同画线算法的优劣吗?(没有,想让对比 Bresenham、DDA、Wu等)

shadow map

立体环境光遮蔽和SSAO的区别?怎么做的?

硬件上的光追加速结构有了解吗?(想问英伟达的GPU怎么对光追加速的)

讲讲DLSS

简单讲讲你的PBR由哪几部分组成

DFG项的物理意义分别是什么?

反问

对我有什么意见或者建议?(基础非常好,缺实践,可以按自己的计划继续,学一下ue做一个demo)

您主要是做什么的?

还有几面?

面试官人挺好的,对底层也比较了解,聊的也比较投机,可惜这家给我面的太晚了,已经五月底了,而且一面完一周没后续,感觉是hr把我忘了,也不想再面了,就直接给hr发邮件拒了二面。

全部评论
mark学习
点赞 回复 分享
发布于 06-17 03:58 北京

相关推荐

asodh:很久没有刷到过这种尸体暖暖的帖子了,你一定也是很优秀的mentor👍
投递平安产险科技中心等公司6个岗位
点赞 评论 收藏
分享
找实习期间看了不少大佬们分享的面经,收获不少,牛客上好像没什么银之心的面经,所以简单分享下自己的经验。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的关系等,有三分之一的时间是面试官在给我讲解反问环节问的问题,醍醐灌顶,可惜忘记录音了...-------------------------------------------------------------------------------------------------
查看25道真题和解析
点赞 评论 收藏
分享
评论
点赞
9
分享

创作者周榜

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