统一3d错误如何解决它

时间:2013-05-06 11:50:02

标签: c# unity3d

我正在开始我的项目,我得到这个错误无法弄清楚它有什么问题。 如果这是一个愚蠢的问题,真的很有帮助和抱歉。我仍然是团结的新人。谢谢你的所有答案。

我尝试寻找有关此vector2(宽度,高度)的帮助,但对我来说它看起来很好。 而且,如果有人可以请我解释这个rec​​t.center问题为什么我得到它?

Unity3d错​​误:

Assets/Scenes/Game/Scripts/GUI/GameGUI.cs(22,22): error CS1061: Type `UnityEngine.Rect' does not contain a definition for `center' and no extension method `center' of type `UnityEngine.Rect' could be found (are you missing a using directive or an assembly reference?)

代码:

using UnityEngine;
using System.Collections;

public class GameGUI : MonoBehaviour {


    void OnResume() {
        enabled = true;
    }

    void OnPause() {
        enabled = false;
    }


    void OnGUI() {
        int fps = (int) (1f/Time.deltaTime*Time.timeScale);
        GUILayout.Box( "FPS "+fps );

        Vector2 size = GUI.skin.label.CalcSize( new GUIContent("+") );
        Rect rect = new Rect(0, 0, size.x, size.y);
        rect.center = new Vector2(Screen.width, Screen.height)/2f;
        GUI.Label( rect, "+" );
    }


}

感谢您的时间。

1 个答案:

答案 0 :(得分:2)

根据Unity's Script Reference History page.在Unity 3.5中引入了center属性。所以你必须自己计算中心。也许你的构造函数应该是这样的:

Rect rect = new Rect(Screen.width/2f, Screen.height/2f, size.x, size.y);