- PVSM.RU - https://www.pvsm.ru -

Need For Speed III Modern Patch: более 100 изменений без исходных кодов

imageКогда я впервые увидел Need For Speed III, от изумления я даже присел. Диск шёл в подарок к видеокарте моего первого компьютера, и это была первая трёхмерная игра в моей жизни. До этого момента я совершенно не подозревал, что графика в играх может быть настолько потрясающей. Это был далёкий 2000 год. Не счесть количество часов, потраченных на игру в сплитскрине за одной клавиатурой с моим двоюродным братом… Музыке — отдельное слово. Мне она настолько нравилась, что я даже записывал её на кассету, а с кассеты потом обратно на компьютер, при помощи стандартной «Звукозаписи». Это единственное что я тогда смог придумать. Слушал я эти записи по кругу по много часов подряд. MP3? Что это за странные буквы? Только WAV, только хардкор! :)

И вот, годы спустя, мне захотелось поиграть в эту игру. Но она не захотела работать на современном железе. Пришлось разбираться. В процессе захотелось ещё и поддержку широкоформатных разрешений… и понеслась! Немного увлёкся этим делом, и в результате получился внушительный патч. Более 8000 строк на ассемблере, исписано 18 листов А4, огромный список изменений…

Что нового?

  • Адекватная поддержка широкоформатных и больших разрешений. Игра без проблем работает на 1920×1200 и других разрешениях без искажения пропорций изображения.
  • Улучшена графика машин. На максимальных настройках у других машин текстуры в 2 раза лучшего качества, всегда крутятся колёса, никогда не исчезают зеркала и другие элементы (это происходило из-за отображения худших моделей при наличии более двух машин в кадре).
  • Увеличена дальность отрисовки в зеркале заднего вида. На максимальных настройках теперь объекты не исчезают так рано как раньше.
  • Потрясный эффект тумана и лучи света из фар теперь работают и при отрисовке через Direct3D 6. В оригинальной игре эти эффекты работали только на видеокартах 3dfx Voodoo через Glide API или при использовании эмуляции Glide API при помощи врапперов.
  • Улучшена поддержка 3dfx Voodoo / Glide API. Glide API в принципе не позволял использовать широкоформатные разрешения, и чтобы обойти это ограничение, Glide API было расширено совместно с автором враппера nGlide, в архив включён nGlide 1.04.2 с поддержкой этого расширения.
  • Переносимость. Игра больше не лезет в реестр за настройками, все системные настройки хранятся в ini-файле рядом с исполняемым файлом игры (он должен иметь такое же имя как и запускаемый exe-файл).
  • Добавлено несколько оптимизаций. Например, игра не делает копию музыкальных файлов при каждом старте и читает их сразу их исходного каталога, что экономит время и 10 мегабайт ресурса вашего SSD на каждый старт.
  • Исправлено несколько десятков ошибок и недоработок оригинальной версии. Например, индикация загрузки теперь намного более плавная.
  • Устранены многие проблемы совместимости с современными Windows, мешающие работе игры. Добавлены новые системные настройки.
  • Более сотни изменений в целом. Смотрите подробности в файле readme.

Ручная установка

  1. Скопируйте каталоги FEDATA и GAMEDATA с оригинального диска [1] в новый пустой каталог.
  2. Извлеките содержимое архива nfs3_vegmod.7z [2] (1.3МБ) в этот же каталог, с заменой файлов.
  3. Готово!

Готовая сборка

Да простят меня издатели за раздачу игры 1998 года, я собрал весь оригинальный контент из всех официальных изданий, и сделал сборку с предустановленным патчем. Скачать можно либо на Рутрекере [3], либо по публичному torrent-файлу [4] (а лучше стать на раздачу и там и там).

Скриншоты

Было и стало: у машин других игроков не исчезают зеркала и лучше текстуры

Need For Speed III Modern Patch: более 100 изменений без исходных кодов - 2

Было и стало: даже машинам трафика не удалось избежать улучшений

Need For Speed III Modern Patch: более 100 изменений без исходных кодов - 3

1280×720, без тумана

Need For Speed III Modern Patch: более 100 изменений без исходных кодов - 4

1280×720, с туманом

Need For Speed III Modern Patch: более 100 изменений без исходных кодов - 5

1280×720, ночь, туман...

Need For Speed III Modern Patch: более 100 изменений без исходных кодов - 6

Вы можете помочь сделать патч лучше!

Оригинальный код Need For Speed III очень старый, и он совершенно не адаптирован для работы в современных системах. Большинство проблем уже решено, но есть ещё над чем поработать. В оригинальной игре присутствует проблема, когда она намертво зависает при исполнении на многоядерном процессоре. Мне не удалось разобраться, откуда появляется этот deadlock (увы, недостаточно такого опыта), поэтому как обходное решение я заставляю игру работать только на одном ядре (настройка SingleProcAffinity в ini-файле). Но это плохое решение, потому что в некоторых случаях это приводит к потере кадров. Если у вас Need For Speed III вызывает тёплые воспоминания, есть опыт отладки таких проблем и вы готовы бросить себе такой вызов — буду рад получить информацию о проблемном коде. А дальше я его сам быстро перепишу, тут рука уже набита :)

Автор: VEG

Источник [5]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/windows/91949

Ссылки в тексте:

[1] оригинального диска: https://archive.org/download/Need_for_Speed_III_Hot_Pursuit_EAEng/NFS3.iso

[2] nfs3_vegmod.7z: http://veg.by/files/nfs3/nfs3_vegmod.7z

[3] на Рутрекере: http://rutracker.org/forum/viewtopic.php?t=5011126

[4] публичному torrent-файлу: http://veg.by/files/nfs3/nfs3_modern_bundle.torrent

[5] Источник: http://geektimes.ru/post/251854/