渲染通道, rendering path。 vertexlit, forward 和 Deferred lighting

旧有的非统一架构下: 分为顶点着色引擎和像素渲染通道

渲染通道是GPU负责给图像配色的专门通道; 越多,填充效率越高,流畅性越好。

http://wenwen.sogou.com/z/q103129905.htm

採用统一架构后, 渲染通道既负责顶点渲染又负责像素渲染。

GPU对于图像渲染时的逻辑并行运算数。

而不是物理数量。

http://blog.csdn.net/bugrunner/article/details/7436600

http://blog.csdn.net/xuehuic/article/details/8701341

from   http://unity3d.9ria.com/?p=563

怎样设置渲染通道:在Edit -> Project Setting -> Player中Inspector面板以下,三种公布类型里都有一个渲染通道的设置。

另外,每一个摄像机的Inspector面板中,也都有一个渲染通道Rendering Path的设置。

6.渲染通道与shader的关系。

Deferred Lighting通道类型不关心有多少个光源会影响它,每一个物体一般都会绘制两次。相似地。Vertex Lit 仅仅绘制一次。所以对于这两种类型来说,shader对表现效果的改变大多在于多重纹理方面。

Forward 通道类型的表现效果要取决于shader和场景中的光源。它有两种主要的计算方式Vertex-Lit 和 Pixel-Lit。能够翻译为逐顶点渲染法和逐像素渲染法吧应该,相应着D3D中的顶点着色和像素着色过程。

Vertex-Lit 用于对网格模型表面顶点进行光照计算。一次性将全部光源的影响都计算在内,所以不管场景中有多少个光源,这样的方式绘制的物体仅仅绘制一次。

Pixel-Lit 会计算每一个像素上面终于的光照,因此一个物体必须先呗绘制一次来获得环境光和主方向光的光照信息,再绘制一次来获得其它每一个额外的光源信息。应用Pixel-Lit的物体的大小也会影响绘制的效率。越大的物体,绘制越慢。

Vertex-Lit 的开销大于Pixel-Lit,可是Pixel-Lit能够提供非常多非常好的效果。

7.Unity3D中的shader是通过改变那些直接影响游戏对象的材质来使用的。

综上看, 手机游戏应该是forward通道:vertex+fragment  /  surface。  正向渲染。

最亮的几个光源使用像素光照。 最多4个点光源以住店渲染方式被计算, 其它以球面调和。

http://game.ceeger.com/Components/RenderTech-ForwardRendering.html

顶点照明渲染, vertex lit rendering path ;  与 vertex shader不一样。不同层次的概念。

forward/vertex lit渲染通道 都可能会使用vertex shader + frament shader

Unity会运行一个pass最先匹配上的; 优先选择light model最匹配的, 没有则选择次匹配的。 如。 假设相机为Deferred rendering path, subshader中无Deferred, 则使用forward。否则使用Vertex lit.; 以及会运行未指定light model的pass

shader 3 rendering path的更多相关文章

  1. Unity 的“Vertex Lit Rendering path“中 shader Pass 的注意事项

    "MADFINGER/Environment/Unlit (Supports Lightmap)"是 ShadowGun 示例中最简单的 shader 了,如下: // Unlit ...

  2. Unity shader学习之Forward Rendering Path

    Forward rendering path shader如下: // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObje ...

  3. 【原】实时渲染中常用的几种Rendering Path

    [原]实时渲染中常用的几种Rendering Path 本文转载请注明出处 —— polobymulberry-博客园 本文为我的图形学大作业的论文部分,介绍了一些Rendering Path,比较简 ...

  4. Thinking in Unity3D:渲染管线中的Rendering Path

      关于<Thinking in Unity3D> 笔者在研究和使用Unity3D的过程中,获得了一些Unity3D方面的信息,同时也感叹Unity3D设计之精妙.不得不说,笔者最近几年的 ...

  5. Rendering Path

    Rendering Path:渲染路径 设置:1.Player Setting,2.Camera(会覆盖PlayerSetting中的设置) 选择:根据渲染内容和目标平台来选择合适的Rendering ...

  6. Unity5 的新旧延迟渲染Deferred Lighting Rendering Path

    unity5 的render path ,比4的区别就是使用的新的deferred rendering,之前的4的deferred rendering(其实是light prepass)也被保留了下来 ...

  7. 前向渲染路径细节 Forward Rendering Path Details

    正向渲染路径细节 Forward Rendering Path Details Forward Rendering path renders each object in one or more pa ...

  8. 渲染路径-Unity5 的新旧推迟渲染Deferred Lighting Rendering Path

    Unity5 的新旧延迟渲染Deferred Lighting Rendering Path unity5 的render path ,比4的区别就是使用的新的deferred rendering,之 ...

  9. 正向渲染路径细节 Forward Rendering Path Details

    http://www.ceeger.com/Components/RenderTech-ForwardRendering.html This page describes details of For ...

随机推荐

  1. 【Docker构建私有仓库】

    Docker默认不允许非HTTPS方式推送镜像,我们可以通过Docker的配置选项来取消此限制: [root@fedora ~]# cat /etc/docker/daemon.json { &quo ...

  2. 紫书 习题 10-20 UVa 1648 (推公式)

    设一次上去a层,一次下去b层,有x次上去,有(n-x)次下去 则ax - (n-x)b >= 1 x >= (nb+1) / (a+b) 如果可以整除, x = (nb+1) / (a+b ...

  3. mysql中group by和order by混用 结果不是理想结果

    在使用mysql排序的时候会想到按照降序分组来获得一组数据,而使用order by往往得到的不是理想中的结果,那么怎么才能使用group by 和order by得到理想中的数据结果呢? 例如 有一个 ...

  4. 数据持久化-存取方式总结&应用沙盒&文件管理NSFileManager

    iOS应用数据存储的常用方式:  1.XML属性列表   (plist归档)  2.NSUserDefaults (偏好设置)  3.NSKeyedArchiver  归档(加密形式)  4.SQLi ...

  5. 【hdu 1429】胜利大逃亡(续)

    [Link]: [Description] 给你一个n*m的格子; 里面有钥匙,以及钥匙能开的门; 以及墙,以及起点,以及出口; 问你从起点出发,到出口的话,能不能在t时间内到; [Solution] ...

  6. MySQL架构组成之逻辑模块组成

    MySQL 能够看成是二层架构   第一层SQL Layer.包含权限推断.sql 解析.运行计划优化,query cache 的处理等等.   第二层存储引擎层(Storage Engine Lay ...

  7. matlab中tic和toc使用方法

    tic和toc用来记录matlab命令运行的时间.  tic用来保存当前时间,而后使用toc来记录程序完毕时间. 两者往往结合使用,使用方法例如以下: 程序代码: tic  operations  t ...

  8. Flat UI简介

    Flat UI简介 一.简介 Flat UI是基于Bootstrap之上进行二次开发的扁平化前端框架,他提供了动感.时尚的风格色调搭配,简洁.炫丽的功能组件,同时还提供了更为平滑的js交互动画,可以称 ...

  9. js中的this详解

    在web前端开发中,javascript中的this和其他的JAVA,C#等大型语言一样,是一个重要概念.但是要注意的是,在javascript中,由于 javascript的动态性,this的指向在 ...

  10. Linux下关机命令的区别 (halt,poweroff,reboot,shutdown,init)

    1.shutdown shutdown命令安全地将系统关机.    而在系统关机前使用shutdown命令﹐系统管理员会通知所有登录的用户系统将要关闭.并且login指令会被冻结﹐即新的用户不能再登录 ...