HDRP

2023-11-13

HDRP 的 10 版本支持 Unity 2020 LTS 及以上,新版的 HDRP 软件包将继续优化用户友好的界面、灵活的功能、管线的稳定性和总体性能。但如果想将 HDRP 设置到最佳状态,你必须要了解所有主要的管线设置,及其背后的原理和作用。为此,我们需要利用CPU/GPU Profiler的记录、Render Pipeline Debug视图,以及HDRP 的着色器框架来研究 HDRP 的运行。

从图形调试到优化分析,本文将介绍一些实用技巧,帮助大家使用 Custom Pass API 及其它功能来定制 HDRP。

HDRP 10 版本:

https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@10.4/manual/whats-new-10.html

HDRP的UX组成

在开始分析 HDRP 渲染的画面之前,我们首先要了解 HDRP 的现有功能。

你可能会发现,项目要从内置渲染管线移植到 HDRP 通常需要先做一些调整。这是因为:

HDRP 使用着一种统一且符合真实物理的渲染框架,各项渲染属性的单位与现实世界一致,如用于设置摄像机的感光度 Exposure(曝光值),描述光照强度的 Candela(坎德拉)。

HDRP 项目包含有大量的渲染参数可由用户调整。因为 HDRP 集成了许多功能,并且管线也支持让艺术和工程人员深度定制渲染功能、微调和优化自己的作品。

要想熟悉 HDRP 的各项功能,我们首先要了解管线的 Global(全局)设置。

01全局设置

在内置渲染管线中,每个项目的Graphics(图形)设置涵盖了大多数图形设置。而 Player 设置则包含了 Windows、Linux、Mac 或 Xbox 等平台的基础图形设置。

Graphics(图形):

https://docs.unity3d.com/Manual/class-GraphicsSettings.html

图1:HDRP 里的各个全局图形设置

HDRP 同样包括了 Graphics 和 Player 设置,此外还增加了三组额外设置,用于修改管线的高级默认配置。

在图形设置中,Scriptable Render Pipeline(可编程渲染管线 SRP)设置默认是 HD Render Pipeline Asset(HD 管线设置资源)。这个资源中的设置可在每一种管线的质量等级上被分别覆写。

HDRP Default Settings(默认设置)一栏则可配置:

默认 Frame(帧)设置,每个属性可在多台摄像机(包括用于平面反射或反射探针的摄像机)上分别覆写。你可以在此处设定摄像机默认是否渲染透明物体。

默认 Volume(体积)组件,其属性可在所有摄像机上覆写。比如,你可以覆写默认的后处理效果强度,再使用体积来让后处理效果“室外强、室内弱”。

默认 Diffusion Profile Assets(散射配置资源)属性,属性可由HDRP Defautl Setting选项栏下 Volume(体积)部分的 Diffusion Profile Override 组件进行覆写,并且也支持在所有摄像机上覆写。目前 Diffusion Profile 系统还带有一个“多余的覆写层面”,为了改善 HDRP 的用户体验,我们正在积极寻求其解决方案。

属于纯全局设置的其它属性不能被覆写。

而其它不太常用的底层设置则放在了 HDRP Config package 中。这些设置也属于纯全局设置,修改起来涉及重新编译 C# 程序集和 HDRP 着色器框架,所以这部分属性被另外放在了一个包中。

02质量等级

内置渲染管线支持在Quality Settings一栏下设定任意数量的质量等级 。每个质量等级都可以保留各自的图形设置,比如在低端设备上减少使用各向异性纹理来节省硬件资源。

Quality Settings:

https://docs.unity3d.com/Manual/class-QualitySettings.html

HDRP 也支持为每个质量等级指定一种 HD Render Pipeline Asset 覆写。与内置渲染管线相比,高清渲染管线的设置资源可储存额外几种参数,如平行光、点光源和聚光灯以及面光源的同屏最大数量,颜色分级的 LUT 大小和 Light Cookie 整图大小等等,让管线能有更多的定制空间。

内置渲染管线的 Quality Settings 有许多只适用于本管线的属性。在 HDRP 中,这些设置可能会从原位转移到其他地方,作为“替补设置”重新出现。

比如,内置渲染管线的 Quality Settings 选项栏可设定 Shadow Resolution(阴影分辨率)属性,而同样的设置在 HDRP 项目中就被放在了管线设置资源的“Lighting” > “Shadows” 这一部分。

