- 博客(3)
- 收藏
- 关注
原创 Games 101 Ray Tracing
假设眼睛是点光源,光线只会发生镜面反射和折射,从眼睛射出的一条光线穿过一个像素,这个像素的颜色等于所有到达光源的光线与物体交点上的能量合。在之前我们描述光的强度一直都没有单位,并且关于光反射或者折射以后的能量分散或衰减问题我们也一直在假设,学习radiometry可以让我们基于物理来模拟光线在场景中的运动的情况。渲染方程也就很好理解了,加上一个物体自发光的常数项,然后假设所有的方向都是朝外的(cos换成了点乘,其实是一样的),立体角的定义为:球体上的面积除以半径的平方就是这个面积所对应的立体角。
2023-03-28 14:20:24 49
原创 Games 101 Shading
走样的原理:下图中的平行四边形代表一个像素,在上图中的远处,一个像素覆盖了很多的纹理,我们在取样的时候只求了中心点的值,但事实上这一个值根本代表不了这么多纹理的值。左图看起来很不清晰,不连续,是因为屏幕比纹理的清晰度高,因此在贴图时有好几个相邻的pixel都取了相同的值,如下图所示,只要在一个格子内,所有的红点返回的值都会是中心的黑点的值。表示有多少光达到了shading point,如下图所示,因为发出的能量是不变的,如果假设半径为1的圆上的点到达的能量为I,那么远处的圆上相同面积到达的光为。
2023-03-26 19:34:00 53
原创 Games 101 Rasterization
傅里叶变换指的是任意的函数都可以用正弦和余弦函数表达,即用频率来表达的函数,从这个角度出发我们可以理解alias产生的原因是采样的频率很低,高频信号没有被充分采集到,导致高频函数的采样结果和低频一样。那么上图有锯齿就是因为采样少了,想象一下如果格子非常小,那我们得到的结果就近似是一个直线,得到的结果就和一条直线很像了。回到三角形的例子中:本来每一个格子不是在三角形内就是在三角形外,现在我们对每一个格子都进行卷积,因此可以得到每一个格子中有多少多少部分在三角形内。:在经过MVP变换后,我们得到了一个。
2023-03-25 21:49:46 101 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人