Unity ARCore простое перемещение объектов по сети - PullRequest
0 голосов
/ 21 февраля 2019

В настоящее время я занимаюсь разработкой приложения для Android с использованием ARCore и облачных привязок Google, и у меня возникла проблема с получением объектов для изменения местоположения в сети при нажатии кнопки.Проблема должна быть где-то вокруг фактической кнопки, потому что я знаю, что кнопка запускает функцию, но она не выполняет то, что я хочу, если я вызываю функцию из скрипта плеера, она работает нормально (но мне нужно, чтобы это работалона нажатие кнопки!) и я застрял с ним в течение нескольких дней.Некоторое просвещение здесь будет очень цениться.Если кому-то интересно, я просто пытаюсь отредактировать (как я учусь) пример кода облачных якорей, поэтому исходный код принадлежит 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);

    }
...