Главным раздражителем в Grand Theft Auto Online являются даже не снующие на «Угнетателях» игроки, а невероятно долгие загрузки, за время которых можно успеть отлучиться от компьютера по своим делам. К счастью, среди игроков нашелся инженер, который выяснил в чём может быть дело.
Латвийский инженер под псевдонимом «t0st» решил разобраться в происходящем и провёл несколько экспериментов. Для начала «t0st» выяснил, что в среднем одиночная кампания загружается за 70 секунд, а загрузка мультиплеерного режима требует около 360 секунд, но в отдельных случаях она может занимать непростительно много времени.
Более производительная система уменьшает время загрузки GTA Online до 2 минут, но никак не влияет на скорость загрузки одиночного режима. Дальнейшее разбирательство показало, что большую часть времени GTA V при загрузке мультиплеера загружает на 100% одно из ядер процессора и не делает больше ничего.
Так как GTA V, как и большинство крупных проектов, содержит защиту от реверс-инжиниринга, чтобы отпугнуть пиратов, читеров и моддеров, то изучать пришлось закрытый исходный код. Разборка запутанного дампа показывает, «t0st» выяснил, что код работает неоптимально.
Огромное количество времени при загрузке игра тратит на парсинг гигантского массива почти весом почти 10MB. Внутри массива порядка 60 тысяч записей. Судя по некоторым переменным, это каталог всех товаров в игре. Благодаря имеющимся данным «t0st» удалось создать патч, устраняющий ненужные проверки и скорость загрузки увеличилась с примерно 360 секунд до приблизительно 110 секунд.
Энтузиаст надеется, что кто-нибудь из Rockstar Games обратит внимание на его публикацию. На исправление у любого разработчика не должно уйти больше суток.
Войдите чтобы оставить комментарий.
ВойтиЕще не зарегистрированы? Регистрация здесь.