Несколько месяцев назад был вот этот охуительный баг.
Как он получился?
Декали, ну, с помощью которых юные танкисты превращаются в беспощадных ебителей боевых подруг, по мере использования в сессии загружаются в атлас на видеопамяти каждого игрока.
Атлас - это большая текстура, которая на себе содержит кучу других текстур. А для их правильной адресации нужно знать офсеты (текстурные координаты каждой из этих "внутренних" текстур в самом атласе).
Раньше эти текстурные координаты в виде наборов float4 передавались непосредственно на рендер каждого танка. У танка 4 декали — ну и туда передается 4 float4.
Эту штуку было решено оптимизировать, ведь зачем каждый раз передавать эти офсеты с CPU на GPU, если их можно просто хранить в видеопамяти. И адресовать по номеру, в итоге передавая не 4 числа на декаль, а всего одно (индекс).
А в видеопамяти хранить массив с офсетами.
Но нюанс оказался в том, что атлас переодически перестраивался с нуля (по мере присоединения игроков со своими декалями) в сессию. Из-за чего офсеты менялись.
В то время как новая система делала ОХУИТЕЛЬНО смелое предположение, что меняться они не будут.
По итогу Я РУССКИЙ!
https://www.youtube.com/shorts/XvVUfgCj56Y