23.4.2014 14:47

Playstation 2

Инструкция по настройке PS2 эмулятора - Pcsx2

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


Краткое руководство по базовым функциям

Перед запуском эмулятора, убедитесь, что у Вас установлены MVC++ Redistributable Package и самый последний DirectX. Все версии эмулятора рекомендуется брать из нашего файлового архива, так как они имеют необходимые файлы в комплекте, и Вам не придется искать их в интернете самим.
Запускаем эмулятор и после запуска мы увидим вот такое окно:



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

Если эмулятор был скачан с нашего файлового архива (как рекомендовано выше), то мы увидим следующее окошко:



Дело в том, что в папке с эмулятором уже есть базовые настройки, это рассчитано на пользователей, которые уже пользовались эмулятором ранее. Мы же смело нажимаем на "Пропустить".



Видим появившееся окно - список всех плагинов эмулятора, которые нам предстоит настраивать по отдельности.
Начнем с самого начала. Кликом по списку GS плагинов мы развернем весь список видеоплагинов. Список не очень большой, но Вы уже наверняка заметили, что некоторые имена плагинов сильно похожи, различаются лишь парой букв. Не будем вдаваться в подробности сейчас и выбираем плагин GSdx самой последней версии (номер версии указан сразу после слова GSdx в самом начале, не проглядите). Обратите внимание, что название плагина в списке должно заканчиваться так [GSdx32-SSE2] и никак иначе. Выбрали, теперь нажимаем на кнопку "Настройка", которая разместилась прямо напротив списка. Видим следующее окно:



Здесь нам надо сделать базовую настройку плагина. Не все функции нам сейчас важны, так что рассмотрим только необходимое:
  • Adapter: выбираем вашу видеокарту. Можно оставить пункт "Default Hardware Device", однако вариант может не подойти владельцам ноутбуков, так как может выбраться не дискретная, а интегрированная видеокарта. Так что все таки рекомендую выбрать в списке вашу дискретную видеокарту (в моем случае она называется как AMD Radeon HD 6800 Series)
  • Resolution: выбираем рекомендуемое разрешение, в котором будет работать эмулятор в полно экранном режиме. Галочка напротив пункта Window активирует запуск игр в экранном режиме.
  • Render: эмулятор умеет работать с DirectX 9, 10 и 11, нам нужно выбрать тот, который доступен Вам. Рекомендуется Direct3D11, так как DX9 сильно отстает в прогрессе. В DX10 режиме изменения такие же, как и в 11, так что разница не имеет значения. Обратите внимание на слова Hardware и Software, указанные в скобках напротив названия режима рендера:
  • Hardware режим обеспечивает более сглаженную картинку (при достаточной мощности видеокарты) и более быструю скорость работы (в большинстве случаев), но зачастую отсутствуют многие графические эффекты (такие, как тени, отражения, HDR и прочее) или присутствуют, но работают неправильно.
  • Software режим является полностью противоположным - скорость ниже, сглаживание отсутствует, графика наиболее близка к оригинальной картинке с самой консоли.
  • Пользователю со средней конфигурацией ПК рекомендуется режим Hardware.
  • Interlacing: опция влияет на тряску экрана в играх. Выбирайте режим Auto и забудьте полностью про существование этой опции - автоматический режим работает великолепно.
  • Aspect ratio: соотношение сторон экрана. Рекомендуется использовать всегда 4:3, так как большая часть игр адаптирована именно под него, но можете выбрать и 16:9 (если Ваш монитор приспособлен для работы в этом соотношении), зависит уже от вашего вкуса. Для сомневающихся есть режим Stretch - картинка будет растягиваться в зависимости от того, как Вы сами растянете окошко с запущенной игрой.
Остальные опции нам пока что не интересны, оставим их на потом. Нажимаем "ОК".

Теперь нам нужно настроить управление. Во вкладке PAD нам представлен небольшой список плагинов, самый простой в настройке - SSSPSX PAD Pressure Mod, его функционал заметно ниже, чем у LilyPad, но настроить сможет любой новичок без особых проблем, единственный минус - отсутствие вибрации и невозможность настройки управления на клавиатуру. Если Вы будете играть на геймпаде от консоли X-Box 360, то можно выбрать плагин XPad, он не нуждается в настройке вообще.
Итак, выбираем LilyPad, нажимаем "Настройка", видим такое окошко:



Функций много, но нам нужны далеко не все. Главное, это определиться - на чем будем играть. Если Вы для игры будете использовать клавиатуру - в пункте Keyboard API должна быть выбрана опция Windows Messaging (Recommended). При использовании геймпада выше указанный пункт необязателен, если стоит по умолчанию выбор на той опции - менять не обязательно, нам важен другой пункт - Game Device APIs. В зависимости от вашего геймпада, нужно поставить галочку в соответствующий пункт:
Если используете геймпад от X-Box 360, но не желаете для управления в игре использовать плагин XPad - ставьте галочку напротив XInput (Xbox 360 controllers only)
Если используете геймпад, отличный от оригинального X-Box 360, то ставьте галочку напротив DirectInput.

Есть ещё несколько опций, которые рекомендую использовать, ставьте галочки напротив Monitor when in background, Disable Screensaver, Local volume control, Safe fullscreen exit on escape. Можно догадаться из описания, что каждая из них выполняет, описывать подробно в этой статье не буду.
Пора настроить само управление. Открываем вкладку PAD1, видим такую картину:



