快手 游戏图形学工程师 面经

一面
先做题:链表重排,索引为奇数的在前一半,索引为偶数的在后一半

自我介绍
常规c++八股:
讲讲多态(静态:模板/重载,动态多态:虚继承,虚函数)
虚函数表存储位置,函数指针如何访问虚函数表
类B,类C都继承类A,且各自重写了A的虚函数,请问运行时有几个虚函数表
常用哪些STL容器?(vector,deque,priority_queue,set/map,unordered_set/map)
讲讲vector的底层存储形式,如何扩容
讲讲优先队列的底层存储形式
(引申)如何在一组数上构造大顶堆,如何向大顶堆插入元素
讲讲堆/栈内存布局,应用范围
了解智能指针吗(讲了c++11后有三种,各自的应用场合,解决了什么问题)
讲讲extern,static,const关键字,如何使用;指针指向const变量和const指针指向变量分别怎么写;变量可以声明为extern static吗

然后是图形学八股
详细讲讲gpu渲染管线
看你做过离线光线追踪的项目,讲讲kajiya渲染方程,(引申)渲染方程中brdf项的物理含义是什么(这里当时有点忘了,答的不好,说成是入射方向到出射方向的radiance比值,其实应该是radiance/irradiance比值,感兴趣的可以自己去搜搜)
讲讲实时渲染常用的brdf(我就说了cook Torrence pbr),diffuse能不能用lambert以外的函数(忘了,后来查了有oren nayar之类的微表面模型)

二面
给20分钟做题:链表k个一组翻转,lc原题
主要问项目,面试官很认真的听了技术细节,会从工程实际落地的角度问你遇到哪些难点,性能/表现力提升在哪,有没有难处理的corner case
八股问题有点忘了,就记得问了一个pbr(还是答cook torrence),追问只有diffuse和specular项吗?
答:可扩展为Disney brdf模型,包括sheen,clearcoat等项,看面试官似乎比较满意。(其实本来还想说sss,毛发之类的,但我对此了解甚少,怕再问一句就会爆炸,遂作罢)

hr面比较常规

9月初oc
全部评论
佬想问下哪个base,感觉我和你面试问的挺像的,不知道是不是同一个base,我是快手广州的
1 回复 分享
发布于 2023-09-10 16:53 浙江
大佬,二面的手撕题你ac了吗
1 回复 分享
发布于 2023-09-10 21:43 江西
补充:又想到二面的几个问题 1.实时渲染IBL实现(diffuse预计算,specular split sum预计算),能否优化(针对移动端可以用球谐替代diffuse预计算贴图采样,brdf lut采样可以用近似函数替代) 2.MMO单核服务器如何支持上万用户同时访问(真不知道)
1 回复 分享
发布于 2023-09-13 12:00 香港
羡慕oc同个岗base上海的还在泡
点赞 回复 分享
发布于 2023-09-14 16:44 广东
感谢分享 我也投的这个岗位 另外问下老哥你笔试和面试中间隔了多长时间啊
点赞 回复 分享
发布于 2023-09-23 18:34 陕西
大佬最后去快手了吗
点赞 回复 分享
发布于 2023-11-14 15:18 四川
大佬我想问一下图形学八股是从哪里找的
点赞 回复 分享
发布于 05-29 17:52 吉林

相关推荐

8 89 评论
分享
牛客网
牛客企业服务