【教程】关于游戏中Bloom(泛光)效果的前世今生(手把手教你撸Bloom) (一)

您所在的位置:网站首页 unity画面效果润色 【教程】关于游戏中Bloom(泛光)效果的前世今生(手把手教你撸Bloom) (一)

【教程】关于游戏中Bloom(泛光)效果的前世今生(手把手教你撸Bloom) (一)

#【教程】关于游戏中Bloom(泛光)效果的前世今生(手把手教你撸Bloom) (一)| 来源: 网络整理| 查看: 265

        最近在研究Bloom的效果实现的一些细节问题,所以今天就写一篇文章来给大家分享一下。视频就不录了,懒的录,主要现在没麦了不好录。我也只是一只菜鸡TA,有啥地方不对的大佬们指正。

        好了,开始正题。

        在各大游戏中,我们经常可以看到画面中的高光物体带有泛光效果,这也是我们在研发过程中常说的Bloom效果,它对整个画面起到了很好的润色作用,增强整体的光影表现。就像你们在封面中看到的那样。那么,如果没有Bloom是什么样呢,我能来看下面的对比图。

Bloom Close

Bloom Open

可以明显的看出关闭Bloom后那些特效的表现就已经渣的无法形容了,怎么样,现在即使你是什么都不懂的新人,现在也应该有个感性的认识了吧。那么接下来,我们以十分scientific的角度来说说Bloom到底是什么东西。

          在日常生活中我们使用的显示器可以显示的光范围十分有限,从最黑到最亮它在RGB空间(关于颜色空间的知识自行去看我的视频教程第4节)所显示的范围为0-1的一个范围,我们称这个空间为low dynamic range ——LDR(低动态范围)。对于一个纯白的像素点,它会因为实际使用硬件的不同,而产生的亮度也不同,它的最大亮度是经过了一系列的经验总结而得出的安全亮度范围。而在我们实际的生活中,光的亮度是没有所谓的上限一说的。一旦光的强度超出一定范围就会对我们人眼造成一定伤害。所谓的余忆童稚时,能张目对日这种年少轻狂的事我们现在肯定不会做,因为太阳的光强超过了我们人眼的安全范围, 要是长时间注目,只怕是得瞎。        上面说完了LDR下面我们来说说它的反面HDR——High Dynamic Range高动态范围。HDR是什么?HDR就是空间范围超越了0-1的那些颜色空间。我门为什么会需要HDR?这还用说吗,当然是为了表现那些更强更亮的东西了!还问这个问题上面那些图就白看了。但是目前来说我们面临两个问题,首先是超过0-1的范围我们怎么在只有LDR的屏幕空间显示。其次是我能怎么做才能让它超过0-1进入HDR的范围。其实这并不是什么难题,在shader中我们可以轻松的进入HDR的范围,但最终输出后我们需要重新映射到0-1的范围就是了。        为了使我们可以在屏幕上看到HDR的范围,我们必须做一步叫做tonemapping的色调映射的过程。它是一个非线性的变暗过程,这才让我们可以看到最初的HDR颜色。从感观上来说有点像从房间走到室外眼睛适应外面明亮场景的过程。但是我们的眼睛不一定可以全部适应,在一些太亮的场景里,我们的就无法看清楚场景。那么我们如何在LDR显示中表现这些现象呢?        这时候就该我们的Bloom出场了,Bloom的效果就是为了解决这种情况而存在的。Bloom实际上是一种使高亮度的像素向周围像素混合模糊的一个操作,实际上说简单点就是基于亮度做个模糊而已,我们通过模糊来表达那些高亮度颜色的光晕范围。        接下来该说具体实现了,怎么办,感觉写的好累,下次再写吧。所以我现在要无耻的在标题前面加个(一)。        



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3