跳到主要内容

材质

材质资源定义表面渲染后的视觉外观。PlayCanvas 使用基于物理的渲染(PBR)创建能正确响应光照的真实感材质,可表现光滑塑料、粗糙木材、光亮金属等多种表面。

检查器​

在资源面板中选中材质资源,即可在检查器中查看。

材质检查器

材质检查器由可折叠的区域组成,每个区域控制材质外观的不同方面。

纹理变换​

控制各纹理贴图的 UV 偏移、平铺和旋转。

纹理变换

属性说明
应用到所有贴图(Apply To All Maps)启用后,下方偏移、平铺和旋转应用到材质的全部纹理贴图;禁用后,每张贴图可单独设置变换。
偏移(Offset)应用到纹理贴图的 UV 偏移(U、V)。
平铺(Tiling)应用到纹理贴图的 UV 缩放/平铺(U、V)。
旋转(Rotation)应用到纹理贴图的旋转角度,单位为度。

环境光​

控制材质对环境光和环境光遮蔽的响应。

环境光

属性说明
环境光遮蔽(Ambient Occlusion)包含预烘焙环境光遮蔽数据的纹理。较暗区域接收较少环境光。
UV 通道(UV Channel)采样 AO 纹理所用的 UV 集(UV0 至 UV7)。
颜色通道(Color Channel)读取 AO 值的纹理通道(R、G、B 或 A)。
遮蔽镜面反射(Occlude Specular)控制 AO 如何影响镜面反射:Off(关闭)、Multiply(相乘)或 Gloss Based(基于光泽度)。
顶点颜色(Vertex Color)使用顶点颜色代替纹理提供环境光遮蔽。
颜色(Color)与场景全局环境光颜色相乘的环境光染色。
强度(Intensity)环境光遮蔽效果的强度(0–1)。

漫反射​

控制材质受到动态光源照射时的基础颜色。

漫反射

属性说明
漫反射(Diffuse)定义逐像素颜色的漫反射/反照率纹理。
UV 通道(UV Channel)采样漫反射纹理所用的 UV 集(UV0 至 UV7)。
颜色通道(Color Channel)读取的纹理通道(R、G、B、A 或 RGB)。
顶点颜色(Vertex Color)使用顶点颜色代替纹理提供漫反射颜色。
颜色(Color)漫反射颜色。设置了纹理时,用于对纹理染色。

镜面反射​

控制材质的镜面高光和反射能力。镜面反射区域支持金属度与镜面反射两种工作流。

镜面反射

通用属性​

属性说明
启用 GGX 镜面反射(Enable GGX Specular)启用支持各向异性的 GGX 镜面反射响应,适用于拉丝金属等材质。
各向异性(Anisotropy)定义逐像素各向异性方向的纹理,启用 GGX 时可见。
各向异性强度(Anisotropy Intensity)各向异性效果强度(0–1)。
各向异性旋转(Anisotropy Rotation)各向异性方向的旋转角度,单位为度。
使用金属度(Use Metalness)在金属度工作流(PBR)和旧版镜面反射工作流之间切换。

金属度工作流​

启用 Use Metalness 时:

属性说明
金属度(Metalness)定义逐像素金属度的纹理。白色(1)表示金属,黑色(0)表示非金属。
顶点颜色(Vertex Color)使用顶点颜色代替纹理提供金属度。
金属度(Metalness)金属度系数(0–1),存在纹理时与纹理值相乘。
使用镜面反射颜色与系数(Use Specular Color and Factor)为非金属区域启用额外的镜面反射颜色控制。
镜面反射(Specular)镜面反射颜色纹理,启用 Use Specular Color 时可见。
镜面反射系数(Specularity Factor)定义逐像素镜面反射系数的纹理。

镜面反射工作流​

禁用 Use Metalness 时:

属性说明
镜面反射(Specular)定义高光颜色的镜面反射颜色纹理。
顶点颜色(Vertex Color)使用顶点颜色代替纹理提供镜面反射。
染色(Tint)启用后,使用下方 Color 对镜面反射纹理染色。
颜色(Color)镜面高光颜色。

光泽度​

属性说明
光泽度(Glossiness)定义逐像素光泽度/平滑度的纹理。
顶点颜色(Vertex Color)使用顶点颜色代替纹理提供光泽度。
光泽度(Glossiness)光泽度值(0–100),值越高,反射越锐利。
反转(Invert)将光泽贴图视为粗糙度贴图,即反转其值。

自发光​

控制材质表面的自发光。

自发光

