以下の例の説明:
Color のメタデータ値は 0x80001000 です。5 です。最上位ビットはすでに設定されているので、アクセサーマクロはデフォルトをロードしません。つまり、c0、c1、および c2 はすべて、アドレス 0x1050 の unity_DOTSInstanceData からロードされた同じ値を持ちます。
void ExamplePerInstance()
{
// rawMetadataValue will contain 0x80001000
uint rawMetadataValue = UNITY_DOTS_INSTANCED_METADATA_NAME(float4, Color);
float4 c0 = UNITY_ACCESS_DOTS_INSTANCED_PROP(float4, Color);
float4 c1 = UNITY_ACCESS_DOTS_INSTANCED_PROP_WITH_DEFAULT(float4, Color);
float4 c2 = UNITY_ACCESS_DOTS_INSTANCED_PROP_WITH_CUSTOM_DEFAULT(float4, Color, float4(1, 2, 3, 4));
}