一、Time类
Time时间类为开发者提供了一些在程序运行时时间上的处理函数,我们可以非常方便的提供给我们使用
在Time中提供的一些函数有:
//记录上一帧所消耗的时间,会受时间缩放的影响
public static float deltaTime { get; }
//记录从程序运行到现在的时间会受时间缩放的影响
static float time { get; }
//设置游戏里面的时间与现实世界里的时间缩放,即现实世界的时间 X 缩放比例
static float timeScale { get; set; }
//从游戏运行到现在的真实事件
static float realtimeSinceStartup { get; }
二、随机数类
随机数类为我们提供了一些随机数的函数:
static int Range(int min, int max);
//生成一个随机浮点数
st**重点内容**atic float Range(float min, float max);
三、数学运算类
在数学类中定义了我们常需要的数学计算方式,非常方便的一些数学运算。
四、四元数
四元数通常用于控制物体的旋转功能
//控制绕某个轴旋转
Quaternion Euler(Vector3 euler);
Quaternion Euler(float x, float y, float z);
五、输入控制类 Input
在Unity3D中将输入控制分为3种状态,分别是按下、一直处于按下状态、抬起状态,Unity提供输入函数的类为 Input类
1、键盘的三种状态
//当按键一直处于按下状态时重复调用这个函数
static bool GetKey(KeyCode key);
//当按键刚按下时调用一次这个函数
static bool GetKeyDown(KeyCode key);
//当按键被按下后抬起时调用一次这个函数
static bool GetKeyUp(KeyCode key);
/*
keyCode类中定义类我们键盘上的常用按键的类型
*/
2、鼠标的三种状态
//鼠标的三种状态和键盘的按键的三种状态相同
public static bool GetMouseButton(int button);
public static bool GetMouseButtonDown(int button);
public static bool GetMouseButtonUp(int button);
/*
在三个参数中传递的是一个整形数字
0 :代表鼠标的左键
1:代表鼠标的右键
2:带表鼠标的中建
*/
2、适用于触摸屏输入
在Unity中为我们定义了一个Touch类用于定义触摸屏上的输入控制
/*
Touch类中的常用属性
*/
public int fingerId { get; } //获取到当前触摸手指的编号
public Vector2 position { get; }//触摸点的位置
TouchPhase phase { get; } //当前触摸事件的类型
/*
Unity为我们提供了几种触摸类型事件
*/
public enum TouchPhase
{
Began = 0,//刚开始触摸到触摸屏
Moved = 1,//当手指触摸到屏幕上以后进行移动
Stationary = 2,//当手指触摸在触摸屏上后并未离开,而是静止不动
Ended = 3,//结束触摸手指离开屏幕
}
/*
在Input类中通过一个属性来获取当前所有的触摸信息:
Input.touches来获取所有的触摸信息。
*/
//列如:
void OnGUI()
{
//循环获取当前屏幕的触摸信息
foreach(Touch touch in Input.touches)
{
GUILayout.Label(string.Format("手指{0} 状态{1} 位置 {2}", touch.fingerId, touch.phase.ToString(), touch.position));
}
}
六、Unity调试类
在Unity中专门为我们提供了一个调试应用程序的类,在这个类中提供类在不同条件下打印不同的调试信息的方法:
Debug.Log()//打印出普通灰色的消息
Debug.LogError(); //打印出黄色警告消息
Debug.LogWarning(); //打印出红色错误消息
//在Unity程序进行编译的时候Unity内部也会根据程序的编译结果打印出相应的消息
列如 :
void OnGUI()
{
if(Input.GetMouseButtonDown(0))
{
Debug.Log("普通消息");
}
if(Input.GetMouseButtonDown(1))
{
Debug.LogError("错误消息");
}
if(Input.GetMouseButtonDown(2))
{
Debug.LogWarning("警告消息");
}
}
打印结果: