Полное описание RivaTuner.
Пресеты и патч-скрипты программы.

07.05.2004


Введение

Данный материал открывает цикл статей, посвященный замечательной программе для настройки видеоадаптеров NVIDIA и ATI - RivaTuner под общим названием "Полное описание RivaTuner". Ниже мы рассмотрим дополнительные возможности программы, которые не входят в её интерфейс. Это патч-скрипты и пресеты, распространяемые вместе с программой.



Патч-скрипты

В этой главе мы рассмотрим патч-скрипты, распространяемые вместе с программой. Найти их можно в папке RivaTuner\PatchScripts\NVIDIA и RivaTuner\PatchScripts\ATI. Некоторые из них уже морально устарели и не имеют такой уж сильной актуальности, некоторые представляют интерес лишь небольшой аудитории пользователей программы. Задача, которую я ставлю перед собой в этом материале - максимально доступно и по-русски (сама программа, как известно, имеет англоязычный интерфейс) охарактеризовать каждый из патч-скриптов. Ну а Вам, уважаемые читатели, остается только выбрать из списка, представленного ниже, необходимые.

Важное примечание: бездумное использование некоторых скриптов может привести к фатальным последствиям (само собой, под фатальными понимается не "смерть" железа, а проблемы с загрузкой ОС). Например, сложно ожидать нормальной работы системы, если форсировать ID от RADEON 9700PRO на каком-нибудь RADEON 8500LE.
Для удобства я решил разделить патч-скрипты по тому же принципу, что и автор программы. Это название фирмы, производящей видеоадаптеры.



NVIDIA

AnisoBoosterD3D

Этот патч позволяет Вам разблокировать функции оптимизации анизотропной фильтрации на текстурных стадиях в Direct3D, по умолчанию применяемые на видеокартах семейства GeForce4 Ti, для видеокарт GeForce3 и её вариантов. Алгоритм оптимизации включает в себя упрощения степени анизотропии (вплоть до её отключения) на некоторых текстурных стадиях. Применяется для драйверов версий 28.32 - 45.xx.

Важная информация: из-за системы runtime декодирования и защиты от внесения изменений в код драйвера, введенной в Детонаторе 44.67, Direct3D драйвер должен быть предварительно декодирован и разблокирован до установки любых патч-скриптов.

В RivaTuner включены средства декодирования (при помощи плагина DetonatorFXDecoder и патч-скрипта DetonatorFXAntiprotector) для Direct3D драйверов версий 45.20 - 52.16 (Windows2000/XP), которые позволяют устанавливать любые пачт-скрипты на этих драйверах.
Direct3D драйвер декодируется автоматически при установке патч-скрипта на драйвер, поддерживаемый плагин модулем DetonatorFXDecoder. Однако скрипт DetonatorFXAntiprotector должен быть установлен вручную после установки любого патча на защищенном драйвере.



AnisoBoosterOGL

Этот патч-скрипт позволяет повысить скорость работы алгоритма оптимизации анизотропной фильтрации OpenGL, который впервые появился в Детонаторе 28.90. По умолчанию драйвер OpenGL использует сложный алгоритм отброса полигонов и отключает анизотропию для некоторых текстур, фильтруемых непервичным TMU (Texture Mаррing Unit- модуль наложения текстур), когда драйвер обнаруживает, что это не имеет никакого воздействия на качество изображения.
К сожалению, этот алгоритм игнорируется в приложениях, которые могут менять степень анизотропии самостоятельно. Также этот алгоритм полностью игнорируется на Quadro-картах.
Скрипт AnisoBoosterOGL устраняет все эти ограничения и позволяет расширить диапазон приложений и видеоадаптеров, которые могут получить ускорение анизотропии от такого способа оптимизации. Также, патч-скрипт позволяет OpenGL драйверу использовать алгоритм отброса полигонов для первичного TMU (Texture Mаррing Unit- модуль наложения текстур) и увеличивает скорость анизотропной фильтрации до 10 % без ощутимого ухудшения качества изображения.



DetonatorFXAntiprotector

