Многопользовательский куб Unity Auto Move? - PullRequest
0 голосов
/ 03 мая 2018

Я следовал официальному Руководству по многопользовательской игре Unity ниже, и все работает, за исключением того факта, что, когда я запускаю два экземпляра на одном компьютере (один в режиме запуска сборки, а другой в режиме воспроизведения), персонажи по какой-то причине автоматически перемещаются по кругу.

Я понятия не имею, почему это так, поскольку я точно следовал учебному пособию, если только не пропустил что-то: P Я в настоящее время на шаге 9 (определяю местного игрока), и я остановился там, потому что мои игроки продолжают двигаться по кругу.

Чтобы прояснить, они не вращаются на месте, они ходят по кругу. Просто представьте себе человека, идущего по пунктирному кругу на полу, та же идея.

Эта проблема возникает, только когда я запускаю два экземпляра (режим запуска сборки и режим игры в единстве). если я попробую только режим воспроизведения в единстве, все будет отлично.

Кто-нибудь испытывал это раньше?

Учебное пособие по многопользовательской игре Unity : https://unity3d.com/learn/tutorials/topics/multiplayer-networking/network-manager?playlist=29690

Я нахожусь на версии 2017.2.0f3 <- может быть, поэтому? мне обновить до другого патча? </p>

Заранее спасибо

Где я порождаю персонажей Where I spawn the characters

строить и бегать, игрок просто автоматически движется по кругу build and run, player just spins in circles automatically

оба строят бег и режим игры, они оба снова автоматически перемещаются по кругу both build run and play mode, they both again spin in circles automatically

Ответы [ 2 ]

0 голосов
/ 25 октября 2018

Проблема, связанная с автоматическим перемещением вашего персонажа, заключается в том, что к вашему компьютеру подключено что-то, что действует как контроллер / джойстик. Зайдите в настройки элементов управления и установите все джойстики на последний джойстик #. Убедитесь, что вы установили это для всех вертикальных и горизонтальных перемещений. Это должно сработать.

Например, если вы используете 3D-мышь, такую ​​как 3D-соединение, она может действовать как джойстик / контроллер и автоматически перемещать вашего персонажа.

0 голосов
/ 04 мая 2018

Я вижу первую проблему в вашем коде:

PlayerController.cs строка 36, вы написали

   var bullet = (GameObject)Instantiate(BulletPrefab, BulletSpawn.transform.position, BulletSpawn.transform.rotation);

должно быть

   var bullet = (GameObject)Instantiate(BulletPrefab, BulletSpawn.position, BulletSpawn.rotation);

Поскольку BulletSpawn уже является Transform. В противном случае пули могут не выстрелить в направлении пистолета.

У меня нет игрока, который двигается без нажатия клавиши клавиатуры.

Вот скриншот работы 2 build build: enter image description here

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

Может, проблема в твоей клавиатуре или в менеджере единства? Поскольку вы используете Input.GetAxis, отметьте это https://docs.unity3d.com/Manual/class-InputManager.html

...