Unity VR UNET делает ПК и VR одним и тем же плеером - PullRequest
0 голосов
/ 19 сентября 2019

Извините, что НЕТ КОДА, чтобы показать, но это очень архитектурный вопрос.

Прежде всего, я должен сказать, что я должен использовать UNET, и да, я знаю, что это устарело, ноЯ не играю в сетевую игру, которая позволит пользователям присоединиться к игре.Я объясню: у меня есть проект, который связан с оборудованием.На ПК запущен мозг Unity, который контролирует оборудование и получает от него информацию и так далее.Эта часть работает отлично.

Дело в том, что мне нужно подключить очки Simple VR, чтобы осмотреться (ТОЛЬКО ДЛЯ ПРОСМОТРА ВО ВРЕМЕНИ И "НАЖАТЬ" кнопку запуска) и ничего больше, все будет по-прежнему контролироватьсяПК (который будет запускать сервер UNET при необходимости) и главный клиент, который перемещается, получает входные данные и делает что-то, а виртуальная реальность должна быть своего рода «ведомой» просто для осмотра.Я хочу UNET, потому что единство, используемое для проекта - 18.3.14f1, и да, я знаю, что он старый, но это наследие, которое я пока не могу изменить, и мне не нужен сервер-сервер, как все оборудованиенаходится в той же локальной сети.

Из того, что я могу понять, В клиенте / сервере каждый клиент (ПК и VR) ОТКРЫВАЕТ нового клиента, поэтому, когда у клиента в VR не будет того же клиента, который находится на ПК,Это делает вещи очень сложными.

Могу ли я иметь какую-то MASTER / SLAVE вещь, которая будет контролировать оба?Если нет, я должен сделать все на сервере и отправить все обоим клиентам?Или мне все же следует придерживаться обычного подхода и отправлять все с одного клиента на другой (изменить весь код в приложении)?

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

10x.

1 Ответ

1 голос
/ 19 сентября 2019

Прежде всего, я должен сказать, что я должен использовать UNET, и да, я знаю, что он устарел, но я не делаю настоящую сетевую игру, которая позволит пользователям присоединиться к игре.Я объясню: у меня есть проект, который связан с оборудованием.На ПК запущен мозг Unity, который контролирует оборудование и получает от него информацию и так далее.Эта часть отлично работает.

Вы можете использовать Зеркало , чтобы у вас не возникало проблем, когда Unity удаляет UNET из двигателя.

Дело в том, что мне нужно подключить очки Simple VR, чтобы осмотреться (ТОЛЬКО ДЛЯ ПРОСМОТРА ВОКРУГА И "НАЖАТЬ" кнопку запуска) и ничего больше, все равно все будет контролироваться ПК (чтопри необходимости запустит сервер UNET) и основного клиента, который перемещает и получает входные данные и делает что-то, а виртуальная реальность должна быть своего рода «ведомой» просто для осмотра.

Это не такUNET работает.Основная идея заключается в том, что игра запускается одновременно на каждом устройстве.Ваши VR-очки должны будут запустить игру, чтобы иметь возможность ее визуализировать.С UNET вы просто синхронизируете игровое состояние и убедитесь, что каждый подключенный экземпляр имеет одинаковое состояние.

Из того, что я могу понять, В клиенте / сервере каждый клиент (ПК и VR) ОТКРЫВАЕТ нового клиента, поэтому, когда клиент в VR не будет иметь того же клиента, который находится на ПК.Это делает вещи очень сложными.

Могу ли я иметь какую-то вещь MASTER / SLAVE, которая будет контролировать оба?Если нет, я должен сделать все на сервере и отправить все обоим клиентам?Или мне все же следует придерживаться обычного подхода и отправлять все с одного клиента на другой (изменить весь код в приложении)?

Каждое подключенное устройство может порождать нового игрока на каждом подключенном экземпляреигра.Я думаю, что это поможет вам различать VR-очки и состояния синхронизации между клиентами.

Не смог найти ответ на этот вопрос, я не думаю, что это очень часто используемый сценарий.

Вы не заблокированы в UNET.Иногда целесообразно настроить собственную TCP- или UDP-связь.

Описание вашего UseCase не ясно.Должен ли VR Glass работать независимо, и вы хотите, чтобы на ПК была вся рабочая нагрузка?Или очки VR подключены для создания общего опыта?Какова роль ПК?Что там должно быть показано?

...