Size: a a a

2020 April 26

SB

Space Boost in unity3d.ru
Можно ли в юнити просчитать физику наперед? Если я двигаю персонажа Translate в каждом FixexUpdate, могу ли я узнать его положение через 0.1с а не именно в данный момент? Было бы просто если бы не было препятствий, но может быть такое что я двигаю его на 0.1 но он не двинется т.к там препятствие, и это тоже надо учесть.
источник

DP

Dimas Prima in unity3d.ru
Да кста, им как инет дали так они в геймдев и тик ток пошли ))
источник

👨n

👨🏼‍💻 Pírαt neωTíme 🛩... in unity3d.ru
Space Boost
Можно ли в юнити просчитать физику наперед? Если я двигаю персонажа Translate в каждом FixexUpdate, могу ли я узнать его положение через 0.1с а не именно в данный момент? Было бы просто если бы не было препятствий, но может быть такое что я двигаю его на 0.1 но он не двинется т.к там препятствие, и это тоже надо учесть.
а смысл в чем? заранее предугадывать действия для срабатывая триггеров или что?
источник

👨n

👨🏼‍💻 Pírαt neωTíme 🛩... in unity3d.ru
или избегать багов при быстрых движениях?
источник

SB

Space Boost in unity3d.ru
👨🏼‍💻 Pírαt neωTíme 🛩
а смысл в чем? заранее предугадывать действия для срабатывая триггеров или что?
Смысл в том что игра мультиплеерная и отправлять текущую позицию нельзя т.к у других игроков будут задержки в отрисовка персонажа, я хочу отправлять на сервер непосредственно будущую позицию а не текущую
источник

ST

Semyon Tarakanov in unity3d.ru
Dimas Prima
Да кста, им как инет дали так они в геймдев и тик ток пошли ))
Годненько
источник

👨n

👨🏼‍💻 Pírαt neωTíme 🛩... in unity3d.ru
Space Boost
Смысл в том что игра мультиплеерная и отправлять текущую позицию нельзя т.к у других игроков будут задержки в отрисовка персонажа, я хочу отправлять на сервер непосредственно будущую позицию а не текущую
уууф... моё мнение что это не лучшее решение.. баги и лаги не пропадут, а нагрузка сильно возрастёт..
Попробуй делать синхронизацию передавая действия игрока, а не его события в физике. По сути будет то что ты хочешь, но объём данных гораздо меньше и лишних вычислений нет. Просто типа персонаж бежит пока от сервера не придёт иная команда поведения игрока.. а вот если это шутер.. то надо будет пересмотреть информацию о том как в КС это делали
источник

ST

Semyon Tarakanov in unity3d.ru
Я хотел бы сам запилить, без подключения асетов
источник

👨n

👨🏼‍💻 Pírαt neωTíme 🛩... in unity3d.ru
там вроде на сервере хранят состояние положения персонажей, а при выстреле/ударе, строят луч и смотрят точку куда удар приходится, и на сервере проверяют.. но могу ошибаться
источник

SB

Space Boost in unity3d.ru
👨🏼‍💻 Pírαt neωTíme 🛩
уууф... моё мнение что это не лучшее решение.. баги и лаги не пропадут, а нагрузка сильно возрастёт..
Попробуй делать синхронизацию передавая действия игрока, а не его события в физике. По сути будет то что ты хочешь, но объём данных гораздо меньше и лишних вычислений нет. Просто типа персонаж бежит пока от сервера не придёт иная команда поведения игрока.. а вот если это шутер.. то надо будет пересмотреть информацию о том как в КС это делали
У меня так и было изначально
источник

SB

Space Boost in unity3d.ru
Но пришлось отказаться т.к невозможно сделать физику таким образом
источник

SB

Space Boost in unity3d.ru
Все выглядит супер топорно
источник

SB

Space Boost in unity3d.ru
Сервер не юнити, сервер не может просчитать физику
источник

👨n

👨🏼‍💻 Pírαt neωTíme 🛩... in unity3d.ru
Space Boost
Но пришлось отказаться т.к невозможно сделать физику таким образом
но ты же не можешь вообще всю физику транслировать) это уже будет какое-то динамическое построение анимации и пересылка через сервер всем игрокам)
источник

SB

Space Boost in unity3d.ru
👨🏼‍💻 Pírαt neωTíme 🛩
но ты же не можешь вообще всю физику транслировать) это уже будет какое-то динамическое построение анимации и пересылка через сервер всем игрокам)
Так физику локально только
источник

SB

Space Boost in unity3d.ru
А передается позиция
источник

👨n

👨🏼‍💻 Pírαt neωTíme 🛩... in unity3d.ru
Space Boost
Все выглядит супер топорно
да почти у всех игр такая проблема, только каждый по разному смазывает её) Кто-то останавливает персонажа, кто-то продолжает его действие, пока положение не синхронизируется
источник

B[

Bars0_o [SpamBlock] in unity3d.ru
А что если создать обьект
источник

B[

Bars0_o [SpamBlock] in unity3d.ru
Пустой с физикой
И отдельно объект с текстурой перса
источник

B[

Bars0_o [SpamBlock] in unity3d.ru
И таскать один за другим
источник