单击它缓慢旋转游戏对象
Rotate a GameObject slowly on click on it
我有一个要旋转 90 度的游戏对象。
如何让它顺畅旋转?
private void OnMouseDown()
{
gameObject.transform.Rotate(new Vector3(0, 0, -90));
}
您可以使用 Coroutine 让它慢慢地动起来。
float rotationAmount = .1f;
float delaySpeed = .1f;
private void OnMouseDown(){
StartCoroutine(SlowSpin());
}
IEnumerator SlowSpin(){
float count = 0;
while(count <= 90){
gameObject.transform.Rotate(new Vector3(0, 0, rotationAmount));
count += rotationAmount;
yield return new WaitForSeconds(delaySpeed);
}
}
更改第 1 行和第 2 行的变量以满足您的需要。但是,不要将 delaySpeed
设置得太高,否则你的动画会变得不稳定。
我有一个要旋转 90 度的游戏对象。
如何让它顺畅旋转?
private void OnMouseDown()
{
gameObject.transform.Rotate(new Vector3(0, 0, -90));
}
您可以使用 Coroutine 让它慢慢地动起来。
float rotationAmount = .1f;
float delaySpeed = .1f;
private void OnMouseDown(){
StartCoroutine(SlowSpin());
}
IEnumerator SlowSpin(){
float count = 0;
while(count <= 90){
gameObject.transform.Rotate(new Vector3(0, 0, rotationAmount));
count += rotationAmount;
yield return new WaitForSeconds(delaySpeed);
}
}
更改第 1 行和第 2 行的变量以满足您的需要。但是,不要将 delaySpeed
设置得太高,否则你的动画会变得不稳定。