《Genesis-3D游戏引擎系列教程-进阶篇》12:后期效果

原创
2014/01/23 13:09
阅读数 164

注:本系列进阶教程仅针对引擎编辑器:v1.2.2及以下版本

后处理一:模糊效果

资源下载  工程文件

这是一个简单的后处理helloworld,利用一个简单的游戏场景演示了多种后处理方法,包括背景四角变色效果处理,模糊处理,噪点处理,颜色过滤处理,锐化处理,景深处理,全屏反光处理,太阳光处理。全面帮助用户学习如何在Genesis-3D编辑器中对游戏场景进行后处理。

1.创建工程PostEffects_machine,勾选PostEffects资源包:

创建完成后要保存场景。

2.制作一个简单的场景。这里我们从外界导入一个场景资源"机械城",并把它拖到场景中。具体步骤为:

(1)将机械城所有资源文件复制到路径…\GenesisProjects\PostEffects_machine\Asset下:

(2)等待导入,因为资源较多,所以需要的导入时间较长,请耐心等待:

(3)导入完成后Asset资源栏中如图所示,除了创建工程时导入的PostEffects资源包,还有刚刚导入的所以机械城所需的资源。找到MainScene.FBX,将其拖到场景中:

3.在整个场景中选取一个合适的观察点,并把它调整到相机视野中。点击"游戏",查看当前场景效果:

