C# 内部版本中显示的线条颜色不正确

C# 内部版本中显示的线条颜色不正确,c#,unity3d,C#,Unity3d,我正在准备我在Unity的第一场比赛。我正试图在我的赛场上划出界限。 我有一个线条颜色的问题,但现在它被解决了() 但当我建立我的游戏并运行它时,我再次看到粉红色的林 请注意,在Unity编辑器游戏窗口中,一切正常 我的代码: private void DrawLine(Vector3 start, Vector3 stop, GameObject template) { GameObject toInstiateGridLine = template; GameObject

我正在准备我在Unity的第一场比赛。我正试图在我的赛场上划出界限。 我有一个线条颜色的问题,但现在它被解决了()

但当我建立我的游戏并运行它时,我再次看到粉红色的林

请注意,在Unity编辑器游戏窗口中,一切正常

我的代码:

private void DrawLine(Vector3 start,  Vector3 stop, GameObject template)
{
    GameObject toInstiateGridLine = template;
    GameObject gridLineInstance = Instantiate(toInstiateGridLine, start, Quaternion.identity) as GameObject;
    LineRenderer gridLineRenderer = gridLineInstance.GetComponent<LineRenderer>();
    gridLineRenderer.material.color = Color.black;
    gridLineRenderer.SetVertexCount(2);
    gridLineRenderer.SetWidth(0.01f, 0.01f);
    gridLineRenderer.SetColors(Color.black, Color.black);
    gridLineRenderer.SetPosition(0, start);
    gridLineRenderer.SetPosition(1, stop);
}
private void绘制线(矢量3开始、矢量3停止、游戏对象模板)
{
GameObject ToInstateGridline=模板;
GameObject gridLineInstance=实例化(ToInstateGridLine、start、Quaternion.identity)为GameObject;
LineRenderer gridLineRenderer=gridLineInstance.GetComponent();
gridLineRenderer.material.color=color.black;
gridLineRenderer.SetVertexCount(2);
gridLineRenderer.SetWidth(0.01f,0.01f);
设置颜色(Color.black,Color.black);
gridLineRenderer.SetPosition(0,开始);
gridLineRenderer.SetPosition(1,停止);
}
还有截图。 统一游戏窗口:

构建窗口 试试这个:

gridLineRenderer.material.SetColor ("_TintColor", Color.black);
而不是用于更改材质颜色的当前行。 还可以尝试使用不同的着色器

material.color=color.black
基本上是
material.SetColor(“\u Color”,Color.black)
的缩写。某些着色器使用
\u TintColor
而不是
\u Color

我希望这有帮助

是否已检查项目图形设置以确保包含着色器(来自另一个问题的答案)?是否在沿途的某个地方创建了使用旧版本脚本的新场景?您可能没有创建您想要的场景。@31eee384我没有使用Material mat=new Material(Shader.Find(“unlight/Texture”);我使用:gridLineRenderer.material.color=color.black@Draco18s我只有一个场景我认为您使用的着色器可能与您要构建的特定平台的颜色不兼容。您是否尝试过使用不同的着色器?