Unity Day11
1.CPU 和 GPU 他们分别是什么?他们主要完成什么工作?
答案:
- CPU 为中央处理器 负责算术运算、逻辑操作、数据传输、等通用计算任务,同时还管理和调度计算机的资源(游戏开发中——游戏逻辑处理),主要处理操作系统管理、程序执行、通用计算等等 CPU 一般处理串行任务,即顺序执行的单个任务,适用于大多数常规计算
- GPU 为图形处理器 是专门用于图形和并行计算的处理器 显卡就是搭载 GPU 的硬件设备,显卡包含一个或者多个 GPU 芯片,还包含显存(用于存储图像数据)、显示接口、视频解码器等等(游戏开发中——渲染相关处理)
2.渲染关系中的几何阶段是由 CPU 主导还是 GPU 主导?该阶段主要是在做什么?
答案: 渲染管线中的几何阶段主要是由 GPU 主导 最主要的工作就是
- 顶点、法线等模型数据的相关处理
- 对他们进行坐标空间转换,裁剪画面外图元等等
- 还可以进行顶点着色,为每一个顶点计算颜色、纹理坐标、法线等属性,以便在后续的阶段进行计算
3.是不是所有的矩阵有逆矩阵?如何计算逆矩阵?
答案:
- 不是所有的矩阵都有逆矩阵
- 计算逆矩阵的流程
- 确定矩阵为方阵
- 计算矩阵的行列式(若行列式为 0,则没有逆矩阵)
- 计算矩阵的代数余子式
- 计算标准伴随矩阵(代数余子式转置)
- 计算逆矩阵(标准伴随矩阵/行列式)
4.齐次坐标是什么?有什么作用?
答案:
- 是一种拓展的坐标系统吗,用于在计算图形学等学科中进行数学运算,将原本是 n 维的向量或矩阵用 n+1 维来表示
- 利用齐次坐标,我们可以明确的区分向量和点,能够用来表示出平移变换
5.Shader 开发中的坐标空间变换,主要是在哪几个空间中进行变换?变换顺序是什么?
答案: 主要是将模型空间相关数据(顶点、法线、切线等)在 模型空间 -> 世界空间 -> 观察空间 -> 裁剪空间 -> 屏幕空间 之间进行变换