Unity控制指针旋转到指定的位置

一、搭建基础的表盘、指针

二、编写控制指针旋转到指定位置的脚本:

using UnityEngine;
using System.Collections;

public class Test_OnDashboard : MonoBehaviour
{
    public int thiAngle = 0;
    public int rotateSpeed = 2;
    public bool openRotate = false;


	// Use this for initialization
	void Start ()
    {
	
	}
	
	// Update is called once per frame
	void Update ()
    {
        if (Input.GetKeyDown(KeyCode.T))
        {
            openRotate = true;
            StartCoroutine(stop());
        }


        if (openRotate)
        {
            PointerRotate();
 
        }

    }

    /// <summary>
    /// 控制指针旋转
    /// </summary>
    private void PointerRotate()
    {
        if (thiAngle > -0.001f && thiAngle <= 180)
        {
            Quaternion target = Quaternion.Euler(0, 0, (90 - thiAngle));
            transform.rotation = Quaternion.RotateTowards(transform.rotation, target, rotateSpeed);
        }
       
       

    }

    /// <summary>
    /// 停止检测
    /// </summary>
    /// <returns></returns>
    private IEnumerator stop()
    {
        yield return new  WaitForSeconds(2);
        openRotate =false;
        Debug.Log("tingzhi");
    }

}

三、将该脚本添加给指针物体,然后运行输入对应的旋转角度指针即可旋转

猜你喜欢

转载自blog.csdn.net/xiaochenXIHUA/article/details/83411344