我正在开始我的项目,我得到这个错误无法弄清楚它有什么问题。 如果这是一个愚蠢的问题,真的很有帮助和抱歉。我仍然是团结的新人。谢谢你的所有答案。
我尝试寻找有关此vector2(宽度,高度)的帮助,但对我来说它看起来很好。 而且,如果有人可以请我解释这个rect.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, "+" );
}
}
感谢您的时间。
答案 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);