Unity3d 我必须如何在着色器中定义颜色数组属性?

Unity3d 我必须如何在着色器中定义颜色数组属性?,unity3d,graphics,shader,Unity3d,Graphics,Shader,我已经看到,可以使用以下方法在Unity3D材质中设置颜色阵列: 在材质上设置颜色数组属性。如果具有给定名称的颜色数组属性已存在,则替换旧值。 数组长度一旦添加到块中就无法更改。如果随后尝试在同一属性中设置更长的数组,则长度将限制为原始长度,并且尝试分配的额外项将被忽略。如果设置的数组比原始长度短,则将为数组元素指定值,但原始值将保留在新的较短数组的长度之外 当我试图找到如何定义这些属性时,问题就出现了,如下所示: Properties { [PerRendererData] _Mai

我已经看到,可以使用以下方法在Unity3D材质中设置颜色阵列:

在材质上设置颜色数组属性。如果具有给定名称的颜色数组属性已存在,则替换旧值。 数组长度一旦添加到块中就无法更改。如果随后尝试在同一属性中设置更长的数组,则长度将限制为原始长度,并且尝试分配的额外项将被忽略。如果设置的数组比原始长度短,则将为数组元素指定值,但原始值将保留在新的较短数组的长度之外

当我试图找到如何定义这些属性时,问题就出现了,如下所示:

Properties
{
    [PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {}
    **_Color ("Tint", Color) = (1,1,1,1)**
    [MaterialToggle] PixelSnap ("Pixel snap", Float) = 0
}
我试过这样的方法:

_Color ("Tint", Color[]) = []
但它当然不起作用。我不知道如何定义它们

p.S:我知道如何将它们定义到CGPROGRAM部分,但我们讨论的是属性。

谢谢你抽出时间