GUIText是GUITexture的幕后推手

时间:2015-04-27 22:51:36

标签: c# unity3d

首先,我已经环顾四周,我可以看到很多关于这个的帖子,他们都指向文本的Z位置,但是我已将其更改为减号和正数,我的文本总是在我的GUITexture后面。

所以这就是我设置的

我的GUI有4个文本框

Score
Lives
Level
Time

现在我有一个名为GameManager的对象,它使用下面的代码来绘制我的两个GUI精灵

void OnGUI()
    {
        float screenHeight = Screen.height / 12f * 1.5f;
        GUI.DrawTexture (new Rect (0, 0, Screen.width * 2, screenHeight), textureBand);
        GUI.DrawTexture (new Rect (0, Screen.height - screenHeight, Screen.width * 2, screenHeight), textureBand);
    }

然而,无论我做什么,我的文字总是在我的GUITexture下方绘制,所以我永远看不到我的文字,我可以得到一点帮助。

1 个答案:

答案 0 :(得分:1)

如果您要绘制到同一位置,则需要指定每次绘制的深度,以确保它们正确排序。看看这里的统一文档:

http://docs.unity3d.com/ScriptReference/GUI-depth.html

为您想要进一步向后(在文本后面)绘制的纹理设置更高的深度值,如下所示:

GUI.depth = 1;