24秋招 天美引擎一面(1h10min)
人很专业,从数学到八股到底层优化再到场景题,问麻了
- 左右值引用,移动语义,完美转发
- 析构函数为什么要是虚函数
- 函数实参的压栈顺序,顺便追问是否做过其他语言调用c++代码
- 路径追踪的去噪方法,是否了解过基于采样的去噪方法
- 是否了解过开源项目的光追方法,后面建议做CPU与GPU的并行计算,建议了解optix
- 解释Cook-Torrance模型的能量守恒
- 如何解决改变主相机的fov时CSM的阴影抖动问题
- 是否了解过IBL的预计算推导,分割求和近似的前提是?
- 写伪代码:判断球与截头体求交,判断点是否在截头体内
- 是否在CPU端的项目中做过访存优化
-------10.7更新:国庆前其实就挂了;3号被另一个组捞了,然后在今天一面,刚面完,因为又全是问项目,就不写面经了,而且最后是切到牛客上写了个入门级代码题,也没来得及问是什么组,这次进二面几率应该比上次大一些,后面有消息了再更
-------
10.8 另一个组二面(1h)
- 为什么要有内存对齐:提高cache命中;还有吗?不知道鸭
- 为什么要有cache?
- 为什么要有虚拟内存,答:封闭寻址逻辑;扩大内存使用;还有吗?不知道鸭
- 解释多态;虚函数是如何调用的,虚表是每个类有一个还是每个对象有一个?
- 多继承用过没,菱形继承
- 引用计数的缺点?垃圾回收了解过没?如果要在c++里面做gc,大致如何实现?不知道鸭
- 移动语义和RVO
- 解释kajiya方程中的每一项;从辐射率计算辐照度的公式
- 机器学习和可微渲染在游戏里有什么应用
流程已到HR