当前位置: 首页 > news >正文

打造高清3D虚拟世界|零基础学习Unity HDRP高清渲染管线(第七天)

打造高清3D虚拟世界|零基础学习Unity HDRP高清渲染管线(第六天)

  • 1.前言回顾
  • 2.HDRP配置文件(HDRP Asset)
    • HDRP配置文件基本属性
      • Lighting(光照)
        • Screen Space Ambient Occlusion (SSAO)
        • High(高质量) & Volumetrics(体积光照)
        • Light Layers(光照层)
          • Enable(启用)
          • Light Layer Name 0 - 7(光照层名称 0 - 7)
        • Cookies(光照遮罩)
          • 2D Atlas Size(2D 图集尺寸)
          • 2D Atlas Last Valid Mip(2D 图集最后有效的 Mip 级别)
          • Format(格式)
          • Point Cookie Size(点光源 Cookie 尺寸)
          • Cubemap Array Size(立方体贴图数组尺寸)
        • Reflections(反射)
          • Screen Space Reflection (SSR)(屏幕空间反射)
          • Compress Reflection Probe Cache(压缩反射探针缓存)
          • Reflection Cubemap Size(反射立方体贴图尺寸)
          • Probe Cache Size(探针缓存大小)
          • Compress Planar Reflection Probe Cache(压缩平面反射探针缓存)
          • Planar Reflection Atlas Size(平面反射图集尺寸)
          • Max Planar Reflection On Screen(屏幕上最大平面反射数量)
          • Maximum Reflection Probes On Screen(屏幕上最大反射探针数量)
        • Sky(天空)
          • Reflection Size(反射尺寸)
          • Lighting Override Mask(光照覆盖遮罩)
        • Shadows(阴影)
          • Shadowmask(阴影遮罩)
          • Maximum Shadows On Screen(屏幕上最大阴影数量)
          • Filtering Quality(过滤质量)
          • Screen Space Shadows(屏幕空间阴影)
          • Use Contact Shadows(使用接触阴影)
        • Directional / Punctual / Area Light Shadows(定向光 / 点光源 / 区域光阴影)
  • 总结与工作流建议

1.前言回顾

可以点击传送门预览。
传送门: 【打造高清3D虚拟世界|零基础学习Unity HDRP高清渲染管线(第一天)】.
传送门: 【打造高清3D虚拟世界|零基础学习Unity HDRP高清渲染管线(第二天)】.
传送门: 【打造高清3D虚拟世界|零基础学习Unity HDRP高清渲染管线(第三天)】.
传送门: 【打造高清3D虚拟世界|零基础学习Unity HDRP高清渲染管线(第四天)】.
传送门: 【打造高清3D虚拟世界|零基础学习Unity HDRP高清渲染管线(第五天)】.

2.HDRP配置文件(HDRP Asset)

  • HDRP的全称是High Definition Render Pipeline(高清渲染管线)。它是基于Scriptable Render Pipeline(简称SRP,中文翻译为“可编程渲染管线”)实现的一个模板,目前的目标平台是支持Compute Shader的带独立显卡的台式机和家用游戏机,比如PlayStation4和Xbox One。基本上可以把Unity传统的内置渲染管线理解为一个黑盒子,几乎没有什么手段可以控制它的各个渲染阶段。SRP的出现让这一情况完全改变。你甚至可以用SRP创造自己的渲染管线。也就是说,即使Unity提供的渲染管线无法满足我们的渲染需求,也可以使用SRP自定义渲染管线。
  • 当然,SRP的出现也增加了一些额外的设置步骤,这些步骤用于配置你想使用的渲染管线。不过无须担心,设置方法都很简单。下面我们来看一下在各种情况下的设置方法。因为在设置渲染管线时我们要用到ProjectSettings(项目设置)界面,所以先通过菜单Edit→Project Settings…打开项目设置界面。
    可以把渲染管线的设置分成以下几种情况。
    ●使用默认的内置渲染管线
    ●使用HDRP
    ●使用URP

HDRP配置文件基本属性

是

  • Rendering(渲染)
  • Lighting(光照)
  • Lighting Quality Setting(光照质量设置)
  • Material(材质)
  • Post-processing(后处理)
  • Post-processing Quality Setting(后处理质量设置)
  • XR(XR相关设置)

注意:可以创建多个不同配置信息的HDRP的位置文件,以便匹配不同的开发平台,通过手动或者代码动态控制。

Lighting(光照)

在这里插入图片描述

