收藏  |   举报 2018-07-04 11:56   关注:39   回答:0

千锋广州Unity讲师分享如何对游戏进行屏幕后处理

已关闭 悬赏分:0
 千锋广州Unity讲师分享如何对游戏进行屏幕后处理

在用Unity开发制作人物模型和游戏环境时,经常要对它们的颜色进行简单的修正,比如调整亮度、饱和度、对比度等。那么对于Unity新人来说,如何才能快速完成这项工作呢?让千锋老师来告诉你。

  这项工作也被人称之为屏幕后处理,简单来说就是渲染流水线的最后阶段,对由整个场景生成的一张图片进行处理。比如HDR,运动模糊等等效果,通过屏幕空间的后处理,可以整体改变整个游戏的风格或者效果。



  所以,要进行屏幕后处理,我们需要两样东西,一个是用于渲染后处理效果的函数,而另一个是我们需要调用这个渲染的脚本,好在Unity为我们提供了相关的功能。

  1、OnRenderImage函数

  该函数在Unity中提供,该函数在所有渲染完成后才进行调用,也就是我们上文所说的生成了一张场景图片。RenderTexture表示的是渲染纹理,我们渲染物体并不是仅仅渲染在屏幕空间,也可以将物体渲染到特定纹理上,也就是RenderTexture。

  Source Texture就是我们渲染的场景图片,而DestTexture是目标渲染纹理。我们可以在这个函数中进行相关的后处理效果,使用带有后处理效果Shader的材质将场景内容重新渲染。

  2、脚本部分

  后处理脚本主要做的是两件事,第一件是获取需要的Shader ,生成材质,第二件是通过OnRenderImage使用材质处理屏幕效果。第一步具有一些普遍性,不管是什么后处理效果,都要有这一步相同的操作,所以我们将该步骤抽离出来,创建一个后处理效果的基类PostEffectbase即可。

由于文章篇幅有限,这里只是简单的介绍了下,如果想系统学习Unity开发技术,可以来千锋教育Unity游戏开发培训班。千锋Unity游戏开发培训课程深入教学的图形技术,讲解包括OpenGL渲染管线,着色器,高光计算、菲尼尔色散、雾方程式等高阶课程。对于从事过Unity游戏开发的人员也具有相当的学习价值。

更多广州千锋培训信息请点击官网:http://gz.mobiletrain.org/

培训咨询专线:020-22119207   400-654-7778

咨 询  QQ  : 1660794050

广州校区地址:广州市天河区元岗路310号智汇park创意园E座5层

(c)2008-2025 DESTOON B2B SYSTEM All Rights Reserved

服务热线:13032656577 ICP备案号:冀ICP备2023002840号-1