图形学
- 变换:齐次坐标系,为什么用;仿射变换:线性变换(缩放,对称,旋转,切变)、平移
- 正交投影和透视投影
- MVP变换:模型坐标系-世界坐标系-观察者坐标系-裁剪空间;视口变换:屏幕空间
- 光栅化 为什么要用三角形(平面、判断内外、重心坐标)?
- 为什么会产生锯齿
- 反走样:MSAA(在像素周围插值)、FXAA(直接替换掉锯齿)、TAA(复用上一帧的值,对静态物体)、DLSS(拉大分辨率+深度学习)
- 深度测试:画家算法-不能处理互相遮挡;Z-buffer算法-不能处理透明物体
- 着色:局部,与其它物体无关,不考虑阴影
- 光照模型:镜面反射-漫反射-环境光照 Blinn-Phong和Phong氏光照模型区别:冯氏用的是反射角和视角的夹角,布林-冯用的是半程向量和法向夹角
- 什么是着色频率:着色应用在每一个三角形、顶点、像素上
- 求顶点的法线:附近三角形法线的平均;求像素的法线:顶点法线的插值
- 纹理映射,纹理相对于像素太小:在纹理上插值;纹理相对于像素太大:使用Mipmap,每层分辨率减半(需要额外1/3存储空间,允许在两层之间插值);Mipmap的提升:异性过滤、用圆形查询
- 纹理的其他应用:环境光(记录在球/立方体上);凹凸贴图(给出假的法线);位移贴图(移动点的位置)
- 贝塞尔曲线、逐段贝塞尔曲线、曲面
- 网格处理:细分(loop-每条边上插入新点、Catmull-Clark-对每个面,连接每个边的中心和面的中心);简化(每次选择误差最小的一个边,坍缩)
- 阴影图Shadow map:从光源看物体,记录深度-从摄像机看物体,记录深度-比较深度是否一致
- 光线追踪:从观察点每个像素发射一根光线,求光线与物体交点
- 加速光线追踪:使用包围盒、划分网格、空间划分、划分物体
- BRDF?定义材质向各个方向反射光线的情况
- 渲染方程:反射光=光源+1次反射+2次反射+。。。
- 路径追踪:使用蒙特卡洛积分取N=1,有一定概率停止;改进:从物体上积分改成在光源上积分