Screen Space Ambient Occlusion (SSAO)
  • 作用: 全局启用或禁用 SSAO 效果。SSAO 通过在物体接触和凹陷处添加阴影,极大地增强场景的深度感和真实感。
High(高质量) & Volumetrics(体积光照)
  • 作用: 这些通常是 质量预设级别 的下拉选项。
  • 选项: 如 Low, Medium, High, Ultra。选择更高级别会使用更高的采样数、分辨率或更复杂的算法来计算 SSAO 和体积光照(如体积雾、体积光),代价是性能开销更大。
Light Layers(光照层)
Enable(启用)
  • 作用: 全局启用光照层系统。

  • 用途: 光照层允许你精确控制哪个光源影响哪个物体。例如,你可以让一组特定的装饰性灯光只影响场景道具,而不影响角色,从而进行更高效和艺术化的光照控制。

Light Layer Name 0 - 7(光照层名称 0 - 7)
  • 作用: 为 8 个光照层定义自定义名称,以便在编辑器中进行更直观的选择(例如,将 “Light Layer 0” 重命名为 “Environment”,将 “Light Layer 1” 重命名为 “Characters”)。
Cookies(光照遮罩)
  • Cookie 是投射在场景中的纹理,用于模拟复杂的光照形状或阴影(如窗户的投影、树叶的斑驳光影)。
2D Atlas Size(2D 图集尺寸)
  • 作用: 定义用于存储所有 2D Cookie 纹理的图集纹理的大小。
  • 影响: 尺寸越大,能容纳的高分辨率 Cookie 越多,但内存占用也越大。
2D Atlas Last Valid Mip(2D 图集最后有效的 Mip 级别)
  • 作用: 限制 2D Cookie(主要用于区域光)所使用的 Mipmap 级别,有助于平衡质量和性能。
Format(格式)
  • 作用: 选择 Cookie 纹理使用的内部格式,影响颜色精度和内存占用。
Point Cookie Size(点光源 Cookie 尺寸)
  • 作用: 定义点光源所使用的立方体 Cookie 纹理的尺寸。
Cubemap Array Size(立方体贴图数组尺寸)
  • 作用: 定义用于点光源 Cookie 的立方体贴图数组的大小,限制了可以同时使用的唯一点光源 Cookie 数量。
Reflections(反射)
Screen Space Reflection (SSR)(屏幕空间反射)
  • 作用: 全局启用或禁用屏幕空间反射。SSR 为光滑表面提供精确的局部反射,但无法反射屏幕外的物体。
Compress Reflection Probe Cache(压缩反射探针缓存)
  • 作用: 是否对烘焙的反射探针立方体贴图进行压缩。

  • 影响: 启用可以大幅减少内存占用;禁用会获得更高质量的反射,但内存开销更大。

Reflection Cubemap Size(反射立方体贴图尺寸)
  • 作用: 定义单个反射探针的立方体贴图的分辨率。尺寸越大,反射细节越清晰。
Probe Cache Size(探针缓存大小)
  • 作用: 定义用于存储所有反射探针贴图的全局缓存的大小。如果场景中有大量高分辨率探针,可能需要增大此值。
Compress Planar Reflection Probe Cache(压缩平面反射探针缓存)
  • 作用: 与上述类似,但专门针对平面反射探针。
Planar Reflection Atlas Size(平面反射图集尺寸)
  • 作用: 定义用于存储所有平面反射的图集纹理的大小。
Max Planar Reflection On Screen(屏幕上最大平面反射数量)
  • 作用: 限制同一帧内能够激活的平面反射探针的最大数量。这是关键的性能保护设置。
Maximum Reflection Probes On Screen(屏幕上最大反射探针数量)
  • 作用: 限制同一帧内能够贡献反射的立方体反射探针的最大数量。
Sky(天空)
Reflection Size(反射尺寸)
  • 作用: 定义天空盒用于反射的立方体贴图的分辨率。这影响了所有将天空作为反射源的物体的反射质量。
Lighting Override Mask(光照覆盖遮罩)
  • 作用: 指定一个光照层,只有属于该层的光源才会被用于环境光照(即由天空盒生成的 Light Probe 和 Reflection Probe)。
  • 高级用途: 例如,你可以创建一个只包含主要方向光(太阳)的光照层,并在此处指定,这样环境光就不会被场景中无数的小灯光污染,从而获得更干净、更可控的全局光照。
