思路:通过对时间的计算,每隔一段时间让物体旋转,实现来回移动。
float TranslateSpeed = 0.02f;
float TranslateSpeedTime = 0.1f;
void Update () {
TranslateSpeedTime += 0.1f;
transform.Translate(Vector3.forward * TranslateSpeed);
if (TranslateSpeedTime > 150.0f)
{
transform.Rotate(0, 180, 0);
TranslateSpeedTime = 0.1f;
}
}
1.首先给物体定义一个初始速度和初始的时间。
2.然后使时间递增。
3.通过Translate函数使物体移动。
4.Vector3.forward 是向前移动的意思,==Vector3(0,0,1)
*Vector3.up 向上 具体可查看API
5.if判断,规定一个时间,如若TranslateSpeedTime达到这个时间,让物体沿着Y轴旋转
并且重置时间,继续调用Update
即可实现物体的重复移动并旋转。