Unity PolySpatial 光照支持
由于visionOS本身仅提供基于图像的照明,PolySpatial包括一个可用于 shader graph 的光好解决方案,该解决方案提供了Unity中可用的光照功能的子集。 PolySpatial 照明节点支持定向光照贴图、光探针和最多四个动态光源(点、聚光灯或定向)。
限制
仅支持具有dLDR编码的静态定向光照贴图。
PolySpatial Lighting Node
若要将 PolySpatial 光照添加到 shader graph 中,请使用 shader graph 编辑器中的“Create Node”命令创建“PolySpatial Lighting Node”的实例。
Inputs
光照节点的输入与“Lit” shader graph 目标的输入基本相同——--“Base Color”(albedo),“Normal”(in tangent space),“Metallic”,“Smoothness”,“Emission”及“Ambient Occlusion”——另外还有“Lightmap UV”输入用于光照贴图纹理坐标。
Output
照明节点的输出(“Out”)是单色结果。 根据应用程序,您可能希望将此输出直接提供给“Unlit”目标的“Base Color”输入(如果您希望仅使用PolySpatial照明)或“Lit”目标的“Emission”输入(如果您希望将PolySpatial照明与visionOS的基于图像的照明相结合)。
Settings
Baked Lighting
“Baked Lighting”设置具有三个选项:“None”表示完全省略烘焙光照,“Lightmap”表示应用烘焙光照贴图,“LightProbes”表示从光照探针获取烘焙光照。 通常,静态对象使用光照贴图,动态对象使用光探针。
Reflection Probes
“Reflection Probes”设置具有三个选项:“None”表示忽略反射探针的作用,“Simple”表示使用单个反射探测器,“Blended”表示混合最多两个反射探测器的作用。
Dynamic Lighting
“Dynamic Lighting”切换确定动态点/聚光灯/方向光(即由非烘焙 Light 组件表示的光)是否影响输出。
Light Selection
灯光组件的Render Mode属性可用于控制应用的动态灯光。 标记为Not Important的灯光永远不会包含在PolySpatial照明节点使用的四个灯光中。 标记为Important的灯光将优先于标记为Auto(默认)。
PolySpatial Environment Radiance Node
要访问visionOS基于光照的图像(在“Lit”或“Unlit”的 shader graph 中),创建“PolySpatial Environment Radiance Node”实例。 接受曲面参数(“BaseColor”、“Roughness”、“Specular”、“Metallic”和“Normal”),并输出代表照明结果的“Diffuse Radiance”和“Specular Radiance”颜色。 例如,要获得环境光照度的近似值,可以使用白色作为“BaseColor”,1.0 作为“Roughness”,0.0 作为“Specular”和“Metallic”,以及默认的“Normal”。 “Diffuse Radiance”输出将大致等于环境光照度。 请注意,“PolySpatial Enviroment Radiance”的输出与应用于“Lit”目标的照明完全分开;例如,如果将“Diffuse Radiance”和“Specular Radiance”输出添加在一起,并将它们连接到“Lit”目标的“Emission”输出,最终将获得两倍的整体亮度。