Unity3D顶点着色着色器(在编辑器中着色,在构建中为黑色)

时间:2014-06-28 11:46:23

标签: android unity3d shader

我试图使用一个非常简单的着色器,以避免每种颜色创建1个材质(使用顶点颜色方法)。问题来自于我在编辑器中看到它没问题,但是当我在Android或独立(windows)中构建时,所有颜色看起来都是黑色。

截图: 编辑 enter image description here 建立 enter image description here

着色

Shader "Alpha/VertexLit Colored" {
    Properties {
        _Color ("Main Color", Color) = (1,1,1,1)
    }

    SubShader {
        CGPROGRAM
        #pragma surface surf Lambert alpha
        struct Input {
            float4 color : COLOR;
        };
        fixed4 _Color;

        void surf(Input IN, inout SurfaceOutput o) {
            o.Albedo = IN.color.rgb ;
            o.Alpha = 1;
        }
        ENDCG
    }
}

我设置颜色的部分代码:

Mesh mesh = minoGameObject.GetComponent<MeshFilter>().mesh;
Color[] colors = new Color[mesh.vertexCount];
for (int i=0;i<mesh.colors.Length;i++)
{
    colors[i] = mino.color;
}
mesh.colors = colors;

我怎么能解决这个问题?

感谢阅读。

0 个答案:

没有答案