效果图:
代码:
using UnityEngine; using System.Collections; public class DragModel : MonoBehaviour { private float x = 0.0f; private float y = 0.0f; private float xSpeed = 800.0f; private float ySpeed = 800.0f; private float zSpeed = 160f; private float minDistence = -3; private float maxDistence = 15; void Update () { if(Input.GetMouseButton(0)) { x=Input.GetAxis("Mouse X") *xSpeed; y=Input.GetAxis("Mouse Y") *ySpeed; transform.Rotate(Vector3.up * -x *Time.deltaTime,Space.World); transform.Rotate(Vector3.right * y *Time.deltaTime,Space.World); } else if(Input.GetAxis("Mouse ScrollWheel")!=0) { float ga = Input.GetAxis("Mouse ScrollWheel"); if(transform.position.z > minDistence && transform.position.z<maxDistence||transform.position.z<=minDistence && ga<0||transform.position.z>=maxDistence && ga>0) { transform.Translate(Vector3.forward*-ga*zSpeed*Time.deltaTime,Space.World); } } } }