图2:HDRP的Quality设定中包含了更少的在属性界面中的设置

图3:因为许多属性被放到了HD Render Pipeline Asset中

03Camera(摄像机)和Frame(帧)设置

同内置渲染管线一样,HDRP 同样需要借助Cameras(摄像机)来渲染场景。管线还会在同一对象上加上一个HD Additional Camera Data(HD 摄像机补充数据)组件来为每个摄像机储存额外的参数。

Cameras(摄像机):

https://docs.unity3d.com/ScriptReference/Camera.html

HD Additional Camera Data:

https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@11.0/api/UnityEngine.Rendering.HighDefinition.HDAdditionalCameraData.html

实际上 HDRP 带有更为详细的摄像机定制参数。管线带有几种 Physical Camera(物理摄像机)设置,你甚至可以勾选 Custom Frame Settings 属性,在 Frame Settings(帧设置)中确定镜头框架的绘制方法。

Frame Settings(帧设置)系统由一组摄像机属性的覆写组成,其默认设置可在 HDRP Default Settings 一栏中设定。此外,每台摄像机都支持覆写默认的框架设置。

Render Pipeline Debug 窗口的 Camera 面板可以可视化显示出 Frame Settings 的覆写堆栈。

使用 Camera 面板

下例说明了 Render Pipeline Debug 窗口下Camera 面板的使用方式:

场景中有一个名为 Main Camera 的摄像机,此 Main Camera 只渲染静态物体。HDRP Default Settings 选项卡默认启用运动矢量的绘制,而 Main Camera 的 Frame Settings 为了提高整体性能会禁用这一功能。

Motion Vectors 覆写堆栈会在 Default Frame 设置的左侧显示出 Overridden(覆写后) 的 Frame 设置。见图 4 选框 A:

图4:Render Pipeline Debug窗口中的Frame Settings覆写堆栈

而窗口内 Overridden Frame 设置的左边显示的是 Sanitized(清理后) Frame 设置。“清理(Sanitization)”过程可让 Overridden Frame 设置保持连贯。在同个例子中,Main Camera 的 Frame Settings 覆写并没有禁用 Opaque Object Motion(不透明物体运动)和 Transparent Object Motion(透明物体运动),但由于 Motion Vector 被禁用,这三种依赖于此的功能也会被清理系统关闭,如图 4 选框 B 所示。

04Volume(体积)系统

类似于内置渲染管线的 Post-processing 堆栈,HDRP 的体积系统也是一种后处理。但它要比前者更详细,体积系统还涵盖了天空的渲染方式、间接光照的强度、额外的阴影设置以及许多其他特性。

简单地说,HDRP 体积系统是一种抽象的框架,可在镜头移动时改变其渲染设置。每种体积属性都带有默认值,这些值可在 Render Pipeline Debug 窗口的 Volume 面板中查看。在图 5 的最右侧我们能看到,Lens Distortion(镜头扭曲)的 Default Intensity(默认强度)为 0。

Volume 面板:

https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@10.2/manual/Render-Pipeline-Debug-Window.html

图5:Render Pipeline Debug窗口中的Volume覆写堆栈

这些代码写出来的默认属性可在 HDRP Default Settings 选项卡的 Volume Component 部分覆写。注意,这里的覆写依旧能被场景中的体积所覆盖。

而摄像机会反过来取场景各体积属性的混合值。如果体积属性不存在,摄像机就会取 HDRP Default Settings 下的属性值。否则,它就会取写入代码中的默认属性值。

如图 5 所示,Render Pipeline Debug 窗口的 Volume 面板可以很好地显示出 Volume 属性的覆写堆栈,以及当前启用中的体积属性,辅助图形调试。

05网格和表面

类似内置渲染管线,HDRP 的几何体渲染通常由场景的Mesh Renderer(网格渲染器)或Skinned Mesh Renderer(蒙皮网格渲染器)完成。HDRP 独有的渲染数据主要存储在 Materials(材质) 中,以方便应用到兼容的 Renderer(渲染器)或 Shader Graphs 上。

Mesh Renderer(网格渲染器):

https://docs.unity3d.com/ScriptReference/MeshRenderer.html

Skinned Mesh Renderer(蒙皮网格渲染器):

https://docs.unity3d.com/ScriptReference/SkinnedMeshRenderer.html

06光照

