像Gamefox游戏一样拖放

时间:2015-02-01 16:30:44

标签: c# unity3d 3d drag-and-drop inventory

我想制作一个游戏,玩家可以通过从库存中拖动零件来自定义汽车,就像在这个视频中一样(我的游戏是3d)。我已经完成了编程的所有其他部分,但坚持拖放功能。

如果我之前被问及我的英语,如果我犯了任何错误,我会道歉,因为这不是我的母语。

提前感谢您的时间和考虑。

https://www.youtube.com/watch?v=EdgvVZ7FlOg

1 个答案:

答案 0 :(得分:0)

好的,接下来是以下示例,用于移动GameObject。 Input.mousePosition可能在屏幕坐标中而不在世界坐标中。如果是这种情况,你需要先翻译它们(你会发现如何使用谷歌实现这一点 - 我已经阅读过关于此的帖子):

    private bool dragged = false;

// Always called when mouse is ober the object
void OnMouseOver () {
    //Check if left mouse button is pressed
    if(Input.GetMouseButtonDown(0)) {
        //mark object as dragged
        dragged = true;
    }
}

void Update() {
    if(dragged) {
        transform.position = Input.mousePosition;

        if(Input.GetMouseButtonUp(0)) {
            dragged = false;
        }
    }
}