Unity3D - Как я могу телепортировать / толкать объект с одной стороны экрана на другую? - PullRequest
0 голосов
/ 21 мая 2018

Я новичок в Unity и немного озадачен тем, как мне поступить.У меня есть модель палки, за которой камера будет бесконечно двигаться вверх и вниз вдоль оси Y и стоять неподвижно вдоль оси X.Я пытаюсь сделать следующее: когда модель пройдет правую часть обзора камеры, она появится слева.и я сделаю то же самое, когда он пройдет мимо левой стороны.Вот очень грубое изображение, изображающее то, чего я хотел бы достичь

enter image description here

Мне просто нужна помощь с телепортацией модели, а не камера, следующая за моделью.

Ответы [ 2 ]

0 голосов
/ 03 июня 2018

Вот мое решение (спасибо AustinWBryan)

    if (IsOutOfBounds(active))
    {
        inactive.position = new Vector3(0,0,0);
        inactive.rotation = active.rotation;
        inactiveRB.velocity = new Vector3(0,0,0);
        inactiveRB.angularVelocity = activeRB.angularVelocity;
        activeSword.SetActive(false);
        inactiveSword.SetActive(true);
    }
0 голосов
/ 21 мая 2018

Что вы можете сделать, это когда модель начинает выходить из экрана, порождает другой экземпляр этого на другой стороне и передает статистику.Теперь, когда один движется, другой движется, и это создает иллюзию, что его окружают.

Когда один из них выходит из экрана, он разрушается.

Если создание нескольких экземпляров так дорого, то вы можете просто использовать только два экземпляра и отключить / включить их в зависимости от того, где они находятся.на экране.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...