类似内置渲染管线,HDRP 的每盏灯都会被存储为 HDRP 特有的数据格式。管线除了常规 Light 组件外还会使用HD Additional Light Data(HD 光照补充数据)组件,因为许多光照设置并非来自关联了 Light 组件的 Game Object 上。下方为几个例子:

间接光照将受 Light Probe Groups(光照探针组)、Reflection Probes(反射探针,带有 HD Additional Reflection Data(HD 反射补充数据)组件)、Planar Reflection Probes(平面反射探针)及 Lighting Settings(光照设置)影响。光照本身也可以由 Indirect Lighting Controller(间接光照控制器)体积组件进行调整。

体积系统决定了天空的光照。

体积系统也还控制着相关的屏幕空间效果。这些效果类似于一个光源或阴影源:Screen Space Reflection(屏幕空间反射)、Screen Space Refraction(屏幕空间折射)、Screen Space Global Illumination(屏幕空间全局光照)、Screen Space Ambient Occlusion(屏幕空间环境遮蔽)及 Contact Shadow(接触阴影)。

Subsurface Scattering(次表面散射)模拟了“表面到表面的光照”。大多数次表面散射属性由 Diffusion Profiles(散射配置)设定,而后者又定义在了材质中。你可以在体积系统中用 Diffusion Profile Override(散射配置覆写)覆盖其属性。

图6:Indirect Lighting Controller(间接光照控制器)体积组件

属性搜索

在大致了解了 HDRP 的 UX 组成后,我们再来看些比较冷门的HDRP 图形属性。图 7 展示的是一种从一般设置到覆写设置、“自上而下”的属性查找方法。可以看到,从上方的总体设置到下方的覆写设置,查找的范围在扩大。

图7:在HDRP项目中查找图形属性的一种可行流程

图形设置的多个维度

HDRP 的图形设置必须要应对以下几方面:

程序的图像质量等级,根据运行平台的不同而不同

当前活跃的摄像机

摄像机在场景中的位置

模型上使用的材质

照射在模型上的光照

并且,HDRP 的设置有几个不同的维度。

01多层设置间的冲突

下方列举出的设置之间往往会存在冲突:

质量等级和活跃中摄像机可能会试着控制同一个图形参数。举例来说,如果你想在低端设备上减少 Subsurface Scattering 的采样次数,最好也修改 Render Textures 摄像机的 Subsurface Scattering 采样次数,以达到画中画效果。

质量等级和摄像机位置可能会试着控制同一个图像参数。在 GPU 算力有限的平台上,部分场景的复杂光照效果已经占用了大量的处理时间,而在这些地方优化性能时,你可以尽量降低后处理效果的质量,节省一些性能预算。

质量等级和光照设置可能会试着控制同一个图像参数。在内存有限的平台上,如果你想通过降低阴影贴图的分辨率来优化性能,不要忘了场景中存在的小型聚光灯也需要使用低分辨率的阴影贴图。

为了解决这些冲突,高清渲染管线支持多级 设定。某个属性不只有一个值,而可以有几个等级的数值,比如低级、中级、 高级甚至终极。

图8:每个等级都有一个给定值

在渲染画中画效果的摄像机上,你可以为后处理体积和接收阴影贴图的聚光灯设定一个等级:

图9:用等级来替代具体数值

HDRP 这时就可在 HD Render Pipeline 设置资源中找到每种等级对应的属性值,管线便会使用该属性。

当然,摄像头、体积和光照也可以忽略分级设置系统,直接执行它们想要的行为。

02三种设置层次的重叠

我们再到另一个例子中看看重叠的设置层次。

在某个场景中有一些 Mesh Renderer,每个都带有 Shader Graph 编写而成的复杂顶点动画。对低端设备来说,顶点动画的性能开销过于高昂。而若想制作出画中画效果,你还需要用到另外一个摄像机,这个摄像机并不需要渲染顶点动画。

以下三层设定会互相重合:

场景模型上的材质

程序的质量等级

场景中的摄像机

为了解决这种情况,Shader Graph 设有一个特殊的Material Quality(材质质量):

图10:Shader Graph中的Material Quality

与用户为每个材质设置的普通 Shader Graph 节点不同,Material Quality 是一个全局节点,存在于 HDRP 之内。在 HD Render Pipeline 设置资源中,你可以在 Material Quality 预设的几种等级中选择、设置默认的等级。

