自己的小方块可以拖动,,但是下载的fbx模型就不行。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class NewBehaviourScript : MonoBehaviour
{
public GameObject cube; //要拖拽的物体
Vector3 mouseV3; //鼠标
Vector3 screeenV; //存储cube的屏幕坐标
Vector3 world; //记录鼠标坐标转成的世界坐标
void Update()
{
if (Input.GetMouseButtonDown(0))
{
//当鼠标第一次单击时记录下cube在场景中的坐标,并把世界坐标转成屏幕坐标
screeenV = Camera.main.WorldToScreenPoint(cube.transform.position);
}
if (Input.GetMouseButton(0))
{
mouseV3 = Input.mousePosition; //当鼠标移动时记录下鼠标的坐标
mouseV3.z = screeenV.z; //因为鼠标的z坐标为0,所以需要一个z坐标
//把鼠标的屏幕坐标转换成世界坐标
world = Camera.main.ScreenToWorldPoint(mouseV3);
//当鼠标移动时,cube也发生移动,为了让cube的y轴不发生移动,设y轴为原来的y轴
cube.transform.position = new Vector3(world.x, cube.transform.position.y, world.z);
print(cube.transform.position);
}
}
// Start is called before the first frame update
void Start()
{
}
}
谢谢大佬