在Unity中实现鼠标拖拽物体,滚轮控制物体远近的效果
Posted Steven_宋小华
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Unity中实现鼠标拖拽物体,滚轮控制物体远近的效果相关的知识,希望对你有一定的参考价值。
在场景中除默认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的距离。
效果图:
以上是关于在Unity中实现鼠标拖拽物体,滚轮控制物体远近的效果的主要内容,如果未能解决你的问题,请参考以下文章