4.点击Asset—>PostEffects查看资源目录,可以看到多种后处理效果(C#脚本文件),以及各自对应的Shader文件:

接下来我们依次介绍8种后处理效果:

5.后处理一:模糊效果

(1) 将C#Blur脚本文件挂载到相机,右侧脚本窗体显示如下:

(2) 保存该场景,命名为PostEffects_machine:

(3) 新建一个场景,在新场景中拖入同样的场景资源"机械城",选取一个合适的观察点,并把它调整到相机视野中:

(4) 创建一个材质:

(5) 将材质拖到场景中的相机上面,可以看到右侧资源栏如图所示:

(6)点击Shader栏最右侧的小三角符号,按照下图所示,选择对应的Shader:

可以看到预览效果:

(7) 保存该场景,命名为PostEffects_machine_shader:

(8) 重新打开之前的场景PostEffects_machine, 点击"游戏"查看运行效果,与之前的清晰效果相比,可以看到视野中的机械城已经添加了模糊处理:

(9) 用户还可以根据需求在相机的脚本栏中对各参数进行调整,达到不同的效果。参数说明如下:

        name :Blur ->模糊

        param :BlurSpread -> 采样间隔 (调大会更模糊,过大会导致分散)

        param :Iteration -> 采样迭代次数 (调大会更模糊,过大会导致分散,调太多影响效率)

        各参数默认值如下:

         按下图所示调整参数:

         下图为调大采样间隔后的效果图,可以看出此图比之前的模糊效果图更加模糊:

(10)效果的消除。我们还可以通过移除脚本文件来消除之前添加的处理效果:


后处理二:噪点效果

基本步骤同于模糊后处理,但是有几处不同:

(1)PostEffects_machine场景中给相机添加的脚本文件变为C#ColoredNoise:

(2) PostEffects_machine_shader场景中材质中选择的Shader文件也有所不同,这里我们选中ColoredNoise.wjshader:

(3)重新打开PostEffects_machine场景,点击游戏,效果图如下。与之前的清晰效果相比,可以看到视野中的机械城已经添加了噪点处理:

(4) 修改脚本窗口中各项参数,可以调整不同的噪点效果。参数说明如下:

        name :ColoredNoise ->噪点效果

        param :NoiseDelta -> 噪点每变换一次的时间

        param :NoiseMap -> 噪点图路径,可替换为自己的噪点图,比如搞成黑白的噪点

        param :NoiseSize -> 噪点图采样比例,控制噪点图重复采样次数

        WaterSpecColor: param :NoiseStrength -> 噪点的强弱

        各参数默认值如下:

        按下图所示调整参数:

        修改参数后效果图如下。可以看出该图中噪点重复采样次数增加,噪点变强:


后处理三:四角变色效果

基本步骤同于模糊后处理,但是有几处不同:

(1)PostEffects_machine场景中给相机添加的脚本文件变为C#BlackRound:

(2) PostEffects_machine_shader场景中材质中选择的Shader文件也有所不同,这里我们选中BlackRound.wjshader:

(3)重新打开PostEffects_machine场景,点击游戏,效果图如下。与之前的清晰效果相比,可以看到视野中的机械城已经添加了四角变色效果处理,默认颜色为黑色:

(4)修改脚本窗口中各项参数,可以调整不同的变色效果。参数说明如下:

        name :BlackRound ->四角变色效果

        param :Strength -> 四角的范围

        param :Color -> 角变成的颜色

        各参数默认值如下:

        按下图所示调整参数。可以通过设置Color的数值来更改颜色:

        可以看出,该图四角变色的颜色变成了蓝绿色:

        可以通过设置Strength的数值来更改变色的强度:

        可以看出,该图四角变色强度减弱:


后处理四:锐化效果

基本步骤同于模糊后处理,但是有几处不同:

(1)PostEffects_machine场景中给相机添加的脚本文件变为C#ContrastEnhance:

(2) PostEffects_machine_shader场景中材质中选择的Shader文件也有所不同,这里我们选中ContractComposite.wjshader:

(3)重新打开PostEffects_machine场景,点击游戏,效果图如下。与之前的清晰效果相比,可以看到视野中的机械城已经被锐化:

(4)修改脚本窗口中各项参数,可以调整不同的锐化效果。参数说明如下:

        name :ContrastEnhance -> 锐化

        param :BlurSpread -> 采样间隔

        param :Intensity -> 颜色强度对比

        param :Threshhold -> 变强的颜色阀值

        各参数默认值如下:

        按下图所示调整参数:

        修改参数后效果图如下。可以看出改图采样间隔变大,颜色强度增强:


后处理五:景深效果

基本步骤同于模糊后处理,但是有几处不同:

(1)PostEffects_machine场景中给相机添加的脚本文件变为C#DepthOfFeild:

(2) PostEffects_machine_shader场景中材质中选择的Shader文件也有所不同,这里我们选中DepthOfFeild.wjshader:

(3)重新打开PostEffects_machine场景,点击游戏,效果图如下。与之前的清晰效果相比,可以看到视野中的机械城已经添加了景深处理:

(4) 修改相机脚本窗口中各项参数,可以调整不同的景深效果。参数说明如下:

        name DepthOfFeild -> 景深 (离焦点越远越模糊)

        param :m_FocalDistance -> 焦点离相机的距离

        param :m_HyperfocalDistance -> 控制离焦点多远开始模糊

        各参数默认值如下:

        按下图所示调整参数:

        修改参数后效果图如下。可以看出该图中焦点离相机距离变远:


后处理六:颜色过滤效果

基本步骤同于模糊后处理,但是有几处不同:

(1)PostEffects_machine场景中给相机添加的脚本文件变为C#ColorFilter:

(2) PostEffects_machine_shader场景中材质中选择的Shader文件也有所不同,这里我们选中ColorFilter.wjshader:

(3)重新打开PostEffects_machine场景,点击游戏,效果图如下。与之前的清晰效果相比,可以看到视野中的机械城已经添加了颜色过滤效果:

(4) 修改脚本窗口中各项参数,可以调整不同的噪点效果。参数说明如下:

        name :ColorFilter ->颜色过滤

        param :Brightness -> 亮度

        param :contrast -> 亮度对比度

        param :Saturation -> 颜色对比度

        各参数默认值如下:

        按下图所示调整参数:

        修改参数后效果图如下。可以看出该图亮度增加,颜色对比度也增加:


后处理七:全屏泛光效果

基本步骤同于模糊后处理,但是有几处不同:

(1)PostEffects_machine场景中给相机添加的脚本文件变为C#Glow:

(2) PostEffects_machine_shader场景中材质中选择的Shader文件也有所不同,这里我们选中Glow.wjshader:

(3)重新打开PostEffects_machine场景,点击游戏,效果图如下。与之前的清晰效果相比,可以看到视野中的机械城已经添加了全屏泛光效果:

(4) 修改相机的脚本窗口中各项参数,可以调整不同的全屏泛光效果。参数说明如下:

        name Glow -> 全屏泛光

        param :BlurSpread -> 采样间隔

        param :BlurIteration -> 采样次数

        param :Threshhold -> 泛光强度

        各参数默认值如下:

        按下图所示调整参数:

        修改参数后效果图如下。可以看出该图中可以看出该图泛光强度增强:


后处理八:太阳光效果

基本步骤同于模糊后处理,但是有几处不同:

(1)PostEffects_machine场景中给相机添加的脚本文件变为C#SunShaft:

(2) PostEffects_machine_shader场景中材质中选择的Shader文件也有所不同,这里我们选中SunShaft.wjshader:

(3)重新打开PostEffects_machine场景,点击游戏,效果图如下。与之前的清晰效果相比,可以看到视野中的机械城已经添加了太阳光处理。但是默认下阳光效果不明显:

(4) 修改脚本窗口中各项参数,可以调整不同的太阳光效果。参数说明如下:

        name SunShaft -> 太阳光(体积光)

        param :Length -> 控制阳光光线长度

        param :SunColor -> 太阳光颜色/p>

        param :SunPos -> 太阳位置

        各参数默认值如下:

        按下图所示调整参数:

        修改参数后效果图如下。可以看出该图中阳光光线长度变长,颜色变为紫色,太阳的位置也发生了改变:



引擎官方网站:http://www.genesis-3d.com.cn/

官方论坛:http://bbs.9tech.cn/genesis-3d/

官方千人大群:59113309   135439306

YY频道-游戏开发大讲堂(完全免费,定期开课):51735288 

Genesis-3D开源游戏引擎:游戏起源,皆因有我!!!


展开阅读全文
打赏
0
3 收藏
分享
加载中
更多评论
打赏
0 评论
3 收藏
0
分享
返回顶部
顶部