unity2d实例化和拖拽实现

请问如何在Unity2d下实现点击鼠标左键后实例化出预制件并且在不松开左键的情况下能够拖拽物体?我只会实现点击鼠标实例化预制件。。不懂如何两个同时实现,求大神解惑。
以下是我自己写的,只能实现点击实例化:
public class ArrowController : MonoBehaviour {

public Transform arrowPrefab;
Vector3 mousePositionOnScreen;
Vector3 screenPosition;
Vector3 mousePositionInWorld;

void Start () {

}

void Update () {
    screenPosition = Camera.main.WorldToScreenPoint (transform.position);
    mousePositionOnScreen = Input.mousePosition; 
    mousePositionOnScreen.z = screenPosition.z;
    mousePositionInWorld = Camera.main.ScreenToWorldPoint (mousePositionOnScreen);
    if (Input.GetMouseButtonDown (0)) {
        Instantiate (arrowPrefab, mousePositionInWorld, Quaternion.identity);
    //这下面我就不知道怎么实现了
        if (Input .GetMouseButton (0)) {
            transform.position = mousePositionOnScreen; 
        }
    }
}

}

阅读 7k
2 个回答

把实例化后的对象保存一下 鼠标移动的时候改变位置就行了

新手上路,请多包涵

定义一个GameObjer Obj对象 实例化的赋值到这个对象上
Obj = Instantiate (arrowPrefab, mousePositionInWorld, Quaternion.identity);
Obj.transform.position = mousePositionOnScreen;

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进