UnityPBR介绍及经验分享课件_第1页
UnityPBR介绍及经验分享课件_第2页
UnityPBR介绍及经验分享课件_第3页
UnityPBR介绍及经验分享课件_第4页
UnityPBR介绍及经验分享课件_第5页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

UnityPBR介绍及经验分享UnityPBR介绍及经验分享1OutlinePBR使用背景知识介绍StandardShader代码分析使用经验及优化分享OutlinePBR使用背景知识介绍2Background讨论的实质上是PhysicallyBasedShading核心:材质在真实物理环境下的反应不考虑GI/AO/Light/Sun等Background讨论的实质上是PhysicallyBa3Background-Concepts漫反射(Diffusion)&反射(Reflection)金属(导电材料)&非金属(绝缘体)能量守恒材质不会比入射光更亮菲涅尔(Fresnel)Background-Concepts漫反射(Diffusi4Background常见误区用了PBR我们的画面就会变强PBR只能用于真实感游戏PBR非常消耗性能转PBR是很简单的一个事情技术只要提供一个Shader就行了第三方软件里的就是最终效果Background常见误区5Background-Advantages优势表达能力强,避免Shader爆炸+合并DC能量守恒,在不同条件下都正确项目内不同场景环境下复用,甚至项目间复用资源Background-Advantages优势6Background-Advantages优势IBL提供间接光照,最大限度模拟真实环境下光照条件让美术更容易制作金属感美术的职责划分感性=>理性只需要确保正确,不再需要对好看负责制作流程进一步拆分,建模/贴图/灯光职责清晰,风格统一Background-Advantages优势7Background-PBRvs.Non-PBRBackground-PBRvs.Non-PBR8Background-ReferencesBasicTheoryofPhysically-basedrenderingPhysicallyBasedShadinginUnitySIGGRAPH2010Course:Physically-BasedShadingModelsinFilmandGameProductionSébastienLagardePBR除了工作流,还有什么优势?HowtoMakePhotorealisticPBRMaterialsBackground-ReferencesBasicThe9StandardShaderhttps:///get-unity/download/archivebuiltin_shaders-5.5.0f3StandardShaderhttps://unity3d10StandardShader-FilesDefaultResourcesExtra/Standard.shaderCGIncludes/UnityStandardCore*.cgincForward管线StandardSimple为例禁用_PARALLAXMAP/DIRLIGHTMAP_COMBINED/DIRLIGHTMAP_SEPARATEStandardShader-FilesDefaultRe11StandardShadershader_feature切换功能ForwardBasePass平行光/自发光/lightmap/…ForwardAddPass额外光源一次一个StandardShadershader_feature切12StandardShaderStandardShaderGUI.cs根据UI切换参数StandardShaderStandardShaderG13StandardShader-Vert77-79初始化81-85世界空间/裁剪空间坐标88-92世界空间法线/视线94-100切空间109-112PBR预计算项Vert输出值将插值后传入Frag常见Shader优化技巧StandardShader-Vert77-79初始化14StandardShader-FragMainLightSimple获取主光源颜色/方向ndotl法向量和光源方向点积SHADOW_ATTENUATION接受阴影OcclusionOCC贴图FragmentGI全局光照UNITY_APPLY_FOG硬件雾StandardShader-FragMainLightS15StandardShader-UNITY_SETUP_BRDF_INPUTMetallic工作流输入:金属度+光滑度specColor=lerp(DielectricSpec,albedo,metallic)diffColor=albedo*lerp(1-DielectricSpec,0,metallic))Specular工作流输入:高光颜色+光滑度diffColor=albedo*(1-SpecularStrength(specColor))能量守恒金属specColor大,diffColor小非金属反之StandardShader-UNITY_SETUP_BR16StandardShader-FragmentGI250-261设置变量光照贴图或环境光263-274ReflectionProbeGPUGems3Chap.19IBLSphere无穷远Box本地校正UnityGlobalIlluminationGI核心函数StandardShader-FragmentGI250-17StandardShader-UnityGlobalGIUnityGI_BaseShadeSHPerPixel即LightProbeLightmap读取光照贴图颜色额外处理Directional实时光照贴图UnityGI_IndirectSpecularBox需要矫正反射方向根据粗糙度取mipmapStandardShader-UnityGlobalGIU18StandardShader-BRDFBRDF3_Indirect间接光的diff/spec处理BRDF3DirectSimple分为三档,套用不同BRDF近似,处理直接光照UNITY_BRDF_GI处理间接光directionallightmapsEmission自发光贴图StandardShader-BRDFBRDF3_Indi19StandardShaderStandardShader20Optimization-DCC&UnityOptimization-DCC&Unity21Optimization-HDRReflectionProbe高光去哪儿了?HDRProbevs.LDRProbeOptimization-HDRReflectionPr22Optimization-Gamma光的传输是线性一个场景里的两个光源效果是相加的RGB值大小代表光强(能量)Optimization-Gamma光的传输是线性23Optimization-GammasRGB值非线性shader默认的输入输出都是线性的GPUGems3:Chapter24.TheImportanceofBeingLinearOptimization-GammasRGB值非线性24Optimization-Variantsshader_feature/multi_compile打造最小版本ShaderOptimization-Variantsshader_fe25TODO-FALLBACKBRDF换回『经典模型』PBR塌陷成经典做法性能分级贴图合并:如Occlusion塌陷到Albedo选择性禁用IBL等TODO-FALLBACKBRDF换回『经典模型』26TODO-SpecularAAToksvigmap/2011/07/22/specular-showdown//TODO-SpecularAAToksvigmap27ProductProduct28UnityPBR介绍及经验分享UnityPBR介绍及经验分享29OutlinePBR使用背景知识介绍StandardShader代码分析使用经验及优化分享OutlinePBR使用背景知识介绍30Background讨论的实质上是PhysicallyBasedShading核心:材质在真实物理环境下的反应不考虑GI/AO/Light/Sun等Background讨论的实质上是PhysicallyBa31Background-Concepts漫反射(Diffusion)&反射(Reflection)金属(导电材料)&非金属(绝缘体)能量守恒材质不会比入射光更亮菲涅尔(Fresnel)Background-Concepts漫反射(Diffusi32Background常见误区用了PBR我们的画面就会变强PBR只能用于真实感游戏PBR非常消耗性能转PBR是很简单的一个事情技术只要提供一个Shader就行了第三方软件里的就是最终效果Background常见误区33Background-Advantages优势表达能力强,避免Shader爆炸+合并DC能量守恒,在不同条件下都正确项目内不同场景环境下复用,甚至项目间复用资源Background-Advantages优势34Background-Advantages优势IBL提供间接光照,最大限度模拟真实环境下光照条件让美术更容易制作金属感美术的职责划分感性=>理性只需要确保正确,不再需要对好看负责制作流程进一步拆分,建模/贴图/灯光职责清晰,风格统一Background-Advantages优势35Background-PBRvs.Non-PBRBackground-PBRvs.Non-PBR36Background-ReferencesBasicTheoryofPhysically-basedrenderingPhysicallyBasedShadinginUnitySIGGRAPH2010Course:Physically-BasedShadingModelsinFilmandGameProductionSébastienLagardePBR除了工作流,还有什么优势?HowtoMakePhotorealisticPBRMaterialsBackground-ReferencesBasicThe37StandardShaderhttps:///get-unity/download/archivebuiltin_shaders-5.5.0f3StandardShaderhttps://unity3d38StandardShader-FilesDefaultResourcesExtra/Standard.shaderCGIncludes/UnityStandardCore*.cgincForward管线StandardSimple为例禁用_PARALLAXMAP/DIRLIGHTMAP_COMBINED/DIRLIGHTMAP_SEPARATEStandardShader-FilesDefaultRe39StandardShadershader_feature切换功能ForwardBasePass平行光/自发光/lightmap/…ForwardAddPass额外光源一次一个StandardShadershader_feature切40StandardShaderStandardShaderGUI.cs根据UI切换参数StandardShaderStandardShaderG41StandardShader-Vert77-79初始化81-85世界空间/裁剪空间坐标88-92世界空间法线/视线94-100切空间109-112PBR预计算项Vert输出值将插值后传入Frag常见Shader优化技巧StandardShader-Vert77-79初始化42StandardShader-FragMainLightSimple获取主光源颜色/方向ndotl法向量和光源方向点积SHADOW_ATTENUATION接受阴影OcclusionOCC贴图FragmentGI全局光照UNITY_APPLY_FOG硬件雾StandardShader-FragMainLightS43StandardShader-UNITY_SETUP_BRDF_INPUTMetallic工作流输入:金属度+光滑度specColor=lerp(DielectricSpec,albedo,metallic)diffColor=albedo*lerp(1-DielectricSpec,0,metallic))Specular工作流输入:高光颜色+光滑度diffColor=albedo*(1-SpecularStrength(specColor))能量守恒金属specColor大,diffColor小非金属反之StandardShader-UNITY_SETUP_BR44StandardShader-FragmentGI250-261设置变量光照贴图或环境光263-274ReflectionProbeGPUGems3Chap.19IBLSphere无穷远Box本地校正UnityGlobalIlluminationGI核心函数StandardShader-FragmentGI250-45StandardShader-UnityGlobalGIUnityGI_BaseShadeSHPerPixel即LightProbeLightmap读取光照贴图颜色额外处理Directional实时光照贴图UnityGI_IndirectSpecularBox需要矫正反射方向根据粗糙度取mipmapStandardShader-UnityGlobalGIU46StandardShader-BRDFBRDF3_Indirect间接光的diff/spec处理BRDF3DirectSimple分为三档,套用不同BRDF近似,处理直接光照UNITY_BRDF_GI处理间接光directionallightmapsEmission自发光贴图StandardShader-BRDFBRDF3_Indi47StandardSha

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论