Этот скрипт позволяет Вам блокировать защиту в Детонаторе 45.xx и ранних версиях ForceWare Direct3D-драйверах. Необходим для корректной установки остальных патч-скриптов.

Важная информация: из-за системы runtime декодирования и защиты от внесения изменений в код драйвера, введенной в Детонаторе 44.67, Direct3D драйвер должен быть предварительно декодирован и разблокирован до установки любых патч-скриптов.

В RivaTuner включены средства декодирования (при помощи плагина DetonatorFXDecoder и патч-скрипта DetonatorFXAntiprotector) для Direct3D драйверов версий 45.20 - 52.16 (Windows2000/XP), которые позволяют устанавливать любые пачт-скрипты на этих драйверах.
Direct3D драйвер декодируется автоматически при установке патч-скрипта на драйвер, поддерживаемый плагин модулем DetonatorFXDecoder.



DetonatorFXDecoder

Включает в себя два патч-скрипта для декодирования файлов драйвера: nv4_disp.dll decoder и nv4_mini.sys decoder.



ForceWareAntiprotector

Этот патч-скрипт позволяет Вам блокировать защиту в ForceWare версии 53.30 или более новом файла минипорта - nv4_mini.sys.



LODBiasFix

Этот патч-скрипт устраняет ошибку, существующую в Детонаторах 23.10 - 52.14 и позволяет драйверу устанавливать отрицательный Direct3D mipmap LOD Bias правильно. В противном случае драйвер вернет отрицательное значение в "0", что сделает невозможным улучшения качества изображения.

Обратите внимание: проблема устранена в ForceWare 52.16, так что Вы не должны использовать этот скрипт, если Вы используете ForceWare 52.16 или более новую версию.

Важная информация: из-за системы runtime декодирования и защиты от внесения изменений в код драйвера, введенной в Детонаторе 44.67, Direct3D драйвер должен быть предварительно декодирован и разблокирован до установки любых патч-скриптов.

В RivaTuner включены средства декодирования (при помощи плагина DetonatorFXDecoder и патч-скрипта DetonatorFXAntiprotector) для Direct3D драйверов версий 45.20 - 52.16 (Windows2000/XP), которые позволяют устанавливать любые пачт-скрипты на этих драйверах.
Direct3D драйвер декодируется автоматически при установке патч-скрипта на драйвер, поддерживаемый плагин модулем DetonatorFXDecoder. Однако скрипт DetonatorFXAntiprotector должен быть установлен вручную после установки любого патча на защищенном драйвере.



NV25AALines

Этот патч-скрипт позволяет использовать аппаратный антиалиасинг линий на видеокартах на базе чипа NV25 ревизии A2.
Вы можете использовать этот скрипт, для блокирования этой функции на видеокартах на базе чипа NV25 ревизии A3 и для эмуляции производительности этого же чипа ревизии А2.
Практическое применение: при программной переделке вашего видеоадаптера на чипе NV25 ревизии А2 в Quadro.



NVStrap antiprotection

Этот патч-скрипт блокирует защиту от NVStrap драйвера, которая была введена в Детонаторе 30.82.

Важная информация: из-за системы runtime декодирования и защиты от внесения изменений в код драйвера, введенной в Детонаторе 44.67, Direct3D драйвер должен быть предварительно декодирован и разблокирован до установки любых патч-скриптов.

В RivaTuner включены средства декодирования (при помощи плагина DetonatorFXDecoder и патч-скрипта DetonatorFXAntiprotector) для Direct3D драйверов версий 45.20 - 52.16 (Windows2000/XP), которые позволяют устанавливать любые пачт-скрипты на этих драйверах.
Direct3D драйвер декодируется автоматически при установке патч-скрипта на драйвер, поддерживаемый плагин модулем DetonatorFXDecoder. Однако скрипт DetonatorFXAntiprotector должен быть установлен вручную после установки любого патча на защищенном драйвере.

Напомню, что NVStrap драйвер используется для переделки в SoftQuadro, а так же позволяет форсировать поддержку Fast Write и Side Band даже если это не предусмотрено BIOS видеокарты.

