3D Ripper DX — уникальная утилита. Она позволяет извлечь из трехмерных игр модели персонажей, техники, оружия и даже целые локации. По понятным причинам использовать все эти ресурсы в коммерческих проектах нельзя, а вот для создания бесплатных дополнений — вполне. Сегодня мы детально разберем принципы работы 3D Ripper и научимся извлекать из игр трехмерные объекты. Оно вертится!
Для захвата 3D-сцен нам потребуется, во-первых, сам 3D Ripper DX (для захвата всей геометрии, текстур и шейдеров, отрендеренных в текущем кадре), а во-вторых, D3DX9_29.dll — файл библиотеки для DirectX, необходимый для работы 3D-риппера.
3D Ripper работает по следующему принципу. При запуске программы необходимо указать путь к exe-файлу игры, из которой нужно извлечь ресурсы, и настроить ряд параметров захвата. После этого игра грузится не напрямую, а через 3D Ripper.
Если игра поддерживает DirectX 9.0, то в левом верхнем углу программы высветится сообщение Ready to Capture, информирующее о том, что можно приступать к захвату. Остается лишь добраться до того места, которое необходимо «сфотографировать», и нажать горячую клавишу.
Даже при наличии мощной машины 3D-риппер повесит запущенную игру на несколько секунд, а то и минут. За этот промежуток времени он собирает необходимые данные (геометрия уровня, шейдеры, текстуры, наложенные на объекты).
3D для всех
Запустите 3D Ripper. На экране появится окно, в котором необходимо настроить ряд параметров. В поле под строкой Please Select DirectX 9 application to analize укажите путь к любой установленной игре, использующей возможности DirectX девятой версии. Мы для примера использовали Call of Duty 2.
Теперь нужно назначить горячие клавиши на различные действия утилиты. Параметр поля Capture key отвечает за клавишу захвата сцены, в пределах которой находится игрок. По умолчанию на данное действие назначена клавиша F12. Дополнительно назначьте клавишу на пункт Wireframe mode key, данная опция позволит увидеть внутреннее устройство игровой локации — множество полигонов или треугольников, из которых состоят все объекты. Назначив клавишу на действие Disable texture key, вы сможете включать/отключать все игровые текстуры.
Теперь разберем предназначение флажков напротив поля Capture key. Если вы поставите галку в пункте Capture all shaders, то риппер при захвате сцены вытянет из игры все шейдеры. Хотите захватить все текстуры, использованные в локации? Ставьте галку напротив пункта Capture all textures. Если вам нужно запустить игру в оконном режиме, то установите флажок напротив опции Force windowed mode.
Последний пункт — Disable shader model 3.0 — по умолчанию отключен, лучше его не активировать, иначе программа будет часто вылетать в Windows. При желании вы можете изменить пути хранения сцен, текстур (кнопки Frames (*.3DR) output directory, Textures (*.DDS) output directory и Shaders (*.VSH, *.PSH) output directory).
Атрибут Camera FOV отвечает за обзор камеры. Чем больше значение, тем больше объектов будет в захваченной сцене. По умолчанию значение данного параметра ровно 85.
C настройкой риппера разобрались. Жмите кнопку Launch, чтобы запустить Call of Duty 2 в режиме захвата. Вы увидите, что в левом верхнем углу игры высветится надпись Ready to Capture. Начните какую-либо миссию в CoD 2, отыщите наиболее подходящую для захвата сцены локацию и нажмите F12. 3D Ripper сохранит все извлеченные файлы на винчестер в заданные вами директории.
Выйдите из игры и запустите 3DS Max. Выберите пункт меню File/Import и в появившемся окне в поле Тип файлов задайте параметр 3DR Import (*.3DR). Затем укажите путь к захваченной 3D-сцене, например, C:\Documents and Settings\User\Мои Документы \3DReaperDX\Frames\frame006b27f2.3dr. Кликните по кнопке Ok.
В появившемся меню импорта сцены, не изменяя никаких параметров, снова нажмите на Оk. Подождите, пока «Макс» загрузит захваченный 3D-кадр. На слабых машинах этот процесс может затянуться на несколько часов: крайне желательно, чтобы оперативной памяти было не менее 1 Гб (в этом случае средних размеров сцена загружается за 2-3 минуты).
Описанным методом вы можете захватывать сцены из любой игры, поддерживающей DirectX 9.0, после этого разбирать их в «Максе» на составляющие и использовать при создании модов.
Кому Понравилось + в репу