【发布时间】:2013-08-28 09:12:18
【问题描述】:
我写在这里是因为我真的需要你的帮助。我已经创建了链接在游戏对象灯(定向)上的这个脚本。
var time : int= 0;
function Update () {
time+=1;
transform.Rotate(time*Time.deltaTime, 0 ,0);
yield WaitForSeconds(0.2);
if (time == 360){
time = 0;
}
}
当我开始游戏时,对象不旋转,如果我删除线:
yield WaitForSeconds(0.2);
旋转开始缓慢,然后增加速度,直到(每 2 轮)它返回到 0。
【问题讨论】:
-
那么问题是什么?当
yield ...在代码中时,您不知道为什么旋转不起作用,或者您不知道为什么对象的速度会缓慢增加?第二部分很简单,Rotate 是一个相对函数,意味着每次调用都会将输入值附加到当前旋转。只需执行transform.Rotate(Time.deltaTime *speed,0,0)就可以了。 -
有两个问题:第一:为什么当我添加产量时什么都没有发生?第二:为什么,如果我去掉产量,旋转速度会增加? (我想增加旋转,而不是旋转速度)
标签: unity3d delay wait yield light