Unity ARCore在网络上的简单对象移动

时间:2019-02-21 15:41:46

标签: c# android unity3d cloud

我目前正在使用Google的ARCore和云锚来开发android应用程序,并且在单击按钮时使对象在网络上更改位置时遇到了问题。问题必须出在实际按钮周围,因为我知道按钮可以运行该函数,但它并没有执行我想要的操作,如果我从播放器脚本中调用该函数,它就可以正常工作(但是我需要这样做点击按钮!),我已经坚持了好几天了。这里的一些启示将不胜感激。如果有人想知道,我只是在尝试编辑(如我所学习的)云锚的示例代码,因此源代码属于Google。 [我坚持使用的代码] [1]

我想要实现的是一个简单的转换。在对象上进行转换,并使此动作对客户端可见。

注意事项: 按钮具有网络身份 不同功能可进行任何类型的移动/旋转 播放器预制件具有网络标识 有问题的对象预制件具有网络转换组件

我的代码显示如下:

    [Command]
    public void CmdSpawnStar(Vector3 position, Quaternion rotation)
    {
        //if conditional that stops further object placement until touchCounter is reset to a 0
        if (touchCounter == 0)
        {


            // the object at hit pose
            PlaceableModel = Instantiate(StarPrefab, position, rotation);
            PlaceableModel.transform.Rotate(0, k_ModelRotation, 0, Space.Self);// Compensate for the hitPose rotation facing away from the raycast (i.e. camera).


            NetworkServer.Spawn(PlaceableModel);

            touchCounter++;

        } 

    }

    [Command]
    public void CmdFlyUp()
    {
        _ShowAndroidToastMessage("UP button is pressed");
        PlaceableModel.transform.Translate(0, 0.1f, 0);

    }

0 个答案:

没有答案