Sen's blog

请使用 Ctrl + F5 刷新页面以获取最新博客内容

101复习(3`光栅化,傅里叶变换,深度测试,着色、坐标转换)

光栅化 光栅化遍历每个图元为它们生成片元 采样法:遍历屏幕内每个像素中心的采样点,进行覆盖性测试,利用叉乘判断是否在图元内部 优化:根据顶点确定包围盒范围,仅遍历包围盒范围内的采样点 Aliasing走样问题:锯齿,摩尔纹(moire Patterns)(水波纹),车轮效应(分不清顺逆时帧旋转)…… 抗锯齿:SSAA,MSAA,FXAA,TAA……详见其他章节 傅...

OpenGL复习(法线贴图、视差贴图、HDR、实例化)

法线贴图 优化:增加物体的细节,如果直接增加顶点,将产生大量开销,而通过纹理,开销少了很多,但由于网格表面实际是平整的,所以光照看起来不够真实,凹凸表面是一样的亮度,为了让代价最小,仍然用贴图,根据贴图的法线方向光照计算,总之就是用小的代价使得纹理的光照看起来更真实 存储:法线贴图每个像素存储法线方向,xyz用rgb表示,法线贴图大部分是蓝色的,因为法线一般垂直于物体表面,指向虚...

4·算法复杂度、排序算法

算法复杂度分析 性能测试:在编写程序后算法性能测试,精确性高,算法编写好运行,依赖数据规模 算法性能分析:在编写程序前对算法性能估计,精确性低,使用方便 算法复杂度与数据规模之间的增长关系,它并非实际执行时间/存储空间(具体数值),而是反应一种趋势(n相关的表达式) 四则运算 加:平行 乘:嵌套 减:去掉平行 除:...

C++ 特殊成员函数、虚继承、浅拷贝深拷贝

特殊成员函数 架构 合成:编译器自动生成 默认:特殊成员函数的最基本形式 构造 默认构造函数:可以不用实参(也可以提供默认实参)进行调用的构造函数 能否重载:能 能否声明为虚函数:构造函数不能声明为虚函数 构造函数声明为虚函数会产生虚表,虚表指针,虚构造函数存放在虚表中,需通过虚表指针访问 虚表指针在构造函数内初始化,即指向虚表 ...

OpenGL复习(Gamma、模糊、抗锯齿)

Gamma伽马校正(ga ma jiao zheng) 物理亮度即光子数量,光子数量翻倍时是真实的物理亮度翻倍,线性亮度 人眼感知,对暗部变化更敏感(暗部只需要较少的光子数增幅,就会感到明显的变化) CRT显示器正好符合人眼感知,非线性亮度即\^2.2 图中,横轴光子数量,纵轴颜色/亮度值,它们都以归一化表示,中间是线性的物理亮度,下方\^2.2,上方\^1/2.2...