Unity5.0标准着色器详解:基于物理的硬质表面渲染
需积分: 12 77 浏览量
更新于2024-07-21
5
收藏 2.06MB PDF 举报
"Unity5.0 Shader学习烘焙.pdf"
Unity5.0引入了一种新的Shader,被称为标准着色器(Standard Shader),它基于物理的着色(Physical-Based Shading,简称PBS)理念,旨在模拟真实世界中物体表面的反射、散射等特性,尤其适合硬质表面的渲染。标准着色器提供了丰富的材质参数,让开发者能够更精确地控制物体的外观。
标准着色器的主要贴图包括:
1. Albedo贴图:定义物体的颜色和主体颜色,可以包含纹理信息。
2. Metallic贴图:表示物体的金属属性,0表示非金属,1表示金属。
3. Smoothness贴图:控制物体表面的平滑程度,影响镜面高光的大小和形状。
4. Normal Map:法线贴图,用于模拟物体表面的微小凹凸,增加细节感。
5. Height Map:高度贴图,常用于实现地形或表面的高度变化。
6. Occlusion贴图:闭塞贴图,用于表示物体表面的遮挡情况,影响全局光照。
7. Emission贴图:自发光贴图,让物体自身发出光线。
标准着色器支持四种渲染方式:
1. 不透明(Opaque):完全不透明的物体。
2. 剪切透明(Cutout):通过alpha阈值实现部分透明。
3. 滤色透明(Fade):逐渐透明,常用于半透明物体。
4. 透明(Transparent):完全透明,如玻璃或水面。
在项目结构中,全局光照系统是提升场景真实感的关键部分:
1. 环境照明(Environmental Lighting):由天空盒子、颜色梯度、环境强度等组成,影响场景的整体光照。
2. 实时GI(Realtime Global Illumination):实时计算光照,提供更快响应但消耗更多CPU资源。
3. 烘焙GI(Baked Global Illumination):预计算光照信息并存储在光照贴图中,适用于静态物体,降低运行时性能开销。
4. 公共设置:包括天空盒子选择、反射属性、烘焙分辨率等。
环境光照的一些关键参数包括:
1. 反射属性:可以选择天空盒子或自定义CubeMap作为反射源,并调整反射强度。
2. 环境强度:影响天空盒子对环境的影响程度。
3. 烘焙分辨率:根据模型大小设定,过高会占用大量内存,过低则可能导致光照质量下降。
对于烘焙GI,有BackPadding用于防止烘焙时因模型边缘贴图不连续导致的问题,Compressed选项可节省空间,但可能牺牲精度。AmbientOcclusion闭塞阴影若开启,需谨慎处理,以免影响光影效果。
Unity5.0的标准着色器和全局光照系统为开发者提供了强大的工具,能够创建出更加逼真的游戏和应用场景。理解并熟练运用这些概念和参数,将有助于提高项目的视觉质量和性能效率。
2021-03-27 上传
2012-04-20 上传
2024-06-15 上传
2017-07-11 上传
2021-04-20 上传
2022-11-16 上传
2022-01-05 上传
点击了解资源详情
点击了解资源详情
小白WEB
- 粉丝: 4
- 资源: 11
最新资源
- Front-End:从设计创建应用
- node影视小型项目.zip
- gghalves:ggplot2中的:scissors:简单的半几何
- CODE.rar_.net编程_Visual_Basic_
- SBDrv.zip
- Crocos-开源
- Ugly Email-crx插件
- Journal_bearing_varying_LD_ratio.rar_matlab例程_matlab_
- anicon:R markdown和Shiny应用程序的动画图标
- 提供用于MVP架构的抽象组件的AbstractMvpa库-Android开发
- syn3h-player
- Jia_et_al_Microorganisms_2020:以下是与本文相关的脚本:比较由Xiu Jia,Francisco Dini-Andreote和JoanaFalcãoSalles撰写的基于DNA和RNA数据的装配过程对控制细菌群落演替的影响。
- vue+node的全栈项目.zip
- Building-a-JavaScript-Development-Environment:复习课程{从头开始一个新JavaScript项目是压倒性的。 本课程提供一本剧本,概述您需要制定的关键决策。 建立一个强大的开发环境来处理捆绑,整理,转换,测试等等。 }
- FDBeye:用于眼动仪工作流程的R工具
- wave-crx插件