Не все функции нам нужны, так что опишу только то, что имеет интерес в данный момент:
  • L1, L2: кнопки, расположенные с торца геймпада, с левой стороны.
  • R1, R2: аналогично, но уже расположены с правой стороны.
  • L3, R3: нажатия на стики, левый и правый соответственно.
  • Triangle, Circle, Cross, Square: треугольник, круг, крест и квадрат соответственно, основные 4 функциональные кнопки расположенные с правой стороны.
  • Select, Start: думаю, тут все понятно, опциональная кнопка и старт соответственно.
  • (D-Pad) Up, Left, Right, Down: крестовина вверх, влево, вправо, вниз соответственно.
  • (Left Analog Stick) Up, Left, Right, Down: левый аналоговый стик вверх, влево, вправо, вниз соответственно.
  • (Right Analog Stick) Up, Left, Right, Down: правый аналоговый стик вверх, влево, вправо, вниз соответственно.

Каждая привязанная функция отобразится в списке слева. Под списком имеется ещё 3 опции, будет не лишним их рассмотреть:
  • Delete Selected: удаление выбранной привязки из списка.
  • Clear All: удаление всех привязок из списка.
  • Ignore Key: отключение выбранной привязки в списке.
По аналогии можно настроить управление на второго игрока во вкладке Pad 2, если у Вас конечно имеется дополнительный геймпад (можно так же привязать первого игрока на геймпад, а второго на клавиатуру).
Настройка управления закончена, нажимаем на "ОК".

Следующий шаг - настройка звукового плагина. В данный момент разработчиками поддерживается всего 2 плагина (остальные уже давно утратили свою актуальность), рекомендуемый - SPU2-X, его и рассмотрим.
Выбрав плагин, нажимаем на "Настройка", видим такое окошко:



Плагин имеет много различных функций, опций и режимов, новичкам которые могут только навредить. Опишу самое необходимое:
  • Interpolation: качество звука. На выбор нам дано аж 5 различных режимов, в названии каждого режима в самом начале стоит цифра - от 0 до 4. Чем выше порядковый номер - тем выше качество звука, и тем ниже скорость эмуляции. Как правило, скорость понижается не на столько сильно, что бы это было явно заметно, так что можно ставить самый тяжелый режим, но я все же рекомендую 1 - Linear, дабы избежать лишних проблем.
  • Module: способ вывода звука. Самый совместимый и быстрый режим - XAudio 2, не нуждается в настройке, так что его и выбираем.
  • Synchronizing Mode: выбор синхронизации звука. Всего 3 режима, среди которых:
  • None: отсутствие синхронизации, не рекомендуется.
  • TimeStretch: звук идет параллельно со скоростью эмуляции. То есть если скорость игры полная - звук идет как положено, если скорость падает в 2 раза - звук начинает идти в 2 раза медленнее.
  • AsyncMix: режим, в котором синхронизация не накладывается на большинство игровых звуков. Фоновые мелодии будут звучать с полной скоростью, вне зависимости от того, с какой скоростью идет игра. Рекомендуется, если игра в некоторых моментах идет чуть медленнее, чем надо. При сильных просадках в скорости появляются хрипы и треск.
Из этих режимов я рекомендую больше AsyncMix, но все зависит от Вашего вкуса.
Настройка звукового плагина закончена, нажимаем на "ОК".

Настраивать плагин CDVD нет необходимости, эмулятор уже давно умеет открывать Iso файлы хорошо и без использования плагина, так что этот пункт мы пропустим. Остальные же плагины тоже нет смысла настраивать по простой причине - данные функции не используются, по этому вместо плагинов стоят самые обычные заглушки.
Нажимаем на "Далее", видим такое окошко:



Нам предлагается выбрать BIOS консоли. В наших сборках уже включены необходимые версии BIOS, самым рекомендуемым же считается версия Japan v01.00 (17/01/2000) console. Выбираем его, нажимаем "Завершить".

Выполнив все описанные выше действия, мы увидим вот такое окно эмулятора:



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



Сверху можно заметить 6 вкладок, на которых производится дополнительная настройка эмуляции. Для того, чтобы настроить игру нормально - нужно знать идеально как минимум 4 эти вкладки наизусть. Но не впадайте в панику! Ведь наш сайт существует именно для помощи тем, кто не разбирается в тонкой настройке. В этом разделе Вы сможете найти настройки для большинства игр, а если игра отсутствует в базе - её всегда можно заказать вот в этой теме на форуме.
В качестве примера попробуем запустить игру Tekken 5. Для начала нам нужно найти её в базе. Под описанием эмуляции размещены скриншоты с настройками, открываем их и по очереди выставляем в эмуляторе все точно так же, как на первых 4 скриншотах, нажимаем "ОК". Остался один скриншот с настройкой видеоплагина, для этого нажимаем на "Настройка" -> "Видео (GS)" -> "Настройки плагина" и выставляем все так же, как на последнем скриншоте. Выставили? Нажимаем на "ОК".

Осталось самое простое. Нажимаем "Запуск" -> "Запустить CD/DVD (быстро)" и выбираем в появившемся окошке наш образ с игрой. Вот и все! Управление настроено, прочие настройки в игре выставлены Вами в соответствии с рекомендуемыми. Если Вам захочется поиграть в другую игру - нужно выполнить следующие несложные действия: в главном окне выбрать пункт "CDVD" -> "Выбор ISO" и выбрать образ с другой игрой, после чего опять "Запуск" -> "Запустить CD/DVD (быстро)", игра запустится. Удачной игры!




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

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