Shadows(阴影)
Shadowmask(阴影遮罩)
  • 作用: 启用 Shadowmask 光照模式。这是一种混合光照模式,静态物体与静态光源间的阴影会被烘焙到一张纹理中,而动态物体则接收实时阴影,能在保证质量的同时提供良好的性能。
Maximum Shadows On Screen(屏幕上最大阴影数量)
  • 作用: 限制同一帧内可以出现在屏幕上的阴影贴图的最大数量。这是最重要的阴影性能控制选项之一。
Filtering Quality(过滤质量)
  • 作用: 控制阴影边缘的软化质量。

  • 选项: 如 Low, Medium, High。更高质量的过滤能减少阴影锯齿,但会增加性能开销。

Screen Space Shadows(屏幕空间阴影)
  • 作用: 启用屏幕空间阴影。这种技术用于捕捉在标准阴影贴图中可能丢失的细节,特别是针对非常小的物体或远处物体的阴影。它对性能影响较小,是传统阴影的很好补充。
Use Contact Shadows(使用接触阴影)
  • 作用: 启用接触阴影。这是一种通过深度缓冲区的光线步进来计算的、用于添加极短距离、高精度细节阴影的技术(如物体与地面接触的点)。

  • 用途: 能极大地增强场景的真实感,让物体感觉是"站在"地面上而不是漂浮着。

Directional / Punctual / Area Light Shadows(定向光 / 点光源 / 区域光阴影)
  • 作用: 这些部分通常包含每种光源类型阴影的分辨率和图集尺寸设置。
    例如: Directional Light Shadow Atlas Resolution 定义了用于所有定向光阴影的图集大小。提高分辨率会使定向光阴影更清晰。

总结与工作流建议

  • 性能优化:
    限制 Maximum Shadows On Screen 和 Max Planar Reflection 数量。
    对反射探针启用 Compress … Cache。
    适当降低 Filtering Quality、阴影 Atlas Resolution 和 Reflection Size。
    在移动端或低配平台上,考虑禁用 Screen Space Reflection 和 Contact Shadows。

  • 提升质量:
    提高 Reflection Cubemap Size 和阴影 Atlas Resolution。
    启用 Screen Space Shadows 和 Contact Shadows 来增加阴影细节。
    使用 High 或 Ultra 级别的 SSAO 和 Volumetrics。
    禁用反射探针的压缩以获得更清晰的反射。

  • 高级控制:
    使用 Light Layers 来精细化管理光照影响。
    使用 Sky Lighting Override Mask 来净化环境光照。
    使用 Shadowmask 模式来平衡静态场景的阴影质量和性能。

这里是井队,天高任鸟飞,海阔凭鱼跃,点个关注不迷路,我们下期再见。

http://www.dtcms.com/a/528262.html

相关文章:

  • 营销型网站建立费用手机端网站开发页
  • 网页模板免费资源搜索引擎排名优化技术
  • 2025年9月电子学会全国青少年软件编程等级考试(Python四级)真题及答案
  • hot 100 技巧题
  • Evaluating Long Context (Reasoning) Ability
  • 乐器基础知识学习
  • 做英语手抄报 什么网站中铁建设集团有限公司分公司
  • Java自动化测试之数据库的操作
  • 算法:并行课程II
  • 信阳住房和城乡建设厅网站企业vi设计说明
  • llama.cpp:Android端测试Qwen2.5-Omni
  • Polar Reverse(中等)
  • A2O MAY首张EP《PAPARAZZI ARRIVE》正式上线 全球宣传全面启动
  • MySQL常用内置函数整理:提高你的查询效率
  • MkFont,一款开源免费的字体设计工具
  • 怎么样才能搜索到自己做的网站jquery做的装修网站
  • 基于Chrome140的TK账号自动化——脚本撰写(二)
  • WPF之Style
  • zabbix实现监控Apache、Nginx、php-fpm应用的实操保姆级流程
  • 69.力扣LeetCode_x的平方根
  • linux第二次作业
  • (二)Gradle 依赖仓库及安全凭证配置
  • 医疗信创标杆实践:浙人医 LIS 系统异构多活容灾架构深度解析(附 KingbaseES 实战)
  • 廊坊怎么做网站免费访问国外网站的应用
  • 对网站建设好学吗vps 需刷新几次才能打开网站
  • 百日挑战之单词篇(第三天)
  • 【C++】list 常见使用和模拟实现
  • HTML HTML5基础(2)
  • macOS安装使用Oh My Tmux教程
  • SpringBoot+FFmpeg+ZLMediaKit 实现本地视频推流