开启辅助访问
 找回密码
 注册帐号

扫一扫,访问微社区

开发者专栏

关注:2234

当前位置:游戏蛮牛 技术专区 开发者专栏

__________________________________________________________________________________
开发者干货区版块规则:

  1、文章必须是图文形式。(至少2幅图)
      2、文章字数必须保持在1500字节以上。(编辑器右下角有字数检查)
      3、本版块只支持在游戏蛮牛原创首发,不支持转载。
      4、本版块回复不得无意义,如:顶、呵呵、不错......【真的会扣分的哦】
      5、......
__________________________________________________________________________________
查看: 4085|回复: 55

[枸杞忧天] [初级]在Unity中做一个淡入式的屏幕虚化

[复制链接]  [移动端链接]
2初来乍到
149/150
排名
32057
昨日变化
20

7

主题

13

帖子

149

积分

Rank: 2Rank: 2

UID
73054
好友
3
蛮牛币
235
威望
0
注册时间
2015-2-4
在线时间
23 小时
最后登录
2018-6-10

专栏作家

发表于 2018-2-22 21:00:45 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 elsong 于 2018-2-22 21:02 编辑

屏幕虚化是非常简单的屏幕后处理特效之一,它的基本做法是对图片中的像素进行加权平均,也就是让每个像素的颜色都或多或少的受到周围像素颜色的影响,进而模糊画面,产生撸多了的效果,网上屏幕虚化的教程很多,在此就不再赘述了。

相较传统的“咔嚓虚化”,“淡入式虚化”的差别是:

1、前戏足,过渡自然,不生硬。
咔嚓虚化


淡入式虚化
2、分担了下GPU的DrawCall,将DC的峰值稍稍降低了些。

50次迭代虚化的渲染情况


咔嚓虚化DC

淡入式虚化DC

当然,“咔嚓虚化”和“淡入式虚化”这个名字是我起的,知道意思就行,不用较真

其实“淡入式虚化”与“咔嚓虚化”本质上没有区别,只是把多次虚化的动作放在了Coroutine中,大概流程是这样的:

OnRenderImage函数调用时,保存一张屏幕截图,并激活淡入式虚化。
在Coroutine中,按照预设的频次迭代虚化屏幕截图。
达到预设的虚化次数后,停止虚化并结束Coroutine。
到这里就讲完了,实现过屏幕虚化的朋友肯定已经明白了,再见。

如果对于屏幕虚化还不甚了解,或者自己以后年纪大了忘了思路,可到后面看一下几个关键点来辅助回忆,请吧。

本文讨论的两种虚化,有以下几个特点:

相同点:

1、通过适当的缩小截屏后的图片,可在提升效率的基础上加强模糊效果。这是因为缩小图片尺寸等于减少需要处理的像素点,因此效率更高;且图片先缩小,丢掉部分像素信息后再拉伸回原尺寸也能起到一定模糊的效果(因为使用了Bilinear的过滤方式)。


截屏时减小图片尺寸的虚化结果比对(迭代10次,采样半径1.2)

(注:这里所谓的“截屏”就是将相机渲染结果的颜色信息取出。后面的虚化处理就是对这个拷贝出来的颜色信息而做的。截屏是通过OnRenderImage函数完成的,这个函数调用的时机可参看Unity函数生命周期或上篇文章《ClearFlags 与 OnRenderImage》。)

2、多次迭代虚化图片,即每次都在上一次虚化的基础上再次虚化,可以提升虚化品质。
clipboard(5).png
调整迭代次数的虚化结果比对(采样半径1.2,降采样2倍)

3、合理调整虚化半径,可以提升虚化品质。




调整采样半径的虚化比对(迭代20次,降采样1倍)


注:如果虚化半径调的过高,会让图片变得“瓷砖化”,正所谓过犹不及,适合自己的才是最好的。


4、使用两个Pass通道,分横纵两次进行虚化,减少DrawCall时的采样次数。


不同点:
“咔嚓虚化”的虚化动作直接放在OnRenderImage中。因此若迭代次数较高,这一渲染帧的DrawCall必然高。
“淡入式虚化”在OnRenderImage中仅做截屏操作,虚化动作则放在Coroutine中,即根据虚化强度及时间平均在各渲染帧中。

关键部分代码:

咔嚓虚化调用接口


淡入式虚化调用接口


OnRenderImage操作


咔嚓虚化直接迭代虚化图片


淡入式虚化分帧虚化图片


虚化Shader的两个Pass通道


仅额外采样像素周围4个点的信息,可增加。


进行像素颜色的加权计算

最后值得注意一个地方:
要对保存虚化图片的Texture2D进行些属性设置:




本帖被以下淘专辑推荐:


回复

使用道具 举报

排名
24795
昨日变化
13

0

主题

12

帖子

36

积分

Rank: 1

UID
268028
好友
0
蛮牛币
23
威望
0
注册时间
2018-2-7
在线时间
10 小时
最后登录
2018-4-3
发表于 2018-2-23 08:52:48 | 显示全部楼层
6666666666666

回复

使用道具 举报

6蛮牛粉丝
1280/1500
排名
2658
昨日变化
4

0

主题

371

帖子

1280

积分

Rank: 6Rank: 6Rank: 6

UID
126382
好友
0
蛮牛币
140
威望
0
注册时间
2015-10-22
在线时间
425 小时
最后登录
2018-6-3
发表于 2018-2-23 08:53:29 | 显示全部楼层
666666666666666

