笔者介绍:姜雪伟,IT公司技术合伙人,IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,国家专利发明人;已出版书籍:《手把手教你架构3D游戏引擎》电子工业出版社和《Unity3D实战核心技术详解》电子工业出版社等。
CSDN课程视频网址:http://edu.csdn.net/lecturer/144
后处理是游戏场景渲染的重要一环,利用这节给读者介绍运用于场景中的后处理渲染效果,后处理效果也是体现GPU强大的处理能力。最常用的后处理效果渲染:Bloom渲染、Blur渲染、HDR渲染等被称为后处理渲染。Bloom渲染又称为全屏泛光,后处理渲染在端游里应用的最广泛,通俗的讲就是场景首先经过CPU处理后,是每帧处理后再通过GPU在原有渲染的基础上再渲染一遍,最后将其在屏幕上显示出来的过程称为后处理渲染。实现方式新建一个文本文件把扩展名改成.fx。在编写Shader文件之前先讲一下Bloom实现原理主要分为4步:
1、提取原场景贴图中的亮色;
2、针对提取贴图进行横向Blur模糊;
3、在横向模糊基础上进行纵向Blur模糊;
4、所得贴图与原场景贴图叠加得最终效果图。
根据这4个步骤,开始着手编写Shader代码,还是新建一个文本文件将扩展名命名为fx。对应的Shader完整代码如下所示:
texture texSource;
texture texScene;
struct VS_INPUT
{
float4 pos : POSITION;
float2 uv : TEXCOORD0;
};
struct VS_OUTPUT
{
float4 pos : POSITION;
float2 uv : TEXCOORD0;
};
VS_