Примечание: защита от NVStrap влияет только на перепрограммирование PCI DeviceID. Если NVStrap используется для управления FW/SBA, установка Nvstrap antiprotection необязательна.



NvXTInitFix

Устраняет известную ошибку драйверов Detonator под Windows 2000 , исправленную в версии 12.90. Из-за неправильного способа проверки валидности частоты памяти, функция NvXTInit всегда сбрасывает частоту памяти к стандартным настройкам, если она выше 400 МГц. Проблема вызвана ошибкой в алгоритме определения типа видеопамяти. Драйверы Windows 9x используют следующий интервал для подтверждения частоты памяти:

  • 80-400 МГц для видеокарт с SDR памятью
  • 80-800 МГц для видеокарт с DDR памятью

Драйвер Windows 2000 не может правильно определить тип видеопамяти потому что он проверяет только ID устройства GeForce DDR. Таким образом, драйвер определяет остальные видеокарты как SDR и использует неправильный интервал подтверждения на DDR платах.
Установка патч-скрипта необходима ТОЛЬКО если вы используете версию драйвера ниже, чем 12.90.



RTPatchFix

Этот патч-скрипт разблокирует D3DDEVCAPS_QUINTICRTPATCHES и D3DDEVCAPS_RTPATCHES возможности в драйвере, которые были отключены в Детонаторе 21.xx и выше.

Предупреждение: этот патч-скрипт не поддерживает Детонаторы 4x.xx и выше!



S3TCFixPack

Все карты серии GeForce поддерживают сжатие текстур DXTC (известные также как S3TC) и могут аппаратно распаковывать текстуры DXTC и S3TC.
Декомпрессор DXT1, применяемый на всех графических процессорах GeForce, использует 16-битную интерполяцию цвета текселей. Это вызывает эффект резких цветовых переходов в текстурах с плавным градиентом (например, в текстурах неба в Quake III). Остальные форматы DXTC использует 32-битную интерполяцию цвета текселей и дают более высокое качество изображения, за счёт небольшого падения быстродействия. Современные игры (например, Serious Sam) могут позволять пользователю выбирать формат сжатия. Однако другие игры, которые были выпущены до обнаружения этой проблемы, могут давать низкое качество изображения на видеоадаптерах GeForce в тех случаях, когда применяется сжатие текстур.
Для таких игр NVIDIA исправила проблему со сжатием текстур S3TC(DXT1). Алгоритм, который можно активировать через параметры OpenGL в RivaTuner, работает в драйвере Detonator, начиная с версии 6.47. Это исправление вынуждает драйвер создавать текстуры DXT3 вместо DXT1. Но если Вы используете старые драйвера, Вы можете вызвать формат сжатия текстур на уровне приложения при помощи скриптов S3TCFixPack.
Этот патч-скрипт позволяет Quake 3 использовать любой из четырёх поддерживаемых форматов S3TC (по умолчанию используется формат GL_RGB4_S3TC).



SoftQuadro4

Этот патч-скрипт позволяет Вам блокировать защиту от изменения PCI DeviceID на NV17/NV18/NV25/NV28 и разблокировать большинство профессиональных возможностей на этих графических процессорах на Детонаторах версий 27.00 - 42.51.

Важная информация: переделка в Quadro ничего не дает в плане улучшение производительности в игровых 3D-приложениях, используйте этот патч-скрипт, только если Вы точно знаете для каких целей Вы собираетесь использовать появившиеся возможности.

Подробную инструкцию по установке патч-скрипта и другим мероприятиям, необходимым для успешной переделки и использованию профессиональных возможностей Вашего видеоадаптера читайте в этой статье от автора программы Алексея Николайчука.



ImageSharpeningBugfix

Адресован пользователям, использующим драйвера семейства 56.хх.
Панель управления в драйверах этих версий имеет баг, приводящий к некорректной активации технологии увеличения резкости изображения (Image sharpening - это одна из компонент технологии DVC3.0) при каждом обращении к панели драйвера. Данный патч-скрипт исправляет этот баг.

