什么是后处理效果?

什么是后处理效果?这是我在 游戏架构 核心技术与面试精粹 看的 记录一下 后处理是啥 后处理 Post Process Effect 是一种对渲染之后的画面进行再加工的技术 针对每一个摄像机 在绘制到用户窗口之前 都有机会对整个画面进行二次夹工 再将装饰后的画面呈现给用户

大家好,我是讯享网,很高兴认识大家。

这是我在《游戏架构-核心技术与面试精粹》看的,记录一下~

后处理是啥?
后处理(Post-Process Effect)是一种对渲染之后的画面进行再加工的技术
针对每一个摄像机,在绘制到用户窗口之前,都有机会对整个画面进行二次夹工,再将装饰后的画面呈现给用户

后处理能方便地制作全局效果,也会带来性能消耗

通常覆盖全场景的想过,都会在摄像机上想办法实现
改变画面风格,通常使用后处理技术来实现

将摄像机照射出的内容渲染到一张图中,就是 RT(RenderTexture,渲染图)
将摄像机内容绘制到渲染图的过程被称为 RTT(Render to Texture)

unity中 RT 对应的就是RendererTexture 就对应的 RenderTexture
既可以动态创建内存中的RT,也可以在工程目录下创建一个RT资源
eg:
Create->RenderTexture 可以赋值到 Camera 的渲染目标(Render Target)上,运行游戏就可以看到图片内容被修改了


讯享网

渲染接口
unity中有专门编写后处理的专门接口
在任何继承自MonoBehaviour的子类中,都可以重写下面的函数来改变最终的渲染效果

Void OnRenderImage(RenderTextrue sourceTextrue, RenderTexture destTexture_ 

讯享网

每次程序渲染之前,都会调用这个函数
其中sourceTexture就是RT
可通过下面的接口函数直接渲染给destTexture,则就是默认的渲染方式

讯享网Graphics.Blit(sourceTexture, destTexture);//blit 位块传送 

也可以指定某个材质 renderMaterial 进行渲染,输出到 destTextrue 中

Graphics.Blit(sourceTexture, destTexture, renderMaterial); 

如果想实现某种效果,只需在对应 shader 中实现渲染算法即可

小讯
上一篇 2025-01-05 17:18
下一篇 2025-02-10 07:43

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/20009.html