图11:Default Material Quality Level中预设的几种质量等级

你可以在每个摄像机上修改默认帧设置、设定材质质量等级,覆盖 HDRP 配置文件的设置。

图12:在摄像机的Frame Settings(帧设置)中设定新的材质质量等级

HDRP 有一个系统性的设置流程可让美术人员也能轻松驾驭,我们认为良好的用户体验是刺激高质量内容创作的关键之一。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HDRP 的相关文章

  • GPU 渲染管线与着色器 大白话总结 ---- 一篇就够

    转载自 https blog csdn net newchenxf article details 119803489 真的写的非常不错 大力推荐 GPU 渲染管线与着色器 大白话总结 一篇就够 文章目录 GPU 渲染管线与着色器 大白话总
  • Unity学习笔记(一)—— 基础知识

    一 基础知识 1 开发团队组成 2 unity特点 图形界面 所见即所得 入门简单 支持C 比OC C 更友好 js 国内外资源丰富 因为使用的人多 跨平台性好 PC端 移动端等 对VR AR的支持最完善 3 成功案例 游戏 炉石传说 神庙
  • unity3d大型互动照片墙

    1 本次应客户需求 制作一个大型照片墙互动 输出分辨率为9600 4320 注 unity3d官方推荐最大分辨率为8192 3686 4 经过现场长达24小时暴力测试中途未发生问题 姑且判定可以达到正常标准 废话不多说 先上效果 unity
  • 在聚会中常玩数七的游戏,七的倍数和带有七的数字都不能说,比如14,27,28。请找出1~100的不能说的数字。...

    利用ES5的filter高阶函数来实现 var arr 1 2 3 4 5 6 7 17 27 21 22 28 100 r arr filter function x return x 10 7 x 7 0 alert r 7 14 17
  • CocosCreator列表scrollview滑动速度的修改,鼠标滚动速度修改

    由于cocos creator 在pc端 使用scrollview 鼠标滚动速度太慢 原文地址 CocosCreator列表滑动速度的修改 简书CocosCreator列表滑动速度的修改 简书引擎版本 2 2 2 之后升级的2 4 0直接可
  • Unity打包WebGL的优化常用操作?

    1 贴图部分优化 如果贴图格式时2048 在不影响画面效果的情况下 改成1024或者5 12 还可以缩小包体 2 压缩和解压缩问题 WebGL打包的时候分三种压缩情况 gzip 比Brotli文件打 但打包快 http和https都支持 B
  • 「Bomkus 博士的试炼」排行榜规则更新

    亲爱的玩家们 为了回应我们从社区收到的宝贵反馈 我们希望与大家分享我们为防止在 Bomkus 博士的试炼 排行榜中作弊而采取的措施的最新进展 并就这一主题提供更多说明 除了在活动开始前采取的反作弊措施外 我们还根据观察到的和报告的行为在整个
  • mixamo根动画导入UE5问题:滑铲

    最近想做一个跑酷游戏 从mixamo下载滑铲动作后 出了很多动画的问题 花了两周时间 终于是把所有的问题基本上都解决了 常见问题 1 动画序列 人物不移动 2 动画序列 人物移动朝向错误 3 蒙太奇 人物移动后会被拉回 4 蒙太奇 动画移动
  • OSG中几何体的绘制(一)

    本章主要介绍一些几何体的绘制方法 绘制几何体在场景中是非常常见的 也是最基本的 在很多应用程序中可以看到相当复杂的场景 但不管场景有多复杂 它们都是由少数几个基本的图形元素构建而成的 只要想想达芬奇那些伟大的作品也是由铅笔和画刷所完成的 读
  • 【转载】【Unity】WebSocket通信

    1 前言 Unity客户端常用的与服务器通信的方式有socket http webSocket 本文主要实现一个简单的WebSocket通信案例 包含客户端 服务器 实现了两端的通信以及客户端向服务器发送关闭连接请求的功能 实现上没有使用U
  • 收单外包服务机构的评级工作已经开始了!

    评级收单外包服务机构的工作不仅是金融监管部门规范和引导收单外包服务市场的重要举措 也影响着外包机构的业务发展 并且是每年最重要的合规工作之一 中国支付清算协会于2023年12月18日发布了一份关于进行2023年度收单外包服务机构评级工作的通
  • 计算机提示vcruntime140.dll丢失的解决方法,多种修复教程分享

    vcruntime140 dll是一个非常重要的动态链接库文件 它包含了许多运行时的函数和类 然而 有时候我们可能会遇到vcruntime140 dll无法继续执行代码的问题 这会给我们带来很大的困扰 那么 这个问题是什么原因导致的呢 又应
  • 如何有效获取APP新增用户

    在提升APP用户获取效果方面 有几个关键策略可以考虑 市场定位与目标用户明确 在推广过程中 确保清晰地了解你的目标用户是谁 以便有针对性地开展推广活动 对用户的需求和偏好有深入了解 可以更好地制定吸引用户的策略 引人入胜的营销策略 设计有吸
  • javascript 常见工具函数(六)

    51 格式化数字 格式化数字 param number num static formatNumber num if isNaN num return 0 if num gt 1000000 num 1000000 if num gt 10
  • 盘点第三方支付行业中一些“专用术语”

    每个行业都有自己的行业术语 在官方场合被称为 术语 如果你是支付行业的新手 或者正在努力深入了解这个复杂但充满机遇的领域 那么掌握行业术语就是打开这扇门的关键 支付系统的需求文档和技术方案文档都充斥着专业词汇和行业术语 有些词汇容易理解 有
  • 广告竞价策略:激发广告变现潜能的关键

    在数字化时代 广告已经成为企业推广品牌 产品和服务的关键手段之一 为了最大程度地发挥广告的效果 广告竞价策略成为广告主和数字营销专业人士关注的焦点 通过巧妙运用竞价策略 广告主可以在激烈的市场竞争中脱颖而出 实现广告变现的潜能 admaoy
  • U3D游戏开发中摇杆的制作(NGUI版)

    在PC端模拟摇杆 实现控制摇杆让玩家或者物体移动 以下是完整代码 using System Collections using System Collections Generic using UnityEngine public clas
  • 游戏开发创建操作之玩家信息系统的建立

    游戏一般都需要玩家信息系统 那么我们应该如何搭建玩家信息系统 接下来我将展示一种简单的方法 完整代码如下 using System Collections using System Collections Generic using Uni
  • 游戏开发中常见系统梳理之背包系统的实现一

    游戏中几乎都存在大大小小的背包系统 接下来我将讲述背包系统具体是如何实现的 完整源码 以下是使用unity NGUI实现 使用txt配置的方法 后续更新UGUI Json实现的背包系统敬请期待 背包中的物品我们常常将其制作成预设体 通过改变
  • 申泰勇教练的独家人物化身系列即将登陆 The Sandbox

    申泰勇 Shin Tae yong 教练是足球界的传奇人物 他来到 The Sandbox 推出了自己的专属人物化身系列 作为前 K 联赛中场球员和印尼队取得历史性成就的幕后教练 他的传奇经历现在已经影响到了虚拟世界 向过去 现在和未来致敬