Примечание: NVIDIA устранила проблему в 56.64. Установка патч-скриптов достаточно проста, благодаря дружественному и продуманному интерфейсу. В качестве примера, рассмотрим установку патча AnisoBoosterOGL.

  1. Установите и запустите RivaTuner хотя бы один раз, если вы никогда не пользовались этой утилитой ранее. Это необходимо для того, чтобы зарегистрировать в системе RivaTuner Script (*.rts) файлы и позволить Вам запускать их прямо из проводника операционной системы. Так же можно производить действия по установке патч-скриптов используя вкладку программы "PowerUser".
  2. Распакуйте дистрибутив драйвера Detonator в отдельную папку. Чтобы не ставить в тупик неопытных пользователей, отмечу, что некоторые версии драйверов распространяются в виде исполняемого файла, но, тем не менее, они представляют собой самораспаковывающийся CAB-архив, и его тоже можно распаковать любым архиватором, поддерживающим этот формат (например, WinZip или WinRAR).
    Если Вы используете Detonator 30.82 и старше под Windows 2000/XP, то после распаковки возможен вариант с отличным от привычного расширения файла. Например, nv4_disp.dl_ вместо nv4_disp.dll по причине того, что, начиная с этой версии, NVIDIA упаковывает каждый файл, входящий в дистрибутив драйвера. Однако это никоим образом не помешает процедуре модификации файла, поскольку интерпретатор скрипта работает и с таким форматом файла. При этом пользователь должен явно указать на необходимость данных действий, выбрав тип файла с соответствующим расширением в окне программы.
  3. Итак, собственно процесс установки скрипта:
    на закладке "Power User" нажимаем на кнопку "Open patch script" (можно так же использовать и проводник Windows), в появившемся окне находим папку PatchScripts/NVIDIA/ AnisoBoosterOGL и выбираем " AnisoBoosterOGL w2k" для Windows2000/XP или "AnisoBoosterOGL w9x" для Windows98/Me соответственно. В появившемся окне нажимаем кнопку "Continue" и далее выбираем в меню "Тип файлов" nvOpenGL.dl_ (для Win 9x/ME оставляем по умолчанию nvOpenGL.dll) и указываем папку с разархивированным драйвером. Кликаем мышью на файл, нажимаем кнопку "Открыть". После чего в окне состояния видим следующие строки:

    Browsing for file nvopengl.dll... selected 4.13.01.3082, 2686976 bytes
    0002309b> matched sequence has been replaced
    c6 87 fe 00 00 00 00
    90 90 90 90 90 90 90
    000f64f7> matched sequence has been replaced
    c6 87 fe 00 00 00 00
    90 90 90 90 90 90 90
    001f5a7b> matched sequence has been replaced
    74 2d 83 bf 28 e1 00 00 00 74 24 80 7a 78 01 75 1e 80 be fe 00 00 00 00 74 15 83 b8 6c 54 00 00 00 75 0c f6 80 ed 54 00 00 40 75 03
    90 90 83 bf 28 e1 00 00 00 74 24 80 7a 78 01 75 1e 80 be fe 00 00 00 00 74 15 83 b8 6c 54 00 00 00 75 0c f6 80 ed 54 00 00 40 90 90
    File has been successfully patched and saved as nvOpenGL.dll
    Backup copy has been saved as nvopengl.old

После чего в директории драйвера появятся пропатченный nvOpenGL.dll и оригинальный файл, сохраненный под именем nvopengl.old. После этого драйвер готов к установке обычным способом.
Важно отметить, что встроенный в RivaTuner интерпретатор скриптов использует средства операционной системы для регенерации контрольной суммы системных файлов, поэтому не пытайтесь запустить скрипт для Windows 2000/XP из-под Windows 9x и, наоборот, во избежание генерации неправильной контрольной суммы. Удостоверьтесь, что отчёт выполнения скрипта не содержит сообщений о фатальных ошибках.



ATI

ATIOverclockingAntiprotection

