shader 3 rendering path

渲染通道, 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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/289233.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《帝王三部曲》——二月河

前一段时间断断续续的在看二月河写的《帝王三部曲》中的《雍正王朝》。写的真棒!然后又迫不及待地去读远上搜索下载了三部曲全本,可惜,下载到现在一直未去看…… 生活总是这样,忙忙碌碌的……欲望太多。 希望自己以后做事情&#…

React Native之Props(属性)和State(状态)和简单样式简单使用

1 Props(属性)和State(状态)和简单样式简单使用App.js代码如下 /*** Sample React Native App* https://github.com/facebook/react-native** format* flow*/import React, {Component} from react; import {Platform, StyleSheet, Text, View, NativeModules, DeviceEvent…

解决SQL Server 2005数据库中datetime时间字段在前端显示时分秒的问题

SQL Server 2005中时间类型datetime的格式是“年月日时分秒”,直接读出来该字段,为了不让它在前端显示“时分秒”若是显示在dataGridView中,可以修改控件的某一列格式,如: dataGridView1.Columns[10].DefaultCellStyle.Format = "yyyy-MM-dd"; 但是要在listview…

config kubectl_Kubernetes(k8s)中文文档 kubectl config set-context_Kubernetes中文社区

译者:hurf在kubeconfig配置文件中设置一个环境项。摘要在kubeconfig配置文件中设置一个环境项。 如果指定了一个已存在的名字,将合并新字段并覆盖旧字段。kubectl config set-context NAME [--clustercluster_nickname] [--useruser_nickname] [--namesp…

Linux文件系统基础(1)

本文首发于http://oliveryang.net,转载时请包含原文或者作者网站链接。 1. 什么是文件系统 直接引用来自维基百科文件系统的定义, A file system is a set of abstract data types that are implemented for the storage, hierarchical organization, ma…

使用基于Roslyn的编译时AOP框架来解决.NET项目的代码复用问题

理想的代码优化方式团队日常协作中,自然而然的会出现很多重复代码,根据这些代码的种类,之前可能会以以下方式处理方式描述应用时可能产生的问题硬编码多数新手,或逐渐腐坏的项目会这么干,会直接复制之前实现的代码带来…

React Native之Flexbox布局和监测文本输入onChangeText

1 Flexbox布局 1) flexDirection 可以决定布局的主轴,子元素是应该沿着水平轴(row)方向排列,还是沿着竖直轴(column)方向排列 2) justifyContent 决定其子元素沿着次轴(与主轴垂直的轴,比如若主轴方向为row,则次轴方向为…

半年总结——欲戴王冠,必承其重

【Introduction】 每一个女生都梦想着作为一个女王。但是你仅仅看到了女王头上金闪闪的王冠,却不知道在这个王冠下。她是怎样成长的!假设你想要做到有女王一样的权利,就必需要承担一个女王应该做到的事情!——欲带王冠&#xff0c…

SQL日期时间格式自由转换大全

日期数据格式的处理,两个示例: CONVERT(varchar(16), 时间一, 20) 结果:2007-02-01 08:02/*时间一般为getdate()函数或数据表里的字段*/ CONVERT(varchar(10), 时间一, 23) 结果:2007-02-01 /*varchar(10)表示日期输出的格式,如果不够长会发生截取*/

一维数组和二维数组的区别_数组指针和指针数组的区别

数组指针和指针数组的区别 - hongcha_717 - 博客园​www.cnblogs.com数组指针(也称行指针)定义 int (*p)[n];()优先级高,首先说明p是一个指针,指向一个整型的一维数组,这个一维数组的长度是n,也可以说是p的…

mysql 配置多个数据库连接_总结MySQL修改最大连接数的两个方式

问题在使用MySQL数据库的时候,经常会遇到这么一个问题,就是“Can not connect to MySQL server. Too many connections”-mysql 1040错误,这是因为访问MySQL且还未释放的连接数目已经达到MySQL的上限。通常,mysql的最大连接数默认…

饿了么超级会员,年卡低至108元!饿了么会员,点外卖超省钱!

饿了么是大家常用的外卖平台,经常点外卖的朋友,充个饿了么超级吃货卡,还是能省不少钱的,今天给大家带来饿了么会员特价充值,会员秒到!饿了么超级会员特价充值月卡:原价15元,特价仅需…

React Native之内部方法常用几种写法和调用规则

1 简单部分代码 export default class App extends Component<Props> {render() {return (<View style{styles.container}><View style{styles.welcome}><Button onPress{this.showMsg}titleprees me showMsg/> <Button onPress{() > {this.sho…

阿里云欧洲数据中心开放运营:与沃达丰达成战略合作

摘要&#xff1a;近日&#xff0c;阿里云在德国宣布正式登陆欧洲市场&#xff0c;其位于欧洲的数据中心正式开放运营&#xff0c;同时与沃达丰达成战略合作&#xff0c;携手为欧洲提供云计算服务&#xff0c;并为中国企业进入欧洲市场提供互联网基础设施便利。 据悉&#xff0c…

C#ListView控件添加复选框并获取选中的数目

1、添加复选框:listView1.CheckBoxes = true; 2、选中listview并获取选中的数目: private void listView1_ItemChecked(object sender, ItemCheckedEventArgs e){e.Item.Selected = e.Item.Checked;m = listView1.CheckedItems.Count;label1.Text = "当前选中数:"…

MFS学习总结

MFS学习总结 MFS概述、特性和新版改进MFS 工作原理和设计架构MFS的安装、部署、配置MFS的高级特性MFS的性能测试MFS集群的维护MFS的常见问题和建议对策一、MFS概述、特性和新版改进 MooseFS是一个分布式存储的框架&#xff0c;其具有如下特性&#xff1a; Free(GPL)通用文件系统…

python打开csv文件乱码_python脚本解决csv文件用excel打开乱码

import os path csv文件路径 targetPath 转换编码保存路径 def getfiles(path): path_collection[] for dirpath,dirnames,filenames in os.walk(path): for file in filenames: fullpathos.path.join(dirpath,file) path_collection.append(fullpath) return path_collection…

Linux - 命令

1、查看目录下有什么文件/目录操作 > ls //list列出目录文件的信息 > ls -l //list -list 以“详细信息”查看目录文件 > ls -a //list -all查看目录“全部&#xff08;包括隐藏文件&…

c 编程 mysql结果集_使用mysql C语言API编写程序—MYSQL数据库查询操作(执行查询操作,获取查询结果的字段数,记录行数,...

//MYSQL_RES保存查询结构MYSQL_RES*result_ NULL;interror_code 0; //保存错误码charerror_info[1024] \0; //保存错误信息//对mysql数据库进行查询操作:charquery_sql[1024] "select * from db_name.table_name";//构建查询sql语句if(result_! NULL) //防止之前…

介绍一款受欢迎的.NET 开源UI库

概述今天要带大家了解的是一款WPF的开源控件库MahApps.Metro。MahApps.Metro是用于创建现代WPF应用程序的工具包&#xff0c;它许多开箱即用的好东西。目前支持的NET Framework 4.6.2及更高版本、.NET Core 3.1, .NET 5 and .NET 6 (on Windows)。官网学习文档地址&#xff1a;…