05 2023 档案

摘要:## Shadow Map * shadow map思路很简洁,就是比较fragment在光照空间中的深度与shadow map记录的最浅深度,来判断是否被遮挡。这是一个比较基础的部分,在这里就不提实现了,感兴趣可以看一下我的OpenGL系列的文章,或者是LearnOpenGL的原文。我实现了三种基 阅读全文
posted @ 2023-05-31 23:13 ETHERovo 阅读(83) 评论(0) 推荐(0) 编辑
摘要:# 一、理论 ## 1. 反射率方程 Lo(p,ωo)=Ωfr(p,ωi,ωo)Li(p,ωi)nωidωi 反射率方程应该这样理解: * 辐射radiance某个着色点或者 阅读全文
posted @ 2023-05-26 22:44 ETHERovo 阅读(65) 评论(0) 推荐(0) 编辑
摘要:# 一、Blinn-Phong model * 冯氏模型的镜面反射采取了观察方向与反射方向的夹角,这样会造成当夹角大于九十度时,就会造成镜面反射光为零,这样一般情况下问题不大,但是当镜面反射的glossy程度比较大时,就会出现镜面反射边缘的截断现象。 * Blinn-Phong model改用半程向 阅读全文
posted @ 2023-05-25 20:34 ETHERovo 阅读(204) 评论(0) 推荐(0) 编辑
摘要:# 一、深度测试 ## 1. 深度缓冲 * 深度缓冲记录了屏幕空间内的像素深度(width*height),它会以16、24或32位float的形式储存它的深度值。在大部分的系统中,深度缓冲的精度都是24位的。 ## 2. gl_FragCoord * 对于每一个片段的深度,可以从GL_FragCo 阅读全文
posted @ 2023-05-14 22:04 ETHERovo 阅读(189) 评论(0) 推荐(0) 编辑
摘要:# 一、Assimp * Assimp可以将模型导成如下的格式: * 首先,该模型被打包成一个**scene**对象,是aiScene类型的,一般是导出为指向常量的指针。在scene中保存着三个对象: * 第一个是一个aiNode类型的指针,即根节点scene->mRootNode。 * 第二个是一 阅读全文
posted @ 2023-05-13 11:59 ETHERovo 阅读(152) 评论(0) 推荐(0) 编辑
摘要:# 一、颜色 * 对光源和物体写不同的shader * 物体:反射颜色是自身反射率与光源颜色的乘积 ```cpp #version 330 core layout(location = 0) in vec3 aPos; layout(location = 1) in vec3 aColor; lay 阅读全文
posted @ 2023-05-12 15:15 ETHERovo 阅读(24) 评论(0) 推荐(0) 编辑
摘要:C++11 7.1 定义抽象数据类型 7.1.2 定义改进的sale_data类 类内的函数是隐式的inline函数 (1)this 成员函数中对类的成员的访问是通过隐式的this指针实现的,该指针指向调用函数的类对象 因为this指向的对象不可改,所以this是常量指针 (2) const thi 阅读全文
posted @ 2023-05-10 23:52 ETHERovo 阅读(15) 评论(0) 推荐(0) 编辑
摘要:# 一、OpenGL ## 1. 核心模式与立即渲染模式 * 早期的OpenGL使用立即渲染模式(Immediate mode,也就是固定渲染管线),OpenGL的大多数功能都被库隐藏起来。 * 从OpenGL3.2开始,规范文档开始废弃立即渲染模式,并鼓励开发者在OpenGL的核心模式(Core- 阅读全文
posted @ 2023-05-10 21:35 ETHERovo 阅读(212) 评论(0) 推荐(0) 编辑
摘要:1. Anti-Aliasing 1.1 Temporel Anti-Aliasing (TAA) 对于静止图像,每一帧的采样取像素内不同的区域,循环变化,下一帧复用上一帧的信息,考虑到递归,就会使得等效SSP变大。 对于运动物体,使用motion vector来查找。 如果出现遮挡等问题使得信息不 阅读全文
posted @ 2023-05-03 15:34 ETHERovo 阅读(16) 评论(0) 推荐(0) 编辑
摘要:1. Tempora 1 SPP 包含如下四条光线。但是一个像素只用1spp会噪声很严重。 因此RTRT的主要目的是降噪,即滤波。 1.1 时间复用Tempora G-Buffer几何缓冲区:记录屏幕空间的信息;在光栅化的时候顺便得到。 Back Projection 首先,拿到当前帧像素的世界坐标 阅读全文
posted @ 2023-05-02 20:41 ETHERovo 阅读(50) 评论(0) 推荐(0) 编辑
摘要:1. Microfacet BRDF 1.1 菲涅尔项 菲涅尔项:反射光线强度与入射角的关系。对于绝缘体而言,观察方向越是平行于平面,反射越强,图像越清晰;因为镜面反射可逆,所以反之亦然。对于金属而言,规律相似,但是变化没有绝缘体那么明显。菲涅尔项的值与角度以及两个介质的折射率有关,可以采用简化公式 阅读全文
posted @ 2023-05-01 22:16 ETHERovo 阅读(53) 评论(0) 推荐(0) 编辑
摘要:3D Space 1. Reflective Shadow Map(RSM) 在RTR中,全局光照是想要得到比直接光照多一次bounce的间接光照。一切被直接光照照亮的物体都可以作为one bounce间接光照的光源(indirection light)。所以,全局光照就是direction+ind 阅读全文
posted @ 2023-05-01 16:07 ETHERovo 阅读(47) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示