找回密码
 注册帐号

扫一扫,访问微社区

DeadWind UnityShader学习笔记(四)

15
回复
652
查看
[ 复制链接 ]
排名
39863
昨日变化

6

主题

14

帖子

97

积分

Rank: 9Rank: 9Rank: 9

UID
306031
好友
12
蛮牛币
97
威望
0
注册时间
2018-11-26
在线时间
51 小时
最后登录
2019-9-3
2019-8-28 14:18:13 显示全部楼层 阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册帐号

x
本帖最后由 DeadWind 于 2019-8-28 09:57 编辑

emm...兄弟盟我回来了。两个星期没更了,是不是觉得我放弃了,还是失踪了?前段时间因为跳槽换公司,熟悉新环境,并且加班也比较多,所以就偷懒,没写博客。现在缓过来了,继续我们的shader入门到放弃。加油!!!

上一篇我们讲的是渲染流水线的三个阶段,分别是应用阶段,几何阶段,光栅化阶段。同时简单的列举了这三个阶段所做的事情。如果忘记了就回去看看UnityShader学习笔记(三)。本篇我们继续讲上一篇的内容,更深入的了解一下。


应用阶段:


上一篇应用阶段我们列举了三项:场景数据、剔除Culling、设置渲染状态。场景数据和剔除比较容易理解我们就不再讨论了,兄弟盟想要更熟悉的话可以自行查阅。这里我们就再简单介绍一下设置渲染状态其实是在做什么。

设置渲染状态:渲染状态通俗的解释是,这些状态定义了场景中的网格是怎样被渲染的。例如,使用哪个顶点着色器/片元着色器、光源属性、材质等。如果我们没有更改渲染状态,那么所有的网格都将使用同一种渲染状态,如下图显示了当使用同一种渲染状态时,渲染3个不同网格的内容。

156691644.jpg

再此之后CPU就会“通知”GPU开始干活,这里的“通知”其实就是DrawCall。关于DrawCall我打算后面单独写一篇来介绍一下。


几何阶段:

几何阶段我们在上一篇分为了五项:模型视图转换、顶点着色、投影、裁剪、屏幕映射。这里我们逐个分析。