属性说明
自发光(Emissive)定义逐像素自发光颜色的纹理。
UV 通道(UV Channel)采样自发光纹理所用的 UV 集(UV0 至 UV7)。
颜色通道(Color Channel)读取的纹理通道(R、G、B、A 或 RGB)。
顶点颜色(Vertex Color)使用顶点颜色代替纹理提供自发光。
颜色(Color)自发光颜色。设置了纹理时,用于对纹理染色。
强度(Intensity)自发光颜色倍率。大于 1 时可产生过亮/泛光效果。

不透明度​

控制材质透明度和 Alpha 测试。

不透明度

属性说明
混合类型(Blend Type)材质与背景的混合方式:None(不透明)、Alpha、Additive(相加)、Additive Alpha、Screen(滤色)、Premultiplied Alpha(预乘 Alpha)、Multiply(相乘)、Modulate 2x、Min(取最小值)、Max(取最大值)。
不透明度(Opacity)定义逐像素不透明度的纹理。
UV 通道(UV Channel)采样不透明度纹理所用的 UV 集(UV0 至 UV7)。
颜色通道(Color Channel)读取不透明度的纹理通道(R、G、B 或 A)。
顶点颜色(Vertex Color)使用顶点颜色代替纹理提供不透明度。
强度(Intensity)整体不透明度(0–1),0 为完全透明,1 为完全不透明。
Alpha 测试(Alpha Test)Alpha 低于该阈值的像素会被丢弃(0–1)。
Alpha 转覆盖率(Alpha To Coverage)启用 Alpha 转覆盖率,实现与顺序无关的透明效果,需要 MSAA。
不透明度衰减镜面反射(Opacity Fades Specular)启用后,不透明度也会衰减镜面反射。玻璃类材质应禁用。
不透明度抖动(Opacity Dither)不透明度抖动图案:None(无)、Bayer 8 或 Blue Noise(蓝噪声)。
阴影不透明度抖动(Opacity Shadow Dither)阴影不透明度使用的抖动图案。
抖动强度(Dither Intensity)用于抖动的不透明度(0–1)。Intensity 仍控制 Alpha 混合,因此混合材质也能通过抖动淡出。设为 1 可在不修改抖动模式的情况下关闭抖动。仅在 Opacity Dither 或 Opacity Shadow Dither 不是 None 时显示。
Alpha 衰减(Alpha Fade)禁用 Opacity Fades Specular 时使用的材质淡出系数(0–1)。

法线​

通过法线贴图控制表面细节。

法线

属性说明
法线(Normals)定义逐像素表面朝向的法线贴图。
UV 通道(UV Channel)采样法线纹理所用的 UV 集(UV0 至 UV7)。
凹凸强度(Bumpiness)法线贴图效果强度(0–2)。0 为无效果,1 为标准,2 为夸张效果。

视差​

通过高度贴图为表面增加深度错觉。有关模式及限制,请参阅视差映射。

视差

属性说明
高度贴图(Heightmap)高度贴图,白色表示较高区域,黑色表示较低区域。
UV 通道(UV Channel)采样高度纹理所用的 UV 集(UV0 至 UV7)。
颜色通道(Color Channel)读取高度的纹理通道(R、G、B 或 A)。
模式(Mode)选择单次高度偏移或通过光线步进实现的视差遮蔽。网格轮廓和深度缓冲区不会改变。选项为 Offset 和 Occlusion。
强度(Strength)视差效果强度(0–2)。
基准(Base)对应原始表面的高度贴图值(0–1)。对于白色表示平面的深度贴图,使用 1。
采样数(Samples)视差遮蔽使用的高度贴图最大采样数(4–64)。较大值增加渲染开销。仅在 Mode 为 Occlusion 时显示。
自阴影(Self Shadow)每个平行光用于视差起伏自阴影的最大采样数(0–32)。设为 0 可禁用。仅在 Mode 为 Occlusion 时显示。

透明涂层​

添加第二层镜面反射,模拟汽车漆或漆木等透明涂层。

透明涂层

属性说明
透明涂层系数(Clear Coat Factor)透明涂层强度(0–1),设为 0 可禁用。
透明涂层(Clear Coat)定义逐像素透明涂层强度的纹理。
UV 通道(UV Channel)采样透明涂层纹理所用的 UV 集(UV0 至 UV7)。
顶点颜色(Vertex Color)使用顶点颜色提供透明涂层强度。
顶点颜色通道(Vertex Color Channel)使用的顶点颜色通道(R、G、B 或 A)。
透明涂层光泽贴图(Clear Coat Gloss)定义逐像素透明涂层光泽度的纹理。
顶点颜色(Vertex Color)使用顶点颜色提供透明涂层光泽度。
顶点颜色通道(Vertex Color Channel)使用的顶点颜色通道(R、G、B 或 A)。
光泽度(Glossiness)透明涂层的平滑度(0–1)。
反转(Invert)将光泽贴图视为粗糙度贴图。
透明涂层法线(Clear Coat Normals)透明涂层的法线贴图,例如用于橘皮效果。
凹凸强度(Bumpiness)透明涂层法线贴图强度(0–2)。

