1、通过获取鼠标经过点来旋转
using UnityEngine;
using System.Collections;
///
/// 人物模型转动
///
public class HeroModelRotate : MonoBehaviour
{
///
/// 第一次按下的位置
///
private Vector2 first = Vector2 .zero;
///
/// 鼠标的拖拽位置(第二次的位置)
///
private Vector2 second = Vector2 .zero;
///
/// 旋转的角度
///
private float angle = 3f;
void OnGUI()
{
if (Event.current.type == EventType.MouseDown)
{
//记录鼠标按下的位置
first = Event.current.mousePosition;
}
if (Event.current.type == EventType.MouseDrag)
{
//记录鼠标拖动的位置
second = Event.current.mousePosition;
if (second.x < first.x)
{
//拖动的位置的x坐标比按下的位置的x坐标小时,响应向左事件
this.transform.Rotate(Vector3.up, angle);
}
if (second.x > first.x)
{
//拖动的位置的x坐标比按下的