回复 支持 反对

使用道具 举报

6蛮牛粉丝
1237/1500
排名
2193
昨日变化
6

19

主题

167

帖子

1237

积分

Rank: 6Rank: 6Rank: 6

UID
225323
好友
1
蛮牛币
589
威望
0
注册时间
2017-6-5
在线时间
487 小时
最后登录
2018-6-20
发表于 2018-2-23 09:27:56 | 显示全部楼层
楼主能传下工程让我们看下么?
[发帖际遇]: RevoYu 乐于助人,奖励 3 蛮牛币. 幸运榜 / 衰神榜

回复 支持 反对

使用道具 举报

5熟悉之中
839/1000
排名
3700
昨日变化
2

1

主题

300

帖子

839

积分

Rank: 5Rank: 5

UID
234265
好友
1
蛮牛币
333
威望
0
注册时间
2017-7-26
在线时间
184 小时
最后登录
2018-5-2
发表于 2018-2-23 09:57:45 | 显示全部楼层
6666666666666

回复

使用道具 举报

排名
23383
昨日变化
9

0

主题

26

帖子

73

积分

Rank: 2Rank: 2

UID
214039
好友
0
蛮牛币
80
威望
0
注册时间
2017-3-23
在线时间
32 小时
最后登录
2018-6-8
发表于 2018-2-23 10:00:51 | 显示全部楼层
 大体意思是使用协程来控制迭代速率对吧

回复 支持 反对

使用道具 举报

7日久生情
2118/5000
排名
3437
昨日变化
3

8

主题

1095

帖子

2118

积分

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

UID
168159
好友
4
蛮牛币
4981
威望
0
注册时间
2016-9-12
在线时间
627 小时
最后登录
2018-6-20
发表于 2018-2-23 10:16:58 | 显示全部楼层

回复

使用道具 举报

5熟悉之中
998/1000
排名
3299
昨日变化
7

1

主题

369

帖子

998

积分

Rank: 5Rank: 5

UID
122160
好友
1
蛮牛币
1657
威望
0
注册时间
2015-9-10
在线时间
232 小时
最后登录
2018-6-19
发表于 2018-2-23 10:17:12 | 显示全部楼层
感谢分享

回复

使用道具 举报

4四处流浪
454/500
排名
4872
昨日变化
4

0

主题

36

帖子

454

积分

Rank: 4

UID
226019
好友
0
蛮牛币
432
威望
0
注册时间
2017-6-9
在线时间
158 小时
最后登录
2018-6-14
发表于 2018-2-23 11:37:03 | 显示全部楼层
66666666666
[发帖际遇]: zhengnan 在论坛发帖时没有注意,被小偷偷去了 1 蛮牛币. 幸运榜 / 衰神榜

回复

使用道具 举报

6蛮牛粉丝
1323/1500
排名
3458
昨日变化
20

5

主题

590

帖子

1323

积分

Rank: 6Rank: 6Rank: 6

UID
239879
好友
1
蛮牛币
2190
威望
0
注册时间
2017-8-26
在线时间
348 小时
最后登录
2018-6-21
发表于 2018-2-23 13:39:10 | 显示全部楼层
虽然看不懂 但是感觉还是很牛的样子
[发帖际遇]: lzklzklzk 乐于助人,奖励 1 蛮牛币. 幸运榜 / 衰神榜

回复 支持 反对

使用道具 举报

5熟悉之中
552/1000
排名
7103
昨日变化
4

2

主题

244

帖子

552

积分

Rank: 5Rank: 5

UID
229218
好友
1
蛮牛币
669
威望
0
注册时间
2017-6-28
在线时间
148 小时
最后登录
2018-6-19
发表于 2018-2-23 14:03:14 | 显示全部楼层
感谢分享

回复

使用道具 举报

7日久生情
4371/5000
排名
38
昨日变化

2

主题

480

帖子

4371

积分

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

UID
3490
好友
4
蛮牛币
1398
威望
0
注册时间
2013-9-9
在线时间
1151 小时
最后登录
2018-6-14

VIP

发表于 2018-2-23 16:57:17 | 显示全部楼层
6666666666666666666666666666

回复 支持 反对

使用道具 举报

5熟悉之中
837/1000
排名
8419
昨日变化
90

1

主题

262

帖子

837

积分

Rank: 5Rank: 5

UID
159858
好友
1
蛮牛币
451
威望
0
注册时间
2016-8-1
在线时间
448 小时
最后登录
2018-6-20
发表于 2018-2-23 17:18:54 | 显示全部楼层
双击666.。。雅蠛蝶

回复

使用道具 举报

5熟悉之中
515/1000
排名
7516
昨日变化
5

0

主题

262

帖子

515

积分

Rank: 5Rank: 5

UID
250350
好友
1
蛮牛币
455
威望
0
注册时间
2017-10-23
在线时间
106 小时
最后登录
2018-6-19
发表于 2018-2-24 09:40:10 | 显示全部楼层
感谢分享,要是有源工程就更好了

回复 支持 反对

使用道具 举报

7日久生情
1664/5000
排名
5320
昨日变化
31

0

主题

1215

帖子

1664

积分

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

UID
267381
好友
4
蛮牛币
2777
威望
0
注册时间
2018-2-1
在线时间
213 小时
最后登录
2018-6-21
发表于 2018-2-24 10:26:20 | 显示全部楼层
666666666666666666

回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

站长推荐 上一条 /1 下一条

快速回复 返回顶部 返回列表