图形/引擎/渲染相关面经

网易互娱:游戏引擎研发工程师

C++

图形学

搜狐畅游:引擎开发

腾讯:游戏客户端开发

快手:游戏图形开发

代码

C++

图形学

其他

剑心互娱:渲染引擎开发工程师

代码

C++

其他

  • 最喜欢哪款游戏,为什么?
  • 我看你 2077 和巫师三都玩过,你觉得 2077 相比于巫师三有哪些技术上的进步?
  • 游戏中实时光追是怎么应用的?
  • UE5 演示视频看过吧,你觉得就画面来说还有哪些能够提升的地方,为什么人物相对于场景看起来那么不真实?
  • 你觉得在游戏画面中哪部分最容易让人一眼察觉到画面的不真实?
  • mc 玩了多久,你觉得这个游戏开发过程中会有哪些技术难点,他是怎么呈现出这么大的一个世界的,世界中的方块是怎么存储的,实体之间的碰撞是怎么做的?
  • 你之前的这个项目(一个 2D 平台跳跃游戏)你现在觉得有什么能改进的地方?

Bilibili:游戏引擎开发工程师

图形学

其他

  • 快排优缺点,稳定吗,时间复杂度,空间复杂度,最坏什么情况?
  • 堆排序优缺点?
  • 这些排序算法怎么选择?
    各种排序算法的总结和比较
  • 装箱开销体现在哪里?
  • map、unordered_map 中查询的时间复杂度是多少?
  • 有哪些 hash 算法?

光线云:图形算法工程师

图形学

  • 光栅化有哪些做法
  • VSM
  • 平面反射
  • VBO、EBO、VAO
  • PBR 有哪些贴图
    Albedo、Normal、Metallic、Roughness、AO

C++

网龙:程序研究员

图形

  • 深度测试在什么空间
  • 三角形内怎么进行插值,重心坐标怎么求
  • PBR 公式什么意义,怎么推导
  • 法向量乘以变换向量逆矩阵的转置

C++

  • forward 和 move 的区别
  • 线程 move
  • function 和 lambda 的区别
  • weak_ptr 怎么保证有效
  • unic_ptr 怎么实现
  • obj 文件左右手坐标系

其他

  • Unity 场景资源管理
  • M乘N 大小的矩阵,每个元素的值都是 X乘Y 的结果,怎么找到第 K 小的元素。
  • 三维空间中有一个圆圈,已知圆上两点 A、B 以及过 A 点的切线,如何用线性代数的方式求圆心位置。

释厄:游戏引擎开发

C++

  • const 对象可以触发移动函数吗,为什么?
  • 被 move 了的对象还能继续使用吗?

图形

  • 为什么要使用双重缓冲?
  • 模型数据从 CPU 到 GPU,再到最后的画面,会经历哪些空间转换?
  • 使用 NDC 空间的目的是什么?
  • shader 在你的理解里是指什么?
  • 为什么在 shader 中计算会比在 cpu 计算快?
  • 写 shader 需要注意些什么?
  • 为什么要避免分支,分支的开销在于什么?
  • CPU 传递给 shader 数据要注意些什么?
  • GPU Driven 是什么?
  • 为什么经常用贴图去存储数据?
  • 了解过现代化的图形api设计吗?
  • FrameGraph 定义了哪些 Stage 去划分一个 Pass 的流程?
  • FrameGraph 定义了哪些资源类型,来更好的管理动态资源,或者说资源的生命周期?