织物光泽​

为织物等材质添加柔和、类似天鹅绒的反射。

织物光泽

属性说明
使用织物光泽(Use Sheen)启用织物光泽镜面反射效果。
织物光泽(Sheen)定义逐像素织物光泽颜色的纹理。
UV 通道(UV Channel)采样织物光泽纹理所用的 UV 集(UV0 至 UV7)。
顶点颜色(Vertex Color)使用顶点颜色提供织物光泽。
颜色(Color)织物光泽的染色。
织物光泽度(Sheen Glossiness)定义逐像素织物光泽度的纹理。
光泽度(Glossiness)织物光泽效果的平滑度(0–1)。
反转(Invert)将光泽贴图视为粗糙度贴图。

折射​

控制玻璃、水等透明材质中的光线折射。

折射

属性说明
动态折射(Dynamic Refractions)通过抓取通道启用实时折射。
折射(Refraction)定义逐像素折射强度的纹理。
UV 通道(UV Channel)采样折射纹理所用的 UV 集(UV0 至 UV7)。
顶点颜色(Vertex Color)使用顶点颜色提供折射强度。
折射(Refraction)穿过材质的光量(0–1)。
折射率倒数(Index Of Refraction)控制光线畸变,以 1.0 / IOR 表示。常见值:玻璃约 0.67,水约 0.75。
色散(Dispersion)色差,即颜色分离的强度。0 表示无色散。
厚度(Thickness)定义逐像素材质厚度的纹理。
缩放(Scale)厚度倍率,影响光线吸收量。
衰减颜色(Attenuation)光线穿过材质体积时的吸收颜色。
衰减距离(Attenuation Distance)光线完全被吸收时的距离。

虹彩​

产生类似肥皂泡、油膜或甲虫外壳的彩虹色变化。

虹彩

属性说明
使用虹彩(Use Iridescence)启用虹彩衍射效果。
虹彩(Iridescence)定义逐像素虹彩强度的纹理。
UV 通道(UV Channel)采样虹彩纹理所用的 UV 集(UV0 至 UV7)。
虹彩(Iridescence)虹彩效果强度(0–1)。
虹彩厚度(Iridescence Thickness)定义逐像素薄膜厚度的纹理。
最小厚度(Thickness Minimum)薄膜最小厚度,单位为纳米(nm)。
最大厚度(Thickness Maximum)薄膜最大厚度,单位为纳米(nm)。
折射率(Index of Refraction)薄膜层的折射率。

环境​

通过立方体贴图或球面贴图控制环境反射。

环境

属性说明
球面贴图(Sphere Map)用于环境反射的球面贴图,与 Cube Map 互斥。
立方体贴图(Cube Map)用于环境反射的立方体贴图。未设置时使用场景天空盒。
反射强度(Reflectivity)环境反射的可见程度(0–1)。
投影(Projection)立方体贴图投影模式:Normal(普通)或 Box(盒投影)。
中心(Center)盒投影的中心点(X、Y、Z)。
半尺寸(Half Extents)盒投影体积的半尺寸(宽、高、深)。

光照贴图​

应用光照贴图中预先烘焙的光照。

光照贴图

属性说明
光照贴图(Lightmap)包含预烘焙漫反射光照的光照贴图。
UV 通道(UV Channel)采样光照贴图所用的 UV 集(UV0 至 UV7),通常使用不重叠的 UV1。
颜色通道(Color Channel)读取的纹理通道(R、G、B、A 或 RGB)。
顶点颜色(Vertex Color)使用顶点颜色代替纹理提供光照贴图数据。

其他​

额外的渲染状态控制。

其他

属性说明
深度测试(Depth Test)启用后,仅绘制通过深度测试的像素,即前方没有遮挡的像素。
深度写入(Depth Write)启用后,材质会写入深度缓冲区。
剔除模式(Cull Mode)要剔除的面:None(双面渲染)、Back Faces(背面,默认)或 Front Faces(正面)。
使用雾(Use Fog)为此材质应用场景雾设置。
使用光照(Use Lighting)为此材质应用动态光照。
使用天空盒(Use Skybox)使用场景天空盒进行环境反射。
使用色调映射(Use Tonemap)为此材质应用色调映射。
顶点颜色伽马(Vertex Color Gamma)将顶点颜色解释为伽马空间(sRGB)值。
提示

要在脚本中使用此资源,请参阅资源属性。通过代码创建材质时,请参阅 StandardMaterial API。