随机推荐

  • 使用statsvn统计svn中的代码量

    StatSVN介绍 StatSVN是一个Java写的开源代码统计程序 从statCVS移植而来 能够从Subversion版本库中取得信息 然后生成描述项目开发的各种表格和图表 比如 代码行数的时间线 针对每个开发者的代码行数 开发者的活跃
  • sqlite数据库的插入,删除,修改

    代码如下 include
  • WebService 之 WSDL文件 讲解 .

    一 WSDL概述 WebServices Description Language WSDL Web服务语言 是一个用于精确描述Web Service的文档格式 WSDL非常适合于用作代码生成器 它能够读取WSDL文档 并且可以为访问Web
  • python数据驱动ui自动化框架_自动化框架-数据驱动

    https www cnblogs com fnng p 6111516 html 最近在整理接口测试相关的资料 所以 看到有关资料就会多看两眼 偶看到别人发的微信公众号 Python接口测试框第一篇 python如何读取txt文件 Pyt
  • Ubuntu升级自带的Python3版本

    可以通过如下的步骤升级Ubuntu自带的Python3版本 比如自带3 6版本升级到3 8版本 1 添加安装源 在命令行输入如下命令 sudo add apt repository ppa jonathonf python 3 8 2 之后
  • 陀螺产业区块链第二季

    2020年4月 国家发改委在例行新闻发布会上宣布区块链被正式列为新型基础设施中的信息基础设施 自此区块链正式搭上新基建的 风口 与传统基础设施建设相比 新型基础设施建设更加侧重于突出产业转型升级的新方向 无论是 5G还是区块链 都体现出加快
  • 常见的二十种软件测试方法详解(史上最全)

    一 单元测试 模块测试 单元测试是对软件组成单元进行测试 其目的是检验软件组成单位的正确性 测试对象是 模块 对模块进行测试 单独的一个模块测试 属于静态测试的一类 测试阶段 编码后或者编码前 TDD 测试对象 最小模块 测试人员 白盒测试
  • 深入浅出mybatis(持续更新)

    一 MyBatis相关概念回顾 1 对象 关系数据库映射 ORM ORM 全称Object Relation Mapping 表示对象 关系映射的缩写 ORM 完成面向对象的编程语言到关系数据库的映射 它把关系数据库包装成面向对象的模型 采
  • 网格搜索多个监督学习模型上的超参数,包括神经网络、随机森林和树集合模型(Matlab代码实现)

    目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码 1 概述 我们在选择超参数有两个途径 1 凭经验 2 选择不同大小的参数 带入到模型中 挑选表现最好的参数 通过途径2选择超参数时 人力手动调节注意力成本太高 非常不值得 F
  • 什么是环境变量?为什么java要配置环境变量?

    本文是将https blog csdn net qq 37872792 article details 80642985 与 https blog csdn net Pre waist L article details 79696507两
  • 虚拟机打开防火墙端口相关指令

    本篇文章用于记录在虚拟机操作过程中对于查看防火墙状态 开启防火墙 关闭防火墙指令进行记录 查看防火墙状态 systemctl status firewalld 开启防火墙 systemctl start firewalld 关闭防火墙 sy
  • 40 个 常用的 SpringBoot 注解,你知道几个?

    一 Spring Web MVC 与 Spring Bean 注解 Spring Web MVC 注解 RequestMapping RequestMapping注解的主要用途是将Web请求与请求处理类中的方法进行映射 Spring MVC
  • eNSP——VLAN配置实验

    目录 一 新建拓扑 二 配置LSW5 三 配置LSW6 一 新建拓扑 实现效果 PC10可以ping通PC12 ping不通PC11 PC13 二 配置LSW5 1 系统视图开启VLAN100 2 进入接口G0 0 1配置VLAN acce
  • signature=b05c505286f606b32d69ab58ee3e7bf4,reduce-css-calc/yarn.lock at 0f6c532cf9dc52ac3cb23e143eaf...

    THIS IS AN AUTOGENERATED FILE DO NOT EDIT THIS FILE DIRECTLY yarn lockfile v1 ava babel preset stage 4 1 0 0 version 1 1
  • 云计算之你必须知道的几个会议和杂志

    云计算现在被大家炒的热火朝天 那么很多人也想更多了解云计算 那么我就给大家介绍几个杂志和网站 IEEE International Conference on Cloud Computing http www thecloudcomputi
  • vue中的promise对象,async和await学习记录

    promise有待学习 先记录一下最近再项目中学的关于async和await async await 其实就是用同步的写法去实现异步方法 async deleteproduct record const result await produ
  • npm 配置淘宝镜像

    首先解释一下 npm 为什么要配置淘宝镜像 原因 因为node js 默认使用的是国外的网站 国内访问有一个跨国内局域网的操作 所以就会有时候很慢 这就跟为什么网站的静态资源有些会使用CDN 加速一样的 淘宝镜像是什么 就是npm 很多的插
  • hive转义问题详解

    hive转义问题详解 引言 hive控制台执行 字符串不包含 字符串包含 hive e的方式嵌入到shell脚本执行 字符串不包含 字符串包含 总结 引言 hive转义问题想必进来的同学都遇到过 这里就直奔主题了 此类问题大致可以分为两种常
  • Linux上快速安装软RAID详细步骤

    常见问题服务平台 2018 11 17 物理环境 虚拟机CentOS6 4 配置 8G内存 2 2核cpu 3块虚拟硬盘 sda sdb sdc sdb和sdc是完全一样的 在实际生产环境中 系统硬盘与数据库和应用是分开的 这样有利于系统的
  • HDRP

    HDRP 的 10 版本支持 Unity 2020 LTS 及以上 新版的 HDRP 软件包将继续优化用户友好的界面 灵活的功能 管线的稳定性和总体性能 但如果想将 HDRP 设置到最佳状态 你必须要了解所有主要的管线设置 及其背后的原理和