Первой под наш удар попадает вкладка "Настройки EE/IOP":



Для начала нам надо все таки выяснить - что же такое эти EE и IOP?
EmotionEngine: это центральный процессор PS2 (первый 128-разрядный процессор в мире, а также первый серийно выпускаемый двухядерный процессор)
IOP: контроллер операций ввода-вывода.

Как мы видим - каждый из этих модулей имеет 2 положения - Interpreter и Recompiler. Рекомпилятор имеет свойство преобразовывать машинный бинарный код в понятный для х86 процессора "на лету". Интерпретатор же работает во много раз точнее, но медленнее - иногда даже в несколько десятков раз медленнее. Естественно, что выбирать следует только Recompiler и ничего другого, Interpreter же может быть полезен только для поиска багов или прохождения проблемных мест в играх (например, для обхода мертвых зависаний) но и это - редкость.
Для EE так же можно включить кэш в режиме интерпретации, опция называется Enable EE Cache. Скорость упадет ещё на несколько порядков, но некоторые игры (их, слава богу, единицы) требуют этого режима, для достижения геймплея (или вообще для их правильной работы).

Чуть ниже уютно расположились настройки ещё одних модулей EE и FPU под названием EE/FPU Advanced Recompiler Options.
Что же это такое? Опять обратимся немножко к теории.
EE/FPU Advanced Recompiler Options: меню настроек эмуляции математического процессора. Отвечает за операции "с плавающей точкой". Иными словами FPU - это часть процессора, отвечающая за любые математические операции и операции над вещественными числами. За счет FPU, в разы повышается скорость загрузки/выгрузки вещественных чисел и увеличивается скорость выполнения таких операций.

В эмуляторе имеется 2 подменю FPU со своими настройками - Round mode и Clamping Mode. Рекомендуется выставить Round mode в положение "Chop / Zero", а Clamping Mode - "Средний шрифт" (Спасибо тебе, о прекраснейшая локализация на великий и могучий русский язык :D). Подробного описания данных функций, увы, попросту нет - данный пункт не имеет никакой документации, так что написан, по сути дела, вслепую, методом тыка. Скажем проще - если Вас будут преследовать какие нибудь неопределенные баги, несрабатывания скриптов и прочее - есть смысл поиграть с этими настройками.

Что же, идем дальше на вкладку "Настройки VU":



Вот такая картина открывается нашему взору. Вроде бы все аналогично, кроме пары исключений. Попробуем разобраться, что к чему, но для начала, надо по лучше узнать - что же такое VU?
VU: это 128-разрядные векторные модули основного процессора PS2 "Emotion Engine", которые отвечают за обработку физики и полигонов. VU0 - Векторный модуль, отвечающий за трансформацию физики, полигонов и иных вещей, которые используются в геймплее. VU1 - Отвечает за трансформации освещения, спецэффектов и других вычислений, которые имеют отношение к визуализации.

Каждый из этих модулей имеет 3 положения - Interpreter, столь знакомый нам принципом работы и 2 других, которые надо рассматривать более подробно:

  • microVU Recompiler: один из рекомпиляторов для VU, активно развивается, имеет чуть меньшую скорость по сравнению со старшим братом, но и более высокую совместимость.
  • superVU Recompiler [legacy]: старая версия рекомпилятора, в ряде игр на пару процентов быстрее, но из за невысокой совместимости проблемы могут быть самые разные.

Как Вы уже догадались - на этом дело не кончилось и есть более продвинутые опции для этих модулей, выглядят они почти аналогично FPU:
VU0 / VU1 Advanced Recompiler Options: Надстройки для данных двух векторных модулей. Также, как и в случае с надстройками FPU, нам мало что известно о них. Рекомендуется выставить Round mode в положение "Chop / Zero", а Clamping Mode - "Средний шрифт". Но и другие варианты могут быть крайне полезными в ряде игр. Если вы вдруг внезапно провалились под землю в игре, "застряли в текстурах" или натолкнулись на невидимую стену - следует мучить этот пункт в настройках, возможно, что он вам поможет.

Здесь мы разобрались, идем дальше - нас ждет вкладка "Настройки GS (видео)":



Функций, категорически влияющих на эмуляцию, тут по сути дела и нет, но и те, что есть - пригодятся многим:
  • Отключить лимит кадров: управляет лимитом кадров, чтобы отключить лимит - ставим галочку. Удобно, когда хочется замерить максимальную скорость игры, но проще переключать хоткеем F4.
Так же опция имеет несколько подпунктов, связанных с динамическим изменением лимита:
  • Базовое значение: устанавливает, сколько кадров будет сведено до лимита (вспоминаем, если в PAL регионе 50 кадров - максимум, то при выставлении значения на 150% - игра будет выдавать не 50 кадров, а 75 (если, конечно мощности хватит), аналогично и для других регионов)
  • Коэффициент замедления: при нажатии на хоткей скорость снижается до указанного в графе процента.
  • Коэффициент ускорения: при нажатии на хоткей, скорость увеличивается до указанного в графе процента.
  • Лимит кадров: когда то можно было управлять им прямо из эмулятора, но ныне функция заблокирована и можно изменять скорость только через ini файл.
