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

作者: 齊葩 | 来源:发表于2017-09-17 17:11 被阅读83次

首先建立一个地板

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#)

    本文链接:https://www.haomeiwen.com/subject/dyhmsxtx.html