在場景中除預設camera和light外,添加cube物體,並掛載腳本。 值得註意的是ScreenToWorldPoint方法並未給z軸進行賦值所以需要自己給z軸賦值。v.z並不是cube的z軸而是攝像機和cube的距離。 效果圖: ...
在場景中除預設camera和light外,添加cube物體,並掛載腳本。
1 using System.Collections; 2 using System.Collections.Generic; 3 using UnityEngine; 4 5 public class ColliderDemo : MonoBehaviour { 6 7 private void OnMouseDrag() 8 { 9 Vector3 v = Input.mousePosition; 10 float f = Input.GetAxis(AxisName.MouseScrollWheel); 11 transform.position += transform.forward * f * 10f; 12 v.z = Mathf.Abs(Camera.main.transform.position.z - transform.position.z); 13 Debug.Log(Input.GetAxis(AxisName.MouseScrollWheel)); 14 gameObject.transform.localPosition = Camera.main.ScreenToWorldPoint(v); 15 } 16 }
值得註意的是ScreenToWorldPoint方法並未給z軸進行賦值所以需要自己給z軸賦值。v.z並不是cube的z軸而是攝像機和cube的距離。
效果圖: