unity3d - unity2d实例化和拖拽实现

查看:308
本文介绍了unity3d - 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; 
        }
    }
}

}

解决方案

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

这篇关于unity3d - unity2d实例化和拖拽实现的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