Далее расположились функции пропуска кадров:
  • Пропуск кадров: необходим в случае слишком низкой скорости эмуляции. Путем пропуска части кадров и потери плавной анимации, можно добиться полной скорости, он работает только в software режиме видео плагина. Меню имеет 3 значения:
  • Отключен: пропуск кадров отключен.
  • Пропускать только в режиме ускорения: увеличение планки лимита fps на количество указанное в Turbo Adjust (стандартное значение 200%, то есть, если лимит в 60fps, тогда он увеличится до 120-ти).
  • Постоянный пропуск: пропускает столько кадров, сколько указано в двух полях, что ниже. Включается режим пропуска путем нажатия в игре Shift+F4.
  • Кадры для прорисовки: выставляем сколько кадров рендерить, прежде чем пропускать следующие.
  • Кадры для пропуска: выставляем количество пропускаемых кадров, после отредеренных.
Чтобы было легче понять, приведу пример: если вы выставили "3 - 1", тогда будет 3 кадра выводиться на экран, а потом 1 пропускаться. И так по циклу.
Ну и самое последнее:
  • Использовать синхронизацию MTGS: синхронизация пропуска кадров с двухядерниками, также недоделанная функция. Вызывает сильное замедление эмуляции. Используется в очень редких случаях (а по личным наблюдениям - почти не используется вообще)

На этой вкладке все разобрали, идем дальше - "GS-окно (видео)":



На данной вкладке далеко не все представляет интерес и важность, но кое что все таки можно использовать. Приступим:
  • Соотношение сторон: ну, это поймет каждый. Функция работает довольно специфично, надо сказать... Если выставить 4:3, то даже если у Вас вайдскрин и Вы включите в эмуляторе фуллскрин - картинка будет с полосами по краям, даже если в самой игре (в меню, например) вы поставите соотношение сторон 16:9 - картинка довольно сильно исказится. И то же самое будет, если сделать наоборот. Самый оптимальный вариант для владельцев вайдскрина (на мой взгляд, конечно же) - это выставить параметр Подогнать под размеры окна\экрана. Фуллскрин всегда будет растягивать картинку до пропорций 16:9, именно растягивать - то есть пропорции будут нарушены, но зато при игре в окне - пропорции будут правильные. А если в игре самой выставить 16:9 - то картинка в вайдскрине будет правильная. Выбирать, конечно же, Вам, но мне кажется, что этот вариант наиболее оптимальный.
  • Установка соотношения вручную: на самом деле, функция не совсем правильно переведена на русский язык. Вы можете выставить соотношение сторон 16:9, но в этой графе указать разрешение 1024х768 - тогда в игре будут полосы снизу и сверху. Данная функция - обычный выбор размера окна с эмулируемой игрой, ничего более. Но может пригодиться любителям записывать видео через Fraps - выставляем разрешение 1280х720, начинаем запись без сжатия разрешения - на выходе получаем самые честные 720р в видео.
  • Увеличение: самый обычный zoom, указывается в процентном соотношении. Выставляем 200.0 - и в игре картинка увеличится в 2 раза с обрезанием краев. Непонятно конечно, как её можно использовать, но наверно кому то она нужна.
  • Заблокировать растягивание кромки окна: полезная функция, говорящая за себя. Поставили галочку - и заданный нами точный размер экрана уже случайным движением мыши изменить не получится.
  • Скрывать курсор мыши: если курсор навести на окно с эмуляцией - его просто не будет видно (полезно для фуллскрина, но не всегда удобно)
  • Скрывать окно в режиме паузы: при нажатии на Esc или паузы в функциях эмулятора (не игры!) окно с эмуляцией закроется, возобновить можно, если в главном окне нажать Запуск -> Продолжить
  • Переходить в полный экран при запуске: фуллскрин сразу при запуске игры. Неудобно, на мой взгляд, если игру требуется настроить в процессе.
  • При двойном клике осуществляеться переход в полноэкранный режим: (краткий урок русского языка от Вашего покорного слуги для авторов перевода - мягкий знак (Ь) не ставят в глаголах - инфинитивах, но удалить его не мог, ибо так переведено в эмуляторе) функция сама за себя говорит, нет смысла описывать.
  • Ожидание Vsync на обновлении: (мда, тут с переводом ещё хлеще) включение вертикальной синхронизации. Честно говоря - я её никогда не включал, никаких проблем с прорисовкой кадров (даже в фуллскрине) не было замечено. Нужна ли функция - честно, я не знаю.
  • Динамическое включение/отключение Vsync в зависимости от скорости кадров: функция как бы должна сама выбирать, когда ей включиться - например, если скорость эмуляции падает - синхронизация выключается, скорость возросла до нужного уровня - синхронизация включается. Работает только в GSdx, в Hardware рендеринге и в DX10/11 режиме.

Разобрались на данном пункте, переходим к самому важному - "Спидхаки":



