Unity HDRP入门(七)

575 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第7天,点击查看活动详情

概述

本系列文章主要记录Unity的HDRP项目入门级教程,本篇文章主要了解一下HDRP项目中的材质和着色器。

Material(材质)

在Unity中,HDRP项目和普通项目中模型基本上都是有Mesh(网格),Material(材质),Shader(着色器)以及Texture(贴图)组成,唯一不同的可能就是Material和Shader的设置等地方不同。如下图所示,水桶的表面图案等,主要就是由material的Surface Inputs的设置

image.png 下面就一起来看一下Surface Inputs的设置中每一项的作用,其实和普通项目的material差不多

  • Base Map:主要是用控制模型贴图的颜色,比如我们调成红色,就会发现整个桶都变成了红色,白色就是只贴图是什么样,显示的就是什么样子。而Base Map前放置图片的位置,就是这个桶的贴图,如果没有此图,我们也就看不到桶身上这些图案了

image.png

  • Mask Map:主要是用来控制模型的RGBA四个通道的纹理
  • Normal Map:法线贴图,此项可以使模型的表面细节更加清楚

接下来看一下Surface options中的一些重要参数
Surface Type :这一项感觉和普通项目的rendering Mode类似,不过只有两项Opaque和Transparent,主要是用来设置透明与不透明

  1. Material Type:材质的类型,其主要分为6个类型:
  2. Subsurface Scattering:次表面散射
  3. Standard:标准的(默认)
  4. Anisotropy:各向异性
  5. Iridescence:彩虹色
  6. Specular Color:高光颜色
  7. translucent:半透明 目前这几种类型还正在学习中。。。。。

Shader(着色器)

在普通项目中,我们可以看到,模型的Shader一般都是Standard,但是在示例工程中,我们可以看到,模型的Shader是HDRP/Lit

image.png

image.png

创建

其实在HDRP项目中,还有很多种HDRP适用的Shader,加下来看一下如何创建
方法一、直接在材质球的Shader选项上进行选择Unity内置的Shader.首打开Shader下拉选框 image.png

然后选择HDRP项

image.png 接着我们就可以看到HDRP的Shader了,通过下图,我们可以看到HDRP项目还有很多的内置Shader.

image.png

方法二、直接在菜单栏通过如下路径进行创建Assets->Create->Shader->HDRP,在这里同样会看到上述那些Shader,不过这样创建的其实也是一个配置好的Shader,但是这可我们可以自己随意的进行效果调整,包括使用可视化编程工具编辑

image.png

结束

对于HDRP项目,作者本人也是在学习摸索,所以写的文章大多学习中自己的理解,如有有问题的地方还希望各位能够提出,大家共同学习。谢谢。