Этот патч-скрипт позволяет Вам удалять блокировку разгона драйвера в non-Pro версиях ATI RV250/RV280/R300/RV350. В качестве примера рассмотрим разблокирование разгона видеокарты Connect3D ATI Radeon 9600 128Mb/128bit, ОС - Windows XP, драйвер - Catalist версии 4.3.

Драйвер подготавливался совершенно аналогично, рассмотренному ранее способу. Так же аналогично рассмотренному выше, выбираем "ATIOverclockingAntiprotection w2k" для Windows2000/XP, "ATIOverclockingAntiprotection w9x" - для Windows98/Me. В появившемся окне нажимаем кнопку "Continue", затем выбираем в меню тип файлов ati2mtag.sy_ , указываем папку с разархивированным драйвером, директорию где находится файл ati2mtag.sy_(в нашем случае C:\ATI\SUPPORT\wxp-mce-7-991-040224m-013831c\Driver\2KXP_INF\B_14006\ati2mtag.sy_), нажимаем ОК в ответ на появившееся окошко. В окне состояния получаем следующее:

Browsing for file ati2mtag.sys... compressed file selected
Depacking ati2mtag.sy_... succeeded
Browsing for file ati2mtag.sys... selected 6.14.10.6430, 679424 bytes
WARNING: Certified patch script not found, using common patch script...
00098e47> matched sequence has been replaced
c1 e8 1b 83 e0 0f 83 e9 2c 6a 01 5b 0f 84 f8 00 00 00 49 0f 84 bd 00 00 00 49 49 0f 84 9d 00 00 00 49 49 75
c1 e8 1b 83 e0 0f 83 e9 2c 6a 01 5b 90 90 90 90 90 90 49 90 90 90 90 90 90 49 49 90 90 90 90 90 90 49 49 eb
File has been successfully patched and saved as ati2mtag.sys
Backup copy has been saved as ati2mtag.old


после этого возвращаемся в любом файловом менеджере в папку C:\ATI\SUPPORT\wxp-mce-7-991-040224m-013831c\Driver\2KXP_INF\B_14006\ и меняем расширение файла ati2mtag.sys на ati2mtag.sy_ . После чего идем в папку C:\ATI\SUPPORT\wxp-mce-7-991-040224m-013831c\Driver (если мы хотим установить только драйвер) или C:\ATI\SUPPORT\wxp-mce-7-991-040224m-013831c (если хотим установить драйвер, контрольную панель) и запускаем файл Setup.exe . После установки драйвера для разгона воспользуемся программой RivaTuner.



SoftFireGL

Данный пакет патч-скриптов предназначен для программной переделки видеоадаптеров на базе R300 в профессиональный видеоускоритель FireGL Z1/X1/T2/X2.

Для более подробного ознакомления с методикой переделки и полученных результатах предлагаю внимательно прочитать статью Исследование возможностей программной переделки RADEON 9x00 в FireGL Z1/X1.



SoftR9x00

Этот патч-скрипт позволяет разблокировать 8 пиксельных конвейеров на ATI Radeon 9500/9800SE. Это теоретически позволяет получить из любого 128- битного Radeon 9500 - Radeon 9500 PRO, из любого 256-битного Radeon 9500- Radeon 9700 PRO и из любого Radeon 9800SE - Radeon 9800 PRO (128- либо 256-бит в зависимости от PCB). Однако, на практике возможен и вариант того, что Вы не сможете получить желаемый результат из-за аппаратных проблем, связанных с "битыми" отключенными конвейерами, нестандартным дизайном платы и т.п.

Для более подробного ознакомления с методикой переделки и полученных результатах, так же предлагаю внимательно прочитать статью Алексея Николайчука FAQ по скрипту SoftR9x00 . А также ознакомиться с исследованиями наших коллег с сайта Radeon2.ru в форуме Известные решения.



Пресеты: краткое описание

