摘要:在之前的文章里,我们介绍了直接光照的PBR的实现。今天,我们将介绍基于Image Based Lighting(IBL)技术的PBR间接光照的实现方法。 IBL技术是是一类光照技术的集合,它认为可以将周围的环境贴图看成是构成物体间接光照的来源。它环境贴图的每个像素视为光源,在渲染方程中直接使用它。这
阅读全文
posted @ 2020-08-31 19:46
|
||
08 2020 档案
摘要:在之前的文章里,我们介绍了直接光照的PBR的实现。今天,我们将介绍基于Image Based Lighting(IBL)技术的PBR间接光照的实现方法。 IBL技术是是一类光照技术的集合,它认为可以将周围的环境贴图看成是构成物体间接光照的来源。它环境贴图的每个像素视为光源,在渲染方程中直接使用它。这
阅读全文
posted @ 2020-08-31 19:46
摘要:最近自己在研究一个问题:DX中给定一张Texture,当数据已经存在于GPU端后,应该如何做才能将纹理的数据读取到CPU中? 要解决这个问题,首先应当知道DirectX中对于一个Texture的描述,这里我们以2DTexture为例,描述它的数据结构如下: typedef struct D3D11_
阅读全文
posted @ 2020-08-26 21:54
摘要:之前介绍了有关PBR技术的一些理论知识,今天来讲一下利用代码如何实现相应的光照算法。 我们提到,我们最终要求解的其实就是这么一个积分: 积分中kd的部分代表光照所产生的漫反射,ks的部分代表光照所产生的高光反射。如果充分考虑间接光照的效果(也就是从光源发射出光线后,不断碰撞反射,最终进入人眼),那这
阅读全文
posted @ 2020-08-16 17:12
摘要:最近策划希望给游戏中的视频增加一个类似抖音的滤镜特效,如下所示: 可以看到,有条纹状和点状的干扰信息时不时出现在视频中。 我在网络上找了一下,还真的没有找到有人实现过这个滤镜的shader,因此只能靠我自己分析滤镜内容来反向推shader了。 首先我们可以发现,在这个特效中,干扰的效果都是呈现为方块
阅读全文
posted @ 2020-08-11 20:39
摘要:Cosine-Weighted是一种对球面进行采样的算法,常用于路径追踪时对入射方向进行采样等领域。在介绍该算法之前,我们先来复习一下概率论的知识。 ###随机变量之间PDF的转换 假设有两个随机变量X和Y,它们的PDF为$p_x(x)$和$p_y(y)$,假设我们已知$p_x(x)$以及Y=f(X
阅读全文
posted @ 2020-08-05 20:14
|
||