Size: a a a

RU Rust GameDev — русскоговорящее сообщество

2020 November 25

MS

Mikola Summer Duck in RU Rust GameDev — русскоговорящее сообщество
Нормальный вопрос.
источник

A

Adevald in RU Rust GameDev — русскоговорящее сообщество
Mikola Summer Duck
Сколько каких-нибудь флоатов поместится в N мегабит? Для интуитивного понимания верхнего предела ответить на этот вопрос достаточно.
Ну можно и так.
источник

A

Adevald in RU Rust GameDev — русскоговорящее сообщество
Тогда скорее интересно вот что.
Настолько сложная в реализации и перфомансозатратная физика, которая не зависит от производительности?
Если так, то проверки можно делать только при  коллизии и других эвентах
источник

AK

Adam K in RU Rust GameDev — русскоговорящее сообщество
Adevald
А что насчёт синхронизации физики кстати?
источник

A

Adevald in RU Rust GameDev — русскоговорящее сообщество
Благодарствую
источник

AI

Alex Ilizarov in RU Rust GameDev — русскоговорящее сообщество
Mikola Summer Duck
Один: ты каждый кадр находишь изменения в энтитях и отсылаешь их по сети. Два: когда произошло какое-то событие ты формируешь енум общий между сервером и клиентом и отсылаешь по сети его.
Вот я хотел энтити по сети отправлять, но не все энтити умеют там в проперти превращаться )
источник

AI

Alex Ilizarov in RU Rust GameDev — русскоговорящее сообщество
Adevald
А что насчёт синхронизации физики кстати?
Если у тебя udp то детерминизм не поможет если ты позволяешь себе пакеты терять
источник

A

Adevald in RU Rust GameDev — русскоговорящее сообщество
я так понимаю предовтращение потреи пакетов весьма ресурсозатратное?
источник

AI

Alex Ilizarov in RU Rust GameDev — русскоговорящее сообщество
Adevald
я так понимаю предовтращение потреи пакетов весьма ресурсозатратное?
Я вообще тоже в неткоде не бум бум, но у тебя вообще гарантий нет что пакеты дойдут в udp. Ты можешь хоть 100 раз отправить и все уйдут мимо, а сервер в это время далеко вперед ушел
источник

AI

Alex Ilizarov in RU Rust GameDev — русскоговорящее сообщество
Так что какая то прямая синхронизация все равно нужна
источник

AI

Alex Ilizarov in RU Rust GameDev — русскоговорящее сообщество
Я в одну игрулю играл в которой lock-step симуляция, и там все равно разработчики синхронизировали состояние
источник

A

Adevald in RU Rust GameDev — русскоговорящее сообщество
я в протоколах вообще не разбираюсь
источник

A

Adevald in RU Rust GameDev — русскоговорящее сообщество
есть же еще TCP я так понимаю, он медленный?
источник

AI

Alex Ilizarov in RU Rust GameDev — русскоговорящее сообщество
Adevald
есть же еще TCP я так понимаю, он медленный?
у тебя есть udp в котором ты можно сказать просто выбрасываешь пакетик в интернет и сам udp никак не гарантирует доставку. И tcp который сначала устанавливает соединение, потом дает гарантии что пакеты будут приняты в том же порядке и что они вообще дошли если сеть позволит конечно
источник

AI

Alex Ilizarov in RU Rust GameDev — русскоговорящее сообщество
поверх udp в принципе можно построить аналог tcp, но стоит помнить что всяческое сетевое оборудование знает tcp и имеет для него всякие оптимизации.
источник

AI

Alex Ilizarov in RU Rust GameDev — русскоговорящее сообщество
tcp "медленный" потому что спрашивает другую сторону "тебе дошел вот этот пакет или нет?" и сохраняет очередность пакетов
источник

AI

Alex Ilizarov in RU Rust GameDev — русскоговорящее сообщество
отправленные по сети пакеты (любые) в принципе могут прийти не в том порядке в котором ты их отправлял
источник

AI

Alex Ilizarov in RU Rust GameDev — русскоговорящее сообщество
Вообще сетевая синхронизация это интересная тема в которой я слабо шарю.
источник

A

Adevald in RU Rust GameDev — русскоговорящее сообщество
да, и весьма сложная как я погляжу
источник

AI

Alex Ilizarov in RU Rust GameDev — русскоговорящее сообщество
Adevald
да, и весьма сложная как я погляжу
синхронизация и распределенные алгоритмы это вообще сложно
источник