С помощью различных функций (и их правильном комбинировании) можно повысить скорость эмуляции в разы, но велика вероятность "убить" в играх часть спецэффектов. Возможны резкие замедления и ускорения эмуляции (в редких случаях), мигание персонажа, окружения, предметов и прочие, самые разнообразные проблемы. Как мы видим, все поля неактивны, в первую очередь надо их включить, установив галочку "Enable speedhacks". Итак, давайте ознакомимся с каждой функцией по порядку:
  • EE Cyclerate: Снижает количество циклов процессора, тем самым увеличивая скорость эмуляции. Может вызывать проблемы с проигрыванием звука и видеороликов. Имеется 3 положения ползунка:
    • 1: Стандартное количество циклов процессора.
    • 2: Уменьшение количества циклов на 33%. Небольшой прирост скорости и большая совместимость с играми.
    • 3: Уменьшения количества циклов на 50%. Средний прирост скорости, но возможны прерывания аудио потока и FMV роликов, иногда появляется треск в аудио.
  • VU Cycle Stealing: Увеличивает количество циклов, которые VU может "позаимствовать" у EE, эдакое своеобразное перераспределение нагрузки, может привести к мерцанию экрана и потере части спецэффектов. Имеет 4 положения ползунка:
    • 0: Снижение количества VU циклов отключено.
    • 1: Мягкое уменьшение VU циклов. Совместимость с играми немного ниже, но дает некоторое ускорение в большинстве игр.
    • 2: Среднее уменьшение VU циклов. Еще ниже совместимость, но более значительный прирост скорости во многих играх.
    • 3: Максимальное уменьшение количества VU циклов. Значительный прирост скорости в части игр, но в большинстве возникают проблемы со спецэффектами, появляется мерцание экрана, объектов. Также возможно замедление эмуляции, при показании счетчиком ложного количества кадров. Использовать крайне осторожно.
Теперь посмотрим ниже на меню "Other Hacks". Здесь есть 3 различных пункта:
  • Enable INTC Spin Detection: Данный хак лучше всего применять для игр, которые используют регистрацию статуса INTC при ожидании синхроимпульса. В основном это RPG, не использующие 3D. Все остальные игры либо не получат ускорения, либо оно будет чрезвычайно мало. Так гласит описание разработчиков... На практике можно же сказать, что хак действительно безвреден, ни одной проблемы от него ни в одной игре я лично не встречал... Хотя по поводу даже ничтожного прироста - иногда 4-5 заветных кадров, которые он нам дает - могут прилично выручить, если совсем чуть чуть не хватает до полной скорости.
  • Enable Wait Loop Detection: Изначально нацеленный на пустые циклы ЕЕ рекомпилятора ядра 0x81fc0, данный хак пытается определить циклы результат работы которых (после каждой последующей итерации) никак не скажется на текущем состоянии машины до тех пор, пока запланированное событие не запустит эмуляцию другого юнита. После первой итерации таких пустых циклов, мы просто переходим к следующему событию, или вообще к концу процессорного интервала. Жуть. Понятно, что понятно не очень много из всего этого, но данный хак довольно щадящий, любит давай прирост и практически никакого вреда в себе не несет. Рекомендуется к использованию.
  • Включить fast CDVD: хак ускоряет доступ к диску, уменьшая время загрузки игр. Влияет на уровни, их подгрузку, и прочие факторы, но имеет и побочные эффекты - некоторые игры хак не любят и могут банально вылететь на загрузке.

