PolySpatial 资产支持
网格
RealityKit提供了一组有限的预定义顶点格式。网格可以提供位置、法线、切线、颜色、混合权重和混合指数。Unity 将为 RealityKit 提供最多 8 个纹理坐标,但请注意,在其 MaterialX 实现中只有前两个 UV 通道可用,从而限制了额外几何数据的实用性。
由于Unity和RealityKit使用不同的坐标系,因此在系统之间传递时会修改一些顶点属性。对位置、法线和切线执行操纵性交换。所有UV通道的UV都会翻转。
材质
有关visionOS上材质和着色器支持的详细信息,请参阅PolySpatial Material Support。
Unity Shader Graphs
有关如何将通过Unity Shader Graph定义的自定义着色器转换为MaterialX以与RealityKit互操作的详细信息,请参阅Shader Graph Support。
纹理
Unity支持visionOS上的2D纹理,并利用本机纹理压缩选项。
RealityKit for visionOS不支持3D纹理或立方体贴图,因此PolySpatial使用2D纹理来模拟这些纹理。 这有两个限制:
- 首先,高度乘以深度(其中立方体贴图的固定深度为6)必须小于或等于visionOS的最大纹理高度(当前为8192)。 这说明具有二维幂次的立方体贴图的大小必须为1024或更小,并且具有相等二维幂的3D纹理的大小不能大于64。
- 其次,由于3D纹理坐标被映射到2D纹理内的切片的方式,当显示尺寸不能被其压缩纹理块大小整除的纹理mipmap级别时,可能会出现伪像(例如,ASTC6x6为6)。 如果这种情况变得明显,请考虑切换到未压缩的纹理格式。
Render Textures
有关渲染纹理支持的详细信息,请参阅PolySpatial Render Texture Support。
字体
光栅化字体和SDF字体在visionOS上都支持,但我们强烈建议使用SDF字体来确保在所有观看距离下的清晰度。