版本:Unity 6 (6000.0)
语言:英语
URP 中 DOTS 实例化着色器中使用 UNITY_DOTS_INSTANCED_PROP 宏的示例
URP 中 DOTS 实例化着色器函数参考

URP 中 DOTS 实例化着色器宏参考

Unity 提供以下访问宏

访问宏 描述
UNITY_ACCESS_DOTS_INSTANCED_PROP(PropertyType, PropertyName) 返回使用上面描述的布局从 unity_DOTSInstanceData 加载的值。 着色器在 GPU 上运行的程序。 更多信息
参见 词汇表
Unity 提供的版本使用此版本用于没有默认值的 DOTS 实例化内置属性。
UNITY_ACCESS_DOTS_INSTANCED_PROP_WITH_DEFAULT(PropertyType, PropertyName) 返回值与 UNITY_ACCESS_DOTS_INSTANCED_PROP 相同,不同之处在于,如果元数据值的最高有效位为零,则返回默认值。默认值为与 DOTS 实例化属性名称相同的常规材质属性的值,这就是 Unity 提供的着色器使用 DOTS 实例化属性与常规材质属性具有相同名称的约定的原因。在使用默认值时,访问宏根本不访问 unity_DOTSInstanceData。Unity 提供的着色器使用此访问宏用于 DOTS 实例化材质属性,因此加载将回退到材质上设置的值。
UNITY_ACCESS_DOTS_INSTANCED_PROP_WITH_CUSTOM_DEFAULT(PropertyType, PropertyName, DefaultValue) 返回值与 UNITY_ACCESS_DOTS_INSTANCED_PROP 相同,除非元数据值的最高有效位为零,在这种情况下,此宏将返回 DefaultValue,并且不会访问 unity_DOTSInstanceData
UNITY_DOTS_INSTANCED_METADATA_NAME(PropertyType, PropertyName) 直接返回元数据值,不访问任何内容。这对于自定义实例数据加载方案很有用。
URP 中 DOTS 实例化着色器中使用 UNITY_DOTS_INSTANCED_PROP 宏的示例
URP 中 DOTS 实例化着色器函数参考