首先建立一个地板
把下面这个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) ********