В этой главе мы рассмотрим назначение пресетов, распространяемых вместе с программой. В связи с тем, что программа больше ориентирована на пользователей видеоадаптеров на базе чипов от NVIDIA, для счастливых обладателей Radeon'ов они представляют чисто познавательный интерес :
местонахождение по адресу RivaTuner/Presets/NVIDIA/W2k - для пользователей Windows 2000/XP и RivaTuner/Presets/NVIDIA/W9х для пользователей Windows 98/МЕ.
Автор программы так же выделил в отдельные папки пресеты "специального" назначения: это папки Games и Professional. Первая адресована "геймерам" и включает в себя пресеты, устраняющие различные проблемы в играх; вторая - для пользователей линейки профессиональных ускорителей Quadro (Quadro и Quadro DCC) или её программных аналогов. Ниже приводиться назначение пресетов:

  • High performance
  • High performance Direct3D
  • High performance OpenGL

Настройка драйвера видеокарты на максимальную производительность соответственно: глобальная настройка под все API , только для приложений, использующих Direct3D или OpenGL.

  • High quality
  • High quality Direct3D
  • High quality OpenGL

Аналогично, рассмотренным выше - настройка драйвера на максимальное качество изображения. Вы можете создавать на их основе свои собственные пресеты под конкретные игры. Методика создания достаточно подробно рассмотрена в моей предыдущей статье.
Пресеты, входящие в программу не содержат в себе настроек анизотропной фильтрации и антиалиасинга, оставляя их "по умолчанию" так как рассчитаны на всю линейку карт от Riva TNT до GeForceFX 5950.

Далее обратим своё внимание на папку "Games", где содержаться следующие пресеты:

  • Carmageddon 2000
  • MDK 2
  • Need for speed III
  • Need for speed IV
  • Need for speed V
  • Unreal (W-buffer)
  • Unreal (Z-buffer)
  • Unreal Tournament (W-buffer)
  • Unreal Tournament (Z-buffer)
  • GTA III (только для Windows 2000/XP)
  • Quake II
  • GTA - Vice City (только для Windows 2000/XP)

Их предназначение - не увеличение скорости или улучшения качества, а только лишь решение различных проблем с запуском или изображением в играх. К примеру, в играх серии NFS, перечисленные выше, используется табличная эмуляция тумана, о поддержке которой драйвер не сообщает приложению. Вследствие чего возможны артефакты изображения в виде розового тумана, заливающего весь экран. Пресеты к этим играм позволяют принудительно форсировать поддержку табличной эмуляции тумана, а так же решить проблемы с шрифтами в экранных меню. Пресет к GTA III необходим в случае, если вы используете Windows 2000/XP без последних сервис-паков, поскольку проблема касается только DirectX версии 8.0а (в последствии устранена соответствующим патчем от Microsoft).

Пресеты в папке "Professional" предназначены для оптимизации драйвера при работе с профессиональными приложениями. Вот их перечень:

Для Quadro

  • 3D Studio Max
  • 3DPaint
  • Ansys
  • Arc Info
  • Arc View
  • AutoCAD
  • CATIA
  • CDRS
  • Combustion
  • Helix
  • I-DEAS Master Series
  • Lightwave
  • Maya, StudioTools
  • Microstation
  • NASTRAN, Patran
  • Plant Designer, Imagineer
  • ProEngineer
  • Softimage 3D
  • Softimage XSI
  • SolidDesigner
  • SolidEdge
  • Solidworks
  • Unigraphics

Для Quadro DCC

  • 3D Studio Max
  • Lightwave
  • Maya, StudioTools
  • SoftImage 3D
  • SoftImage XSI

Думаю, что люди, работающие с 3D-графикой, по достоинству оценят данный список.



Вместо заключения

Данное описание составлено по состоянию на 07.05.04 г. И по мере появления новых скриптов или пресетов будет регулярно дополняться.
При написании данной статьи (для предотвращения повторного изобретения велосипеда :), автором заимствованы некоторые фрагменты текста из статей, размещенных на МИРе, с согласия их авторов и администрации сайта.



Выражаю благодарность Александру Габуре a.k.a Алекс Джи за помощь в написании статьи, а так же Алексею Николайчуку a.k.a Unwinder за её рецензирование.

Сергеев Максим a.k.a max-sever


Обсудить/дополнить в конференции