Unity渲染管线详解
1.UnityBuild-in渲染管线
当双摄像机的时候,注意Camera中的Clear Flags 和 Depth。
其中Clear Flags在摄像机在渲染时,会进行清屏的操作。选择skybox是除了天空盒都会被清除。
Depth数值越小越先被渲染。
层级剔除:culing mask选择被剔除的层级
2.渲染队列
RenderQueue 越小越先被渲染。
不透明队列(RenderQueue < 2500) RenderQueue相同,按摄像机从前到后渲染。
半透明队列(RenderQueue > 2500) RenderQueue相同,按摄像机从后到前渲染。
3.CPU打包数据传GPU
SetPass Call:设置渲染状态(让GPU知道使用哪个shader,混合模式,背面剔除等)
Draw Call:让GPU知道使用哪个模型数据
顶点shader最基本要完成:将顶点坐标转换到裁剪空间(2x2x1的长方体cvv),投影成像。
片段shader:输出颜色值
GPU阶段:
背面剔除阶段:三角形的索引顺序是顺时针就是背面。逆时针是正面。
4.片元shader
纹理技术:
1.纹理采样,纹理在计算机中就是数组的形式。eg:(纹理坐标u,v) = (0.5,0.5),那对应32x32的纹理就是:x = 32 * 0.5,y = 32*0.5(真实不是这样,简单这样理解)。纹理坐标是在建模软件中展uv得到。
当x = 0.4*32时就是12.8 如果采用4舍5入就可能会产生失真(明显锯齿状)解决看下方纹理过滤机制。
2.纹理过滤机制:在Unity中Point就是4舍5入的方式,双线性插值,三线性插值。
3.Mipmap:勾选即可Generate Mip Maps就可。
4.纹理寻址模式
5.纹理压缩格式
光照计算
光照分析:直接光漫反射(eg:phong光照模型)+直接光镜面反射(eg:GGX高光方程)+间接光漫反射(eg:球谐SH)+间接光镜面反射(eg:反射球,ibl技术)+More(更多的光照技术eg:环境遮挡AO,SSR屏幕空间反射,SSS次表面散射)。
5.输出合并
处理遮挡关系,处理半透明混合。Unity中有Z-Buffer和color-Buffer,Zwrite关闭了深度写入的物体不会被写入到Z-buffer中,但会被写入到color-Buffer中。
提前深度测试:Early-Z,在顶点着色器后发生。(是否支持与硬件有关)
混合:从后到前,关闭Zwrite。控制公式:
Unity渲染管线详解相关推荐
- Unity——RectTransform详解
Unity--RectTransform详解 目录 1.Anchor(Min,Max) 2.绝对与相对布局 3.Pivot 4.Offset(Min,Max) 5.SizeDelta 6.rect 7 ...
- Unity 灯光系统详解
Unity 灯光系统详解 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人! (拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心分享. ...
- Unity快捷键详解
Unity快捷键详解 -- -- 目录: 一:常用快捷键 二:快捷键(官方文档) 三:快捷键查看及相关操作(编辑器) 四:全局快捷键和上下文快捷键 -- -- 一:常用快捷键 补充:Ctrl+Shif ...
- [专栏精选]Unity刚体详解
本文节选自洪流学堂公众号专栏<郑洪智的Unity2018课>,未经允许不可转载. 洪流学堂公众号回复专栏,查看更多专栏文章. 洪流学堂,让你快人几步.你好,我是郑洪智. 从这节课开始,我会 ...
- Unity API详解——Application类
Unity对API的合理利用不仅可以减轻编码负担,而且往往可以提高程序的运行效率,尽管官方给出了较为丰富的API文档,然而这并不能满足实际开发的需要,因为官方给出的API解释往往只描述相应的API的主 ...
- Unity超详解如何获取学生版许可证,激活许可证
首先说明,本文是针对学生人士以及已经下载过unity hub的人士,还未下载的可以去官网下载unity hub哟. 在线许可证激活 - Unity 手册学习心强的可以进入这个网站学习一些关于unity ...
- Unity DrawCall详解
在实际项目开发中,提起unity优化,肯定是有DrawCall的相关内容的,下面就讲解一下什么是DrawCall以及如何对DrawCall进行优化操作. 一.什么是DrawCall? 在unity中, ...
- Unity有限状态机详解
这阵子用到了有限状态机,于是花了一段时间研究了一下.在这里我会详细的讲解有限状态机的原理以及如何编写一个有限状态机. 有限状态机算是Unity开发中一个比较重要的技巧了.那什么什么是有限状态机呢?在游 ...
- Unity Ugui 详解 Content Size Fitter 和 Horizontal Layout Group 的使用
如果你希望 一个组件的宽高 可以被 里面的内容撑开 宽高自动改变大小 那么就用 Content Size Fitter 当你设置为PreferredSize的时候 会发现 你的width 或者 hei ...
- Unity粒子系统详解
接下来的图片就是Unity2017.1.0f3 编辑器中的粒子系统模块. 了解粒子系统,必须先了解每一个属性都代表了什么,之后才能根据这些原理来调整出自己满意的效果. 主面板ParticleSyste ...
最新文章
- 在idea中为类和方法自动生成注释
- 面试官问:跨域请求如何携带cookie?
- Unity3D的几种坐标系
- Windows phone 7应用之代码性能分析工具——Profile.
- 基于Session的认证方式_创建工程_准备一个springmvc的工程_Spring Security OAuth2.0认证授权---springcloud工作笔记115
- 知识图谱:刻画事物关系,沉淀领域知识!
- 【Oracle学习笔记】索引
- 卸载不了mysql2008_你还在为无法完美卸载SQL Server 2008 R2而烦恼吗?
- BCD码与十进制转换
- 如何使用Github实现协同工作(例子:两人合作写代码)
- [ZT]狄马:老子与美国南北战争
- 网络原理之TCP协议特性
- 软件定义的网络(中)
- 硬链接、软链接、ln命令
- 【转载】WIN10应用商店,Edge浏览器闪退打不开,开始菜单打不开,安全中心打开变空白
- 启动kibana报错:Elasticsearch cluster did not respond with license information
- 服务注册与发现(上)
- screw (螺丝钉) 数据库表结构文档生成工具(转发)
- 机器自动翻译古文拼音 - 将进酒拼音版本,译文拼音版本
- 悟空CRM java版(基于jfinal+vue+ElementUI的前后端分离CRM系统)
热门文章
- 名编辑电子杂志大师教程 | 文本复制按钮
- 语法分析:自下而上分析
- 天正lisp文件夹_CAD使用一个LISP文件,实现自动加载菜单和程序集
- 众多时间时钟Flash动画素材一键即可获取
- 四级信息安全工程师基础知识
- 如何对PDF文件的文字图片编辑修改
- translator什么意思中文_translator是什么意思|translator的音标|translator的用法 - 英语词典...
- 史上最全的互联网思维精髓总结
- 计算机多系统启动光盘制作,制作启动光盘,小编教你如何制作光盘启动盘
- 盲盒商城源码|盲盒商城app开发的模式玩法、功能以及开发流程介绍,多套盲盒源码现成案例。让您在了解盲盒项目开发中少走弯路,少踩坑。