unity渲染路径
(1) deferred shading:有最佳的光照和阴影效果,在场景中存在许多的实时光照时,使用deferred shading也是最佳的方案,之所以叫做deferred(延迟),是因为shading的时机不是发生在第一个Pass的顶点/片元函数内,而是存在延迟,直到第二Pass的时候才执行,每个光源都是逐像素光照。
缺点:不能真正的支持抗锯齿以及半透明物体,也不支持MeshRenderer组件的ReceiveShadow功能,最多使用四个cullingmask
延迟渲染第一个pass不进行真正的光照计算,仅仅把光照计算需要的信息存储到G-Buffer中,第二个pass利用G-Buffer中的信息进行真正的光照计算。延迟渲染的效率不依赖于场景的复杂度,而是根据屏幕空间的大小相关。
(2) Forward Renderer Path:作用在每个物体上一定数量最亮的光(一般4个)逐像素,而后四个逐顶点,剩余的SH计算。(渲染模式时important的逐像素,notImportant逐顶点或SH)
缺点:当场景包含大量的实时光源时,前向路径的性能就会急剧下降 。假设场景中有N个物体,每个物体受到M个光源的影响,那么要渲染整个场景,就需要N*M个pass,因此,如果逐像素光照比较多,那么pass就会很大。而每执行一个pass,就需要重新渲染一遍物体,有很多计算是重复的。
分为BasePass:会计算环境光,最重要的平行光,逐顶点/SH光源和Lightmaps。
AdditionalPass:会计算额外的逐像素光源,每个pass对应一个光源。
unity渲染路径的更多相关文章
- [Unity Shader笔记]渲染路径--Forward渲染路径
		
[Unity Shader笔记]渲染路径--Forward渲染路径 (2014-04-22 20:08:25) 转载▼ 标签: shader unity renderingpath forward 游 ...
 - Unity Lighting - Choosing a Rendering Path 选择渲染路径(三)
		
Choosing a Rendering Path 选择渲染路径 Unity supports a number of rendering techniques, or ‘paths’. An i ...
 - Unity渲染优化中文翻译(二)——CPU的优化策略
		
紧接上一篇文章,继续渲染的优化问题,若有错误,请指出,让我也学习进步,谢谢. 如果游戏渲染问题来自CPU 概括的来说,CPU在一帧的渲染中的工作可以分为三个部分: . 决定谁需要被渲染 . 为GPU准 ...
 - Unity3D光照前置知识——Rendering Paths(渲染路径)及LightMode(光照模式)译解
		
简述 Unity supports different Rendering Paths. You should choose which one you use depending on your g ...
 - RenderingPath 渲染路径
		
http://blog.csdn.net/lichaoguan/article/details/42554821 RenderingPath 渲染路径 Deferred Lighting 延时光照 延 ...
 - 渲染路径-Deferred Lighting 延时光照
		
http://blog.csdn.net/heyuchang666/article/details/51564954 注意: 最后3个步骤注意下 延时光照是有着最高保真度的光照和阴影的渲染路径.如果你 ...
 - 渲染路径-u3d渲染路径比较
		
Unity支持不同的渲染路径.应具体取决于你的游戏内容和目标平台/硬件来选择使用哪一个.不同的渲染路径有不同的特点和性能特点,主要影响灯光和阴影. 项目所使用的渲染路径在Player S ...
 - shader实例(八)渲染路径RenderingPath
		
Unity的摄像机上支持3种RenderingPath,分别是VertexLit,Forward和Dferred Lighting,而shader中的LightMode标签Vertex,Forward ...
 - Unity 渲染教程(四):第一个光源
		
将法线从物体空间转换到世界空间. 使用方向光. 计算漫反射和镜面高光反射. 实现能量守恒. 使用金属的工作流程. 利用Unity的基于物理规则渲染的算法. 这是关于渲染基础的系列教程的第四部分.前面的 ...
 
随机推荐
- Delphi中Chrome Chromium、Cef3学习笔记(五)
			
原文 http://blog.csdn.net/xtfnpgy/article/details/48489489 一.模拟移动鼠标 // SetCursorPos(StrToInt(Edit ...
 - Word2vec教程
			
Word2vec Tutorial RADIM ŘEHŮŘEK 2014-02-02GENSIM, PROGRAMMING157 COMMENTS I never got round to writi ...
 - thymeleaf标签必须由匹配的结束标记终止
			
问题描述 springboot使用Thymeleaf标签时会报元素类型必须由匹配的结果标记终止. 如下所示 如果我们一个个的给这些元素后面加上终止标记也是件很麻烦的事~~~~ 解决办法 方法一: 在p ...
 - 用word发布CSDN文章
			
目前大部分的博客作者在用Word写博客这件事情上都会遇到以下3个痛点: 1.所有博客平台关闭了文档发布接口,用户无法使用Word,Windows Live Writer等工具来发布博客.使用Word写 ...
 - 基于maven来Spring MVC的环境搭建遇到“坑”
			
1.注解配置路径问题: 在web.xml中配置spring mvc 路径时, 应该配置如下:classpath:classpath:spring-* 2.jdk版本和Spring MVC版本不一致问题 ...
 - Mybatis的学习1
			
ORM 关系数据库需要按对象来处理,出现ORM设置,列对应类的属性,行对应对应类的实例,也就是每一行对应一个新的实例,对应类是需要实现序列化(implements Serializable - im ...
 - LinkedHashMap 根据PUT顺序排序Map
			
最近工程里面报表需要合计 , 因为所有的项都是动态的,所以只能动态添加. 思路是使用Map,初始化所有Map,然后在Map中合计并且覆盖. 使用HashMap , 初始化后所有动态项的顺序都乱了. M ...
 - C# File API
			
[C# File API] 1.System.IO.File Provides static methods for the creation, copying, deletion, moving, ...
 - dubbo协议报文格式
 - Gulp教程之:Gulp能做什么,前端装逼为何要用它
			
我们先说说 平时web开发遇到的一些场景 和 苦恼无奈的情况: JavaScript和CSS的版本问题 我们都知道 JavaScript和CSS属于静态文件,如果地址不变,浏览器会缓存这些文件,那就意 ...