这里演示一下使用Unity在控制台里打印从游戏开始到结束时每一秒的时间,输出内容为“距离
游戏开始已经过了秒”当秒数为偶数时,再输出一句“Hello”。
此处以两种方式实现。
第一种以Time.dealtime计算当前时间。第二种通过InvokeRepeating周期性调用计算秒数
`
public class Timer : MonoBehaviour {
private float floatTime=2;//用于方法一:用来递减delatime的2秒
private float floatTime1 = 0;//用于方法一:用来递增delatime的1秒
private int timeCount=0;//用于方法二:计算当前秒数
void Start () {
//InvokeRepeating("TimeCount", 0, 1);//方法二,每一秒计数一次
}
void Update () {
PrintTime();
}
//方法一:通过Time.delatime输出游戏运行时间
void PrintTime()
{
floatTime-=Time.deltaTime;//2秒减去对每帧时间
floatTime1 += Time.deltaTime;//0秒增加每帧时间
if (floatTime1 > 1)//到达1秒的时候,输出当前游戏时间(秒)
{
Debug.Log("距离游戏开始已经过了<" +Mathf.RoundToInt(Time.time) + ">秒");
floatTime1 = 0;
}
if (floatTime <= 0)//时间为偶数时(每两秒)输出Hello并随机位置生成cube
{
Debug.Log("Hello");
floatTime = 2;//用来计算的2秒复原
}
}
//利用InvokeRepeating计时(方法二)
void TimeCount()
{
timeCount++;
if (timeCount % 1 == 0)
{
Debug.Log("距离游戏开始已经过了<" + timeCount + ">秒");
}
if(timeCount % 2 == 0)
{
Debug.Log("Hello");
}
}
}`