图形学
文章平均质量分 79
打雷要下雨,雷欧
这个作者很懒,什么都没留下…
展开
-
LearnOpenGL HDR
HDR传统渲染中颜色值会被限制到[0, 1.0], 但是为了实际物理中, 亮度等值是可以超过1.0的, 那么在图片中怎么表现超过1.0的细节呢, 这也就是HDR(High Dynamic Range 高动态范围).HDR原本是在摄影中的运用, 摄影师发现暗的图片中, 具有非常多亮的细节, 亮的图片中, 暗的细节会非常明显, 可以合成HDR图片.如下图所示跟人眼相似, 光线弱的时候, 人眼会自动调整, 从而使得过暗或者过量的部分更加清晰.HDR渲染, 也是这个原理, 我们先大范围获取黑暗与明亮的细原创 2021-03-02 20:52:36 · 201 阅读 · 0 评论 -
LearnOpenGL学习笔记—光照04:Lighting Maps
总代码Camera.h#pragma once#include <glm/glm.hpp>#include <glm/gtc/matrix_transform.hpp>#include <glm/gtc/type_ptr.hpp>class Camera{public: ~Camera(); //position 相机所在位置 target 相机指向的位置 worldup 世界向上的向量 Camera(glm::vec3 position,.原创 2021-02-28 14:24:57 · 122 阅读 · 0 评论 -
LearnOpenGL Gamma校正
本篇文章是基于LearnOpenGL的总结Gamma 校正物理亮度是基于光子数量的, 一般是线性的, 而传统的CRT显示器, 会将亮度做2.2次幂. 即会将中间的笔直的直线, 映射成为下方弯曲的直线.可以计算下[0, 1]内的数取2.2次幂的结果, 接近0的数 0.22.2<0.2 =0.020.2^{2.2} < 0.2 ~= 0.020.22.2<0.2 =0.02 而0.82.2 =0.610.8^{2.2} ~= 0.610.82.2原创 2021-03-01 23:36:17 · 127 阅读 · 0 评论 -
[图形学] 法向量变换矩阵的推导
在顶点着色器中, 对顶点模型空间转换到世界模型空间的矩阵用M来表示, 那么法线的变换能否直接同样用M矩阵来从模型空间(切线空间) 到世界空间呢?我们知道一个4x4的变换矩阵,其平移的数据存放在第4列中即a14、a24、a34。而我们知道法线最后求得齐次形式是(x,y,z,0),所以很明显变换矩阵的第四行和第四列都不会对法线产生影响(脑中思考下)。那我们只需要考虑变换矩阵的前3x3就行了咯。那其实就只剩旋转和缩放了,先看缩放会不会影响。如果进行非统一变换,例如:(1,2,1),法线将不会与几何体表面垂直.原创 2021-02-28 11:38:18 · 1682 阅读 · 0 评论 -
法线贴图
原文以下内容都是基于原文的阅读以及总结如图可以发现在光照下, 石砖并没有呈现凹凸的样子, 并不符合真实实际的情况实际情况是石砖上会有凹凸起伏,以光的角度思考为什么我们看到瓷砖会有凹凸起伏.是什么使表面被视为完全平坦的表面来照亮?答案会是表面的法线向量。以光照算法的视角考虑的话,只有一件事决定物体的形状,这就是垂直于它的法线向量。砖块表面只有一个法线向量,表面完全根据这个法线向量被以一致的方式照亮。如果每个fragment都是用自己的不同的法线会怎样?这样我们就可以根据表面细微的细节对法线向量进原创 2021-02-28 19:58:05 · 259 阅读 · 0 评论