模型视图转换:其实就坐标转换,在顶点着色器中进行。坐标转换,对顶点(既位置)进行某种变化。首先我们需要了解几个坐标类型:Object space(模型坐标空间)、World space (世界坐标空间)、Eye spac(观察坐标空间)、Clip space(裁剪坐标空间)、Clip and Project spac(屏幕坐标空间。如果不清楚这五种坐标空间可以先去了解一下。那这里的坐标转换就是将三维的坐标数据绘制到二维屏幕上。例如,由模型空间转换为世界空间,再由世界空间转换为观察空间,之后再由观察空间转换为裁剪空间

1566919189(1).jpg

顶点着色:就是确定模型上顶点处材质的光照效果。emmm...

投影:投影分为正交投影和透视投影。正交投影:正交投影的可视体通常是一个矩形,正交投影可以把这个视体变换为单位立方体。正交投影的主要特性是平行线在变换之后彼此之间仍然保持平行,这种变换是平移与缩放的组合。透视投影:相比之下,透视投影比正交投影复杂一些。在这种投影中,越远离摄像机的物体,它在投影后看起来越小。更进一步来说,平行线将在地平线处会聚。透视投影的变换其实就是模拟人类感知物体的方式。

裁剪:一个图元和摄像机视野的关系有3种:完全在视野内、部分在视野内、完全在视野外。完全在视野内的图元就继续传递给下一个流水线阶段,完全在视野外的图元不会继续向下传递,因为它们不需要被渲染。而那些部分在视野内的图元需要进行一个处理,这就是裁剪。例如,一条线段的一个顶点在视野内,而另一个顶点不在视野内,那么在视野外部的顶点应该使用一个新的顶来代替,这个新的顶点位于这条线段和视野边界的交点处。

这里再讲一下裁剪和应用阶段中的剔除的区别,剔除:在应用程序阶段,能够判断物体不在视锥体内并且与视锥体的6个面没有交叉,那么就把物体剔除,不再发给几何阶段;裁剪:物体与视锥体的6个面有交叉,意味着物体的一部分在视锥体内,一部分在视锥体外,那么在几何处理阶段完成投影后,就得把视锥体外的物体裁剪,不再发给屏幕映射。

Clipping.png






屏幕映射:这一步输入的坐标仍然是三维坐标系下的坐标(范围在单位立方体内)。屏幕映的任务是把每个图元的x和y坐标转换到屏幕坐标下。屏幕坐标系是一个二维坐标系,它与我们用于显示画面的分辨率有很大关系。

ScreenMapping.png

本篇就先写到这吧。光栅化就留到下一篇啦。因为留下一点没写完,这样会更有动力让我继续写,哈哈哈。(借口)

本篇参考文献:

《UnityShader入门精要》-- 冯乐乐,人民邮电出版社,2018年3月第11次印刷。请支持正版!

《Real-Time Rendering 3rd》提炼总结 -- https://blog.csdn.net/poem_qianmo/article/details/70544201


回复

使用道具 举报

14

主题

22

帖子

171

积分

Rank: 9Rank: 9Rank: 9

UID
327626
好友
4
蛮牛币
127
威望
0
注册时间
2019-7-19
在线时间
121 小时
最后登录
2019-9-16
2019-8-28 18:48:01 显示全部楼层
日常膜拜
回复

使用道具 举报

0

主题

27

帖子

74

积分

Rank: 2Rank: 2

UID
321411
好友
0
蛮牛币
420
威望
0
注册时间
2019-5-7
在线时间
47 小时
最后登录
2019-9-15
2019-8-28 21:15:44 显示全部楼层
敬你一杯
回复

使用道具 举报

2初来乍到
121/150
排名
28932
昨日变化

0

主题

50

帖子

121

积分

Rank: 2Rank: 2

UID
21931
好友
0
蛮牛币
256
威望
0
注册时间
2014-4-18
在线时间
59 小时
最后登录
2019-9-15
QQ
2019-8-28 22:21:19 显示全部楼层
学习学习~~
回复

使用道具 举报

6蛮牛粉丝
1179/1500
排名
2066
昨日变化

0

主题

272

帖子

1179

积分

Rank: 6Rank: 6Rank: 6

UID
26073
好友
1
蛮牛币
4483
威望
0
注册时间
2014-5-21
在线时间
239 小时
最后登录
2019-9-16
2019-8-29 08:55:07 显示全部楼层
学习一下,棒棒的!
回复

使用道具 举报

3偶尔光临
290/300
排名
19948
昨日变化

2

主题

184

帖子

290

积分

Rank: 3Rank: 3Rank: 3

UID
328743
好友
0
蛮牛币
35
威望
0
注册时间
2019-8-5
在线时间
74 小时
最后登录
2019-9-16
2019-8-29 09:06:46 显示全部楼层
6666666666666666
回复 支持 反对

使用道具 举报

3偶尔光临
210/300
排名
64937
昨日变化

0

主题

14

帖子

210

积分

Rank: 3Rank: 3Rank: 3

UID
305748
好友
0
蛮牛币
760
威望
0
注册时间
2018-11-23
在线时间
194 小时
最后登录
2019-9-16
2019-8-29 09:32:19 显示全部楼层
膜拜大佬
没更新以为被野人抓跑了
回复 支持 反对

使用道具 举报

5熟悉之中
540/1000
排名
9489
昨日变化

0

主题

219

帖子

540

积分

Rank: 5Rank: 5

UID
292197
好友
0
蛮牛币
851
威望
0
注册时间
2018-8-2
在线时间
201 小时
最后登录
2019-9-16
2019-8-29 09:35:02 显示全部楼层
thinks for share!
回复

使用道具 举报

5熟悉之中
873/1000
排名
10706
昨日变化

0

主题

603

帖子

873

积分

Rank: 5Rank: 5

UID
301976
好友
1
蛮牛币
1306
威望
0
注册时间
2018-10-31
在线时间
172 小时
最后登录
2019-9-16
2019-8-29 11:05:13 显示全部楼层
Nice。。。。
回复

使用道具 举报

2初来乍到
116/150
排名
28932
昨日变化

0

主题

42

帖子

116

积分

Rank: 2Rank: 2

UID
205309
好友
0
蛮牛币
0
威望
0
注册时间
2017-2-6
在线时间
62 小时
最后登录
2019-8-29
2019-8-29 14:10:57 显示全部楼层
非常非常好 支持好  非常棒  老厉害了
回复 支持 反对

使用道具 举报

2初来乍到
103/150
排名
24129
昨日变化

0

主题

49

帖子

103

积分

Rank: 2Rank: 2

UID
235432
好友
0
蛮牛币
97
威望
0
注册时间
2017-8-2
在线时间
36 小时
最后登录
2019-9-4
2019-8-29 14:52:35 显示全部楼层
thanks for your share
回复 支持 反对

使用道具 举报

7日久生情
2205/5000
排名
4093
昨日变化

0

主题

1467

帖子

2205

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
254705
好友
1
蛮牛币
1993
威望
0
注册时间
2017-11-16
在线时间
376 小时
最后登录
2019-9-16
2019-8-30 08:06:18 显示全部楼层
6666666666666666666666666666
回复 支持 反对

使用道具 举报

5熟悉之中
827/1000
排名
4111
昨日变化

1

主题

286

帖子

827

积分

Rank: 5Rank: 5

UID
245227
好友
0
蛮牛币
1016
威望
0
注册时间
2017-9-21
在线时间
180 小时
最后登录
2019-9-16
2019-8-30 09:35:15 显示全部楼层
水 继续水
回复

使用道具 举报

7日久生情
3288/5000
排名
322
昨日变化

1

主题

413

帖子

3288

积分

Rank: 7Rank: 7Rank: 7Rank: 7

UID
2219
好友
1
蛮牛币
9484
威望
0
注册时间
2013-8-19
在线时间
1036 小时
最后登录
2019-9-16
2019-9-2 15:19:17 显示全部楼层
灰常好看的笔记
回复

使用道具 举报

排名
64937
昨日变化

0

主题

2

帖子

7

积分

Rank: 1

UID
283473
好友
0
蛮牛币
8
威望
0
注册时间
2018-5-30
在线时间
3 小时
最后登录
2019-9-4
2019-9-2 16:02:02 显示全部楼层
日常膜拜
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则