Комментарии 1
Реально интерестная статья, но хотел бы упомянуть тот момент который меня смутил в псевдокоде. В самом начале есть псевдокод projectile, и мне кажется что он слишком упрощён. Вы создаёте пулю и задаёте ей линейную скорость по направлению выстрела, что хоть и является физически верным, но создаёт некоторые проблемы с синхронизацией.
Пулю в таком случае стоит задавать вектором (как раз начальной скорости) и временем начала выстрела, что будет куда проще отправить на сервер и синхронизировать, а так-же меньше создаст неопределённого поведения (в целом даже без мультиплеера не стоит использовать встроенную физику, когда можно обойтись простым квадратным уравнением).
Так-же стоит использовать паттерн обджект-пул, но это в целом тут реально минимальное допущение в пользу простоты кода.

Стрельба в шутерах по-простому: от мгновенного луча до отката времени на сервере