unity 鼠标拖动物体(2.5D,C#)

首先建立一个地板

unity 鼠标拖动物体(2.5D,C#)_第1张图片
qwqw.png

把下面这个C#脚本添加到被拖动的物体上

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class InputScript : MonoBehaviour {

    // Use this for initialization
    void Start () {
        
    }
    
    // Update is called once per frame
    void Update () {
        if (Input.GetMouseButton(0))
        {
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
            RaycastHit hit;
            if (Physics.Raycast(ray, out hit))
            {
                Vector3 newPosition = hit.point;
                newPosition.y = transform.position.y;
                transform.position = newPosition;
            }
        }
    }
    
}

原理就是创建一个射线,并与地板碰撞。把物体设置为碰撞的位置(Y轴保持不变)

************点击这里可以看到作者的其他文章********************欢迎转载,转载请标明出处: [http://www.jianshu.com/p/72a4f2d639b6) ********

你可能感兴趣的:(unity 鼠标拖动物体(2.5D,C#))