附一张这本书的封面截图
ps:(我自我介绍一下吧,高中不好好学习去了大专,现在大一暑假在一家郑州互联网公司实习,月薪4500,转正之后是八千多(我觉得挺多了),其实并不是我多聪明,只是抓住了机会不想再浪费,目前学习的是unity,主做虚拟仿真。我主要想对大家说现在真的是一个考学历找工作的社会,没有学历基本再有梦想也很难实现,何况还有家人需要你照顾,所以希望大家不管什么时候都去学习,抓住机会,尽量对生活抱有一定的期望(也别太大,不然落差很大))。
好让我们进入正题:Unity高清渲染管线的学习day1
首先是一个概念:基于物理的渲染。我的理解是用计算机图形学来模拟真实的世界,让我们在unity做出来的世界感觉更加真实。(这里大家可以去B站搜索Unity官方,一个异教徒一个发条乐师,这两个视频我当时看的挺震撼的)
HDRP:全称High Definition Render Pipeline,是SRP(Scriptable Render Pipeline)的一个模板。unity自带的内置渲染管线就像一个黑匣子,没有什么能改变每个阶段他的渲染过程,但是SRP出现让我们能根据自己不同的需求来制作我们需要的渲染管线。
配置HDRP渲染管线:在Edit/Project Settings/Graphic第一个Scriptable Render Pipeline Settings可以配置渲染管线,为none就是你现在在使用unity传统的渲染管线,导入HDRP直接点小圆点选择HDRP就行,没有创建高清渲染管线在project右键Create/Rendering/High Definition Render Pipeline Asset。
设置High Definition Render Pipeline Asset选项:
首先介绍选项列表里的属性都是什么意思:
Rendering:渲染 Lighting:灯光 Lighting Quality Settings:灯光质量设置 Material:材质 Post-Processing:后处理 Post-Processing Quality Settings:后处理质量设置 XR:XR相关设置 Virtual Texturing:搜了一下好像是 虚拟纹理 的意思
在Rendering/Lit Shader Mode有三种模式,用来控制Lit Shader的渲染模式,Forward可以使用更多的高级材质,但对性能消耗也会变大;Both模式会预先加载两种模式,在运行时针对不同相机来回切换,对内存占用也会变大。
HDRPAsset与单独的volume组件存在着父子关系,如果HDRPAsset相应选项没有勾选,那么添加相应的volume组件就无法使用。
HDRP材质和着色器:
要想通过HDRP制作逼真的场景,材质制作是很关键的一环,那么理清Mesh,Material,Shader,Texture之间的关系就显得十分关键。
Mesh代表模型本身,主要用来表现形状
一个Mesh网格可以关联多个Material材质,来表现不同的材料
每种Material材质都关联着一个指定的Shader着色器,Shader是一段代码,用来计算屏幕上每个像素点的算法,当然Shader计算时会考虑当前场景的光照信息以及在Material的具体配置信息。
在HDRP常用的一个Shader是Lit Shader,能模拟很多物体,后期我们也可以通过控制Material各项参数让两个Lit Shader表现出不一样的材质。
在Material的inspector面板中,HDRP/lit着色器下,Surface Inputs控制的参数集合可以指定Map,Map关联的就是Texture贴图。Base Map:用于为模型提供Albedo颜色信息。Mask Map:使用一张纹理控制RGBA四种属性,以此降低内存占用。 Normal Map:法线贴图为模型添加更多模型不存在的细节。
此外,我们也可以通过Create/Shader/HDRP创建更多其他Shader。
在我们创建的Shader双击可以打开可视化编程界面,在这里不用编写代码就能添加各种功能。
材质的一些参数:
Surface Options/Surface Type中有两个属性,来控制改材质外表是否透明,Qpaque是不透明,Transparent是透明。
在下面的Material Type中有六种属性:Subsurface Scattering:次表面散射,可用于模拟玉器,皮肤树叶等材质。Standard:标准,用于大部分材质。Anisotropy:各向异性,模拟拉丝金属,从不同角度看,会有不用的高光效果。Irdescence:彩虹色,角度不同物体颜色会渐变,适合模拟肥皂泡,彩虹色金属和昆虫翅膀。Spucular Color:高光颜色,可用于大部分材质。Translucent:模拟半透明物体。
HDRP渲染管线设置窗口的三个窗口:HDRPWized:该窗口可快速检查当前项目是否拥有HDRP项目所要求的配置。Render Pipeline Debug:可以通过调整不同的参数在game窗口中实时查看相关信息。Look Dev:该窗口可将模型置于多个HDRI环境来快速查看效果并进行比较。