Далее идет меню "microVU Hacks". Данные хаки работают только при выборе рекомпилятора "microVU":
  • mVU Flag Hack: Большое ускорение в играх при включении и хорошая совместимость, но может привести к графическим лагам (мусору в изображении) и некоторым другим побочным эффектам. По идее вреда от него мало (и проблемы встречаются не часто), рекомпилятор начинает работать по типу SuperVU, пользу извлечь из него можно довольно часто. Рекомендован к использованию.
  • MTVU (Multi-Threaded MicroVU1): выполнение некоторых долго выполняемых команд в отдельном потоке, имеет смысл использовать на многоядерных процессорах (3 ядра и больше или двух-ядерные процессоры с поддержкой HT (Core i3, поколение Sandy Bridge и выше), ускорение в среднем 10-50%. Работает только с MicroVU1, неэффективен на двухядерных системах, может вызвать замедление или даже вылеты в некоторых играх.

Все спидхаки рассмотрели, теперь можно переходить к следующей закладке - "Исправления для игр":



Как видно из названия - это фиксы для некоторых игр, в которых с обычными настройками возникают проблемы или вовсе не запускаются. Включать только для игр, которые указаны в названии хака. По умолчанию меню отключено, для включения ставим галочку "Enable game fixes".
  • VU Add Hack: Включать для игр Tales of Phantasia, Star Ocean, Valkyrie Profile и Eternal Sonata.
  • VU Clip Flag Hack: Включать для серии игр Persona.
  • FPU Compare Hack: Включать для игры Digimon Rumble Arena 2.
  • FPU Multiply Hack: Включать для игры Tales of Destiny.
  • FPU Negative Div Hack: Включать для серии игр Gundam.
  • VU XGkick Hack: Включать для игры Elementar Geard.
  • FFX Video Fix: Только для Final Fantasy X, исправление текстов в видеороликах.
  • EE Timing Hack: Универсальный хак. Список игр которые он может вылечить постоянно растет. Исправляет видеоролики в Obscure 2, Digital Evil Saga, ошибки графики в SSX, Resident Evil: Dead Aim. Не вызывает глюков в большинстве игр.
  • Skip MPEG Hack: пропуск виснущих/вылетающих роликов, что тут еще сказать.
  • OPH Flag Hack: Исправление зависаний на одном и том же кадре, требуется для Bleach Blade Blatter, Growlanser 2/3, Wizardry.
  • Ignore DMAC writes when it is busy: исправляет зависания в Mana Khemia 1 и Motor Storm Arctic Edge.
  • Simulate VIF1 FIFO read ahead: исправляет игры с долгими загрузками, такие как Transformers и Test Drive Unlimited
  • Delay VIF1 Stalls: исправляет худ в SOCOM 2
  • Ignore Bus Direction on Path3 Transfer: использовать для Hotwheels
  • Switch to GSdx Software rendering when a FMV plays: автоматически переключаться в софтварный режим рендеринга на FMV роликах, помогает тем играм, в которых эти самые ролики идут с ошибками в хардваре.

Детальная настройка видеоплагинов
Когда то давно, ещё во времена безусловной мощности двухядерных процессоров, плагин GSdx казался примитивным и временным - все возлагали надежды на ZeroGS... Но время нещадно - ZeroGS остался далеко позади, а привычный нам GSdx вырвался сильно вперед. Плагин не такой тяжелый в освоении, мы попытаемся разобраться в его функциях, как базовых, так и в продвинутой части.

Данный видео плагин использует DirectX, поэтому может использоваться только в среде Windows. Существует несколько его модификаций:
  • SSE2
  • SSSE3
  • SSE4.1

Открыв окошко с выбором плагинов мы сможем без труда определить какой же из них какой:



Вот только что выбрать? Я и тут постараюсь дать небольшой ответ:
  • SSE4.1 плагин содержит в себе процессорные инструкции нового образца, поэтому его можно использовать на процессорах Intel Core 2 Duo Penryn серии (модели E7xxx,E8xxx and Q9xxx), Intel Corei5, Intel Corei7 и AMD Bulldozer, на других системах эмулятор будет просто виснуть перед началом эмуляции.
  • SSSE3 плагин как видно из названия содержит дополнительные инструкции SSSE3, которые есть в intel процессорах Pentium Dual Core (НЕ ПУТАТЬ С "Pentium D"), Core 2 Duo и выше. На других обеспечен вылет эмулятора.
  • SSE2 плагин можно использовать практически на любых процессорах, которые поддерживают эти инструкции (AMD - Athlon 64 и более ранние модели, включающие в себя все CPU с Socket-A; Intel - Pentium 4 и более ранние модели).

На данный момент основное отличие - скорость эмуляции. SSSE3 примерно на 3-4% быстрее SSE2, а SSE4.1 на 1-2% быстрее, чем SSSE3. Прибавка, конечно, не сильно значительная, но если есть возможность - почему бы не воспользоваться?

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

Важно! Для полной работоспособности видеоплагина и доступности всех режимов, у вас обязательно должна быть установлена последняя версия DirectX. Последнюю сборку DirectX можно скачать с официального сайта Microsoft.



Renderer: самая первая графа с какой мы сталкиваемся. В выпадающем списке можно выбрать Direct3D 9, Direct3D 10 или Direct3D 11, все зависит лишь от поддержки вашей видеокартой. Режим Direct3D 9 работает на любом Windows, Direct3D 10 начиная с Vista, Direct3D 11 на Win7 и более старших OS. Замечу, что на Direct3D 10 картинка заметно чище и эмуляция где-то на 30% быстрее (смотря какая игра), а вот разницы между 10 и 11 версиями почти что нет. У каждого из директов есть 3 режима - Hardware, Software и Null, которые написаны в скобках. Разберем кратко суть работы каждого:
  • Hardware режим использует вашу видеокарту для рендера спецэффектов. Режим хорош тем, что можно на полную использовать сглаживание и повышенные разрешения, придавая картинке современный вид.
  • Software не использует видеокарту, вся эмуляция спецэффектов и объектов ложится на процессор. Полезен на 4-х ядерниках и выше, особенно если в эмулируемой игре проблемы со спецэффектами, это самый качественный и совместимый режим одновременно, но в нем нет возможности использовать повышенное разрешение и сглаживание.
  • Null полностью отключает рендер видео, благодаря чему эмуляция идет со стопроцентной скоростью, но играть естественно невозможно. В основном Null предназначен для отладки, выбирать его не стоит.
  • Interlacing: выбор режима чересстрочной развертки (как мы знаем, игры на PS2 чаще использовали именно её, нежели прогрессивную развертку). Неправильный выбор раньше, пару лет назад, сулил нам общему снижению качества отображаемой картинки, тряску изображения и горизонтальные разрывы. Сейчас же можно смело выбрать режим Auto и забыть как страшный сон.
Помимо рендера, в плагине есть ещё довольно много различных функций, серьезно влияющих на эмуляцию. Рассмотрим и их:

D3D Internal resolution (can cause glitches)
: в общем то, именно этот раздел отвечает за качество изображения в большей степени. Его критикуют так же часто, как и нахваливают. Будем рассматривать детальнее:
  • Original PS2 resolution: у функции есть всего одно положение (Native). Это использование оригинального разрешения консоли, подойдет для владельцев слабых видеокарт. Также в некоторых играх могут пропасть проблемы при его использовании (черные вертикальные полосы, мигающие спецэффекты на экране, прочие, очень противные баги, которые встречаются намного чаще, чем хотелось бы).
  • Or use Scaling: умножение нативного разрешения на указанное количество раз. Обычно нативное изображение равно 640x480, иногда 512x512 (допускаются небольшие погрешности). Без особого труда можно выставить значение x4 и получить просто шикарную картинку (при достаточной мощности видеокарты, конечно же).
  • Custom resolution отвечает за разрешение картинки, чем выше, тем качественнее и чище изображение, увеличивается именно количество пикселей в изображении, а не разрешение экрана. Если у вас к примеру выставлено 800х800, а разрешение экрана 1024х768, качество картинки не улучшится, пиксели просто растянутся на ваше разрешение, в то же время, если у Вас разрешение экрана равно 1366x768, а в эмуляторе выставить 1920х1080 - то качество картинки возрастет в разы, не нарушив пропорции и не растянув окно. Нагрузка на видеокарту в каждой игре разная, для высоких разрешений нужно иметь много видеопамяти, самый рекомендуемый вариант - 2Gb и больше, в современное время 1Gb отходит уже на второй план (хотя, я умудрялся и на старой 8800GTS выставлять 2048х2048 в некоторых играх). В некоторых играх есть ограничение на рендер - в том же Tekken 5 выставляются фиксированные значения по горизонтали, типа 1020, 1220, 1260, вертикаль же ставить можно любую. Недавно вывел гипотезу про хитрости рендера - правда ещё не доказал её. Если при чересстрочной развертке вертикаль срезается в 2 раза (например реальное разрешение 480i составляет не 640x480, а 640х240), то можно предположить, что любое выставленное Вами разрешение будет срезаться так же (не зря же в прогрессивной развертке (если игра её поддерживает) картинка становится лучше). Выходит, что разрешение 1920x1080 на деле оказывается 1920x540. Вывод: можно вертикаль увеличивать везде в 2 раза (нагрузка не очень большая, не бойтесь) и ставить 1920x2160 (дальше по аналогии). Но это всего лишь гипотеза.
  • Enable Shade Boost: нет, это не шейдеры, даже если кажется так. Опция позволит менять цветовые параметры картинки - яркость, контрастность и насыщенность. Очень полезная плюшка. После установки галочки - активируется кнопка Settings, открываем, видим ползунки и настраиваем:

Hardware Mode Settings: исходя из названия, это настройки хардварного режима. Их много, и неправильная настройка может убить всю картинку. Разбираться в них ОЧЕНЬ важно. Смотрим:
  • Texture filtering: фильтрация текстур, всегда должен быть включен, чтобы текстуры в игре прорисовывались нормально. Ставится в несколько положений: галочка - фильтруется 3D и 2D, квадратик - только 3D (часто требуется в 2D играх, а иногда нужно и полностью фильтрацию отключать), ну и выключенное положение отключает фильтрацию полностью.
  • Allow 8-bit textures позволит снизить нагрузку на видеокарту. Есть игры где присутствует множество 8-ми битных текстур, которые принудительно преобразовываются на GSdx в 32-х битные. Следовательно это дополнительная нагрузка, причем ненужная. Данная опция призвана увеличить совместимость и уменьшить нагрузку, однако в части игр могут выпадать текстуры или портиться. Иногда прирост бывает равен в 300% на слабеньких видеокартах. В принципе, побочные эффекты возникают далеко не везде, так что пробуйте.
  • Logarithmic Z: активен только на Direct3D 9 (на других не требуется), при его включении убираются некоторые глюки изображения, к примеру бывает текстуры прорисовываются с черной окантовкой вокруг, смотрится очень плохо. Желательно держать эту функцию включенной, если нет возможности использовать Direct3D 10.
  • Alpha correction (FBA): работает только с Direct3D 9 (другим не нужен), по идее должен убирать граф баги с цветами. На протестированный мною играх его эффект как раз обратный - перемешанные цвета и выпяченные глаза у персонажей. Стоит держать выключенным, если вы используете Direct3D 9.

Enable HW Hack: целый сборник различных хаков, которые бывают либо чрезвычайно полезными, либо фатальными. Ставим галочку, нажимаем на Configure и изучаем:


  • MSAA: мультисемплинг, или просто сглаживание. Алгоритм не идеален, могут быть баги при использовании (не часто). Хорош тогда, когда рендер не получается поставить высокий, а сглаживание не причиняет вреда (но и такое редко бывает).
  • Skipdraw: опция слоями убирает отрисовку многих эффектов и не только... Как правило - функция поможет убрать двойные контуры, графические артефакты, полупрозрачную пелену и прочие вредные баги, а заодно с ними (с разной долей вероятности) блум, тени, освящение, отражение и даже текстуры. Выбирать значения следует от 1 до 100 (хотя если дальше 10 Вам ничего не помогло - нет гарантии, что дальше будет лучше). Экспериментируйте, может где то серьезно помочь.
  • Alpha: хак альфа канала. Часто лечит тени в играх, иногда и другие эффекты, которые отображаются неправильно. Иногда же вместо лечения просто убирает их.
  • Half-Pixel Offset: фикс довольно тяжелый, который как правило убирает надоедливые дымки, вызванные ошибками постпроцессинга, иногда убирает что либо другое, чего не следовало бы. ВНИМАНИЕ: комбинирование Half-Pixel Offset, Alpha и Skipdraw между собой в разных вариациях поможет достигнуть более ценных результатов, нежели использование по отдельности. Пробуйте, что нибудь у вас точно получится.
  • Sprite: хак, который поможет вылечить неверное отображение спрайтов в играх (как правило в 2D).
  • WildArms Offset: специально для WildArms и подобных ей игр, исправляет ошибки при апскейле.
  • Aggressive CRC: очень тяжелый и по настоящему агрессивный хак. Во многих играх убирает кучу багов, прихватывая так же до кучи эффектов. Если уж совсем баги глаза мозолят, или если не помогает софтварный режим.
  • Alpha Stencil: хак работает очень редко, но эффективно - вылечивает следы от объектов и иногда нормализует тени.
  • Disable CRCs: хак отрубает использование всех CRC хаков вшитых в плагин, вызывая просто НЕВЕРОЯТНУЮ ТОННУ БАГОВ в куче разных игр. Не рекомендую его использовать.
  • TC Offset: выставляя разные значения можно избавиться от двойных контуров практически в любой игре. Надо лишь подобрать значение правильное.

На этом моменте мы разобрались, можем закрывать вкладку и продолжить изучение плагина.

Software Mode Settings: несколько опций, которые влияют только на эмуляцию в софтварном режиме:
  • Extra rendering threads активен только при использовании Software режима Direct3D. Позволяет вам выбрать количество ядер процессора, которые будут задействованы для эмуляции картинки. Например, если у вас 8 ядер или потоков - выставляйте по 4-7 потоков (учитывайте, что для обработки ЕЕ, IOP и VU тоже нужны ресурсы процессора, так ещё и MTVU тоже берет под себя один поток. ОС тоже оставьте хоть одно, для работы).
  • Edge anti-aliasing (AA1) активен только при режиме Software. Включает полуторное сглаживание изображения, очень полезно, так как картинка довольно мутная без использования видеокарты.

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


  • Interpolation: в данном пункте мы выбираем качество звука. Как правило оптимальный вариант выдает 1 - Linear, так что менять его на другой по большей части нет смысла. Однако следует учитывать, то что звук тоже поглощает ресурсы процессора, и иногда задранное в потолок качество может лишить Вас 3-4 фпс до заветной полной скорости. Если скорости не хватает - выставите значение на 0 - Nearest, есть шанс, что скорость чуть чуть возрастет. Ну а если со скоростью все нормально, да и у Вас отличная акустика - смело ставьте высокие значения, вплоть до 4 - Catmull-Rom и получайте удовольствие от качественного звука.
  • Disable Effects Processing: включение опции поможет тогда, когда скорости сильно не хватает, так как эта опция иногда помогает выиграть пару-тройку fps, за счет пропуска эффектов ревербрации. Иногда звук может ухудшиться, а иногда это просто не заметно. Включайте на свое усмотрение.
  • Module: выбор модуля вывода звука. Самый лучший на данный момент вариант - XAudio 2, однако при сильных проблемах со звуком следует менять его на другие, так как при альтернативном выводе звука часто пропадают проблемы. Можно вообще отключить звук выбрав 0 - No Sound. Скорость повысится, но какое удовольствие игры без звука? Самые отвязные энтузиасты могут смело выбирать 4 - Portaudio, настраивать его на работу с WASAPI и получать самый качественный звук в эмуляторе без потери в скорости (фича доступна только пользователям Vista и более поздним операционным системам от Microsoft).
  • Volume: тут думаю все понятно, банальный уровень громкости.
  • Synchronizing Mode: Одна из самых важных опций. Правильный выбор синхронизации - залог хорошего настроения. Опция TimeStretch выводит звук с соответствием с общей скоростью игры. Например при игре в 30 fps звук будет так же подстраиваться под геймплей и "растягиваться" в соответствии со скоростью. AsyncMix - более лучший вывод синхронизации, так как даже при падении скорости игры, звук будет всегда идти с одной скоростью, без всяких растяжений. Однако это не значит, что он будет гнать вперед со всей прыти, синхронизация идет очень хорошо, и при падении скорости звуковые эффекты (выстрелы и прочее) будут звучать в соответствии с игрой, а фоновая музыка будет играть так, как и должна на полной скорости. Однако не рекомендуется такая синхронизация, когда скорость ниже 20-15 fps, так как появится неприятный треск.
  • Audio Expansion Mode: выбор типа акустики, если у вас система 5.1 - выбирайте соответствующий пункт Surround 5.1, если 2.0 - Stereo и т.д.

Горячие клавиши
  • F1 - Сохранение игры (текущий процесс, не на карту памяти) в первый слот. Также можно сохранить через меню "System"->"Save State" и выбираем любой понравившийся слот.
  • F3 - Загрузка игры из первого слота. Можно также перейти в меню "System"->"Load State" и выбрать нужный слот.
  • F4 - Включение / Отключение лимита кадров.
  • Tab - Управление режимом ограничителя скорости, Normal/Turbo.
  • Shift+F4 - Включение режима пропуска кадров. Могут возникнуть самые непредвиденные проблемы, особенно, если вы используете спидхак VU Cycle Stealing.
  • F5 - Переключение режимов деинтерлейса, только для GSdx. Перебираются все значения по очереди, начиная с None и заканчивая Blend bff, потом все снова.
  • F6 - Переключение соотношения сторон, 4:3/16:9/Stretch to window (растянуть на все окно).
  • F7 - Имитация "телевизора", выводится только часть пикселей, есть два режима с различной плотностью заполнения, может ускорить эмуляцию только в том случае если видеокарта слаба настолько что не успевает вовремя отрисовать все пиксели (возможно, некоторые очень старые встроенные видеокарты, похоже, функция сделана Just For Fun).
  • F8 - Take Screenshot, снять скриншот и положить в папку snaps.
  • F9 - Переключение режимов рендера, Hardware/Software.
  • F12 - Запустить запись видео, подробное описание здесь