计算机图形学 着色(shader) 学习笔记
创始人
2024-05-01 05:38:57
0

画家算法:从远到近的光栅化,近的物体的着色覆盖远的物体的着色,近的物体的RGB优先 


实际计算机图形学使用的是Z-Buffer深度缓冲

先看地板,地板要渲染的像素先放进二位数组内,接下来要看正方体,正方体与之前地板的像素位置要近,那么将对应的地板像素的二位数组像素给覆盖成正方体的像素吗,如下图:

小正方形内的数字代表距离相机的远近程度,越近的就将远的像素信息给覆盖掉 

r是离光源的半径,离光源越远,Ld(漫反射光源的强度,其他各种光照通过各种反射最后到该位置的亮度强度)值越小,由于n, l为单位向量,n与l的点集就为n的模乘以l的模乘以cos,则角度越大,接触的通光量则越少,则光亮度越弱,由于不考虑光线折射,cos角度大于180的场景(大于180°后点集值为负),所以做了一个max(0, n ^ l)的操作,Kd是漫反射的颜色

上图为颜色强度越来越强的效果图 

现在给Ls(高光向光源强度,最亮的光源到该位置的亮度)增加一个系数p,目的是防止太远的物体也能受到反射光的影响,如下图,将cos的幂提高即可有效满足远处物体不受反射光效果影响的目的

 

最后一个就是收到环境光的影响La,相当于整个环境都存在一个常量的光,让整个场景不至于一点东西都看不见而存在的La

由La(环境光)+ Ld(漫反射光)+ Ls(高光)综合相加而决定的最后的光照强度


渲染管线:

1、通过各种Rotation、Scale、Translation等操作过后生成各个三维的空间

2、通过相机把三维空间位置先压缩到单位为2的正方体内

3、将正方体内的空间通过[ width / 2, 0, 0 width / 2 ]的矩阵将三维空间的X,Y轴上的点变换到屏幕

                                         [ 0, height / 2, 0, height / 2 ]

                                         [ 0, 0, 1, 0 ]

                                         [ 0, 0, 0, 1 ]

4、再次通过Z-Buffer的算法将Z轴的坐标,画到屏幕上

5、通过采样,将要渲染的像素进行标示出来,由于采样会由锯齿,所以通过模糊再采样的形式减少抗锯齿带来的视觉影响。

6、shader着色(考虑环境光、漫反射光、强光影响),将RGB颜色画在各个像素上完成渲染管线


Texture Mapping(纹理映射):

Texture Mapping会使用到重心坐标,以下为重心坐标公式:

 我们设G为重心点,那么Aa为CGB的面积,Ab为ACG的面积,Ac为AGB的面积

也可以用以上公式进行计算 

重心坐标的应用:在重心坐标与三角形的三点之间做POSITION、TEXTURE、COLOR等信息的插值,让信息能够平滑的过度到三角形顶点上 

通过uv查找到纹理对应的颜色,然后把texcolor与漫反射的Kd颜色进行一个替换,就可以应用上对应的纹理了

 当纹理小,平面大的情况下,会造成像素拉伸,处理办法为双向插值,找到原像素位置周围四个像素,在红点和上下左右方向进行颜色等信息的插值。

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
客厅放八骏马摆件可以吗(家里摆... 今天给各位分享客厅放八骏马摆件可以吗的知识,其中也会对家里摆八骏马摆件好吗进行解释,如果能碰巧解决你...
苏州离哪个飞机场近(苏州离哪个... 本篇文章极速百科小编给大家谈谈苏州离哪个飞机场近,以及苏州离哪个飞机场近点对应的知识点,希望对各位有...