Shader指令——RenderPath标签

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_35030499/article/details/82912461

博主只是简单了解,暂时没深入。这里是入门文章 

后续懂了再来修改文章

为什么有

Rendering Path其实指的就是渲染场景中光照的方式。

由于场景中的光源可能很多,甚至是动态的光源。

所以怎么在速度和效果上达到一个最好的结果确实很困难

首先我们先看这2个组件,肯定不陌生。

Shader参数

Tags{"LightMode" = "Always"}
Tags{"LightMode" = "ForwardBase"}
Tags{"LightMode" = "ForwardAdd"}
Tags{"LightMode" = "Deferred"}
Tags{"LightMode" = "ShadowCaster"}
Tags{"LightMode" = "PrepassBase"}
Tags{"LightMode" = "PrepassFinal"}
Tags{"LightMode" = "Vertex"}

Use Graphics Setting

默认,更新了算法?

Vertex Lit Rendering Path

顶点渲染模式

灯光只会在这里作用,节省性能.(因为顶点片元运算级别),物体只会渲染一次

Forward

较耗性能,绝大数引擎都含有的一种渲染方式,适合户外这种光源较少的场景

一个物体渲染2次,

第一次逐像素、灯光、顶点

第二次其他逐像素\灯光再渲染

Deferred

延迟处理,先放在GBuffer中。

Legacy Vertex Lit

Legacy Deferred (light Prepass)

记录

选择了Deferred时,优先选择deferred模式下的pass,如果找不到,则会选择forward模式下面的pass。

选择了Forward时,优先选择Forward模式下的pass,如果找不到,则会选择Vertex模式下面的pass。

Unity在一个时间只会执行一个渲染路径下的pass

附:

强烈建议看链接

RenderingPaths  Unity官方API

https://docs.unity3d.com/Manual/RenderingPaths.html

【原】实时渲染中常用的几种Rendering Path - 桑果 - 博客园

https://www.cnblogs.com/polobymulberry/p/5126892.html

【风宇冲】Unity3D教程宝典之Shader篇:第九讲Render Path_风宇冲_新浪博客

http://blog.sina.com.cn/s/blog_471132920101dfvh.html

猜你喜欢

转载自blog.csdn.net/qq_35030499/article/details/82912461