3D Ripper DX и Serious Engine 3


На самом деле, вставить в игру, работающую на Serious Engine 3/2 модель или даже целый уровень из приложения, использующего DirectX, довольно просто, тяжелее всего, начать, подбирать нужное Программное Обеспечение. И обойти подводные камни, которые могу напрочь отбить желание довести работу до конца.

Вам понадобятся следующие программы:
  1. 3D Ripper DX
  2. Lightwave (Layout) и SeriousPlugin4LW плагин для него.
  3. 3D Max с поддержкой плагина для импорта *3dr моделей.
Подготовительные работы.

Итак, нужное ПО мы собрали, теперь нужно определится с игрой, из которой мы будем экспортировать 3D модели. Повторяюсь, это может быть абсолютно любая игра, у которой в настройках API можно выбрать DirectX 9 и выше.
Для написания этой статьи я взял игру Serious Sam 2, и переносить в Serious Sam 3 я буду уровень под названием 5_7_BossArena. Serious Sam 2 я выбрал не случайно, т.к. к нему идёт редактор, в котором можно редактировать дальность прорисовки объектов, в большинстве игр, работают системы оптимизации, которые не дадут вам захватить уровень целиком т.к ZBuffer не даст обрисовать объекты за спиной камеры и скрытые за другими препятствиями, поэтому придётся импровизировать, но сейчас речь не об этом.
Для начала увеличим дальность прорисовки объектов, в Serious Editor 2 выделяем все объекты, клавиша "+” и в Cull distance выставляем 10000.



Дальше можно удалить с уровня не нужную геометрию: аптечки, деревья, патроны  и т.д. Хотя это можно легко сделать и в 3D Max и даже в Serious Editor 3.
Когда всё готово, нужно выбрать правильное положение, чтобы сделать 3D скриншот, причём такое, чтобы весь уровень целиком попадал в кадр.
Итак, я удалил с уровня деревья и предметы, а также сделал новый спаун, такой, что в угол обзора теперь попадает весь уровень.



Теперь я сохраняю свой уровень, подготовительные работы закончены.

Как пользоваться 3D Ripper DX

3D Ripper DX — уникальная программа. Она позволяет извлечь из трехмерных игр модели персонажей, техники, оружия и даже целые локации. По понятным причинам использовать все эти ресурсы в коммерческих проектах нельзя, а вот для создания бесплатных дополнений — вполне! Сегодня мы детально разберем принципы работы 3D Ripper и научимся извлекать из игр трехмерные объекты.

  1. Запускаем 3d Ripper DX, назначаем папки, куда будут сохраняться текстуры, модели, шейдеры, жмём кнопку "Start Global System Monitoring”. Теперь программа будет отслеживать все приложения использующие DirectX. Если у вас Windows 7, то возможно потребуется отключить UAC.
  2. Теперь запускаем Serious Sam 2 или любую другую игру, из которой будем извлекать трехмерные объекты. Сначала нам необходимо удостоверится, что в настройках API, стоит DirectX, в настройках Serious Sam 2,  невозможно поменять API, хотя игра использует DirectX по умолчанию.
  3. Теперь запускаем игру, если всё "ok”, то в левом верхнем углу появится окошко "Ready to Capture”. Жмём клавишу "F12”, по умолчанию, ждём пару секунд, и воуля, готово!!! На этом "выдирание” геометрии из игры закачивается, все ресурсы вы сможете найти в папках которые вы указывали(п.1).

Экспорт 3D моделей в Serious Editor 3

1) Теперь нам понадобится программа Lightwave (Скачать можно ТУТ) и специальный плагин для этой программы "SeriousPlugin4LW”, который позволит нам конвертировать модели из LightWave в формат ".amf” понятный Serious Editor 3.

2) Установка "SeriousPlugin4LW”.
1.Запустите Layout (красная иконка), в процессе конвертирования нам понадобится только эта программа.
2. Выберите вкладку Utilities и слева нажмите кнопку Add Plugins, в появившемся окне выберите скачанный файл "SeriousPlugin4LW.p



3. Если вылезет окошко, что мол 14 плагинов добавлено успешно, то всё "ок”, установка плагина завершена.

3) Откройте "выдранную сцену” в формате ".3dr”, в 3d Max 9, удалите со сцены все лишние объекты, аптечки, врагов, оружие.



Очень часто случается так, что модель выдирается под неправильным углом, в результате чего она получается, сплющенной или наоборот вытянутой. Это можно легко исправить в 3D Max:
1. Выделяем все объекты.
2. Переходим в вид сверху



3. Далее выбираем модификатор FFD 2x2x2



4. В настройках модификатора выбираем Control Points.
5. Затем берём инструмент "Select and Movie” выделяем вершины и начинаем растягивать, придавая уровню правильные пропорции.



6. После этого сохраните обработанную модель в формате ".obj.”  При экспорте в *obj, ставим настройки как на скриншоте:



4) Вновь запустите Layout (красная иконка), и переместите вашу модель, в формате ".obj.” на сцену, путём простого перетаскивания. Если всё "ок”, модель должна появится на сцене.

5) Теперь зайдите на вкладку Utilities и слева нажмите Additional, в появившемся списке выберите SP4LWLayoutExportAllMeshes, после этого модель сохранится в той же директории, что и исходная, только в ".amf” формате.



6) Всё, процесс конвертации окончен!

Обработка, экспортированной модели в Serious Editor 3

1) Импорт модели в Serious Editor.
1. Запустите Serious Editor 3, File->New->Document World. Наведите мышь в произвольную область сцены и нажмите клавишу insert, появится зелёный куб – это статическая модель.
2. Не снимая выделения со статической модели, перейдите в Mesh Editor.
3. В Mesh Editor, заходим на вкладку Common->Import Mesh, в открывшемся окне, выбираем нашу модель в формате *amf.



2) Текстурирование. Текстурирование моделей в Serious Editor 3, превращается в сплошное удовольствие, так как UV-карты(координаты текстур) и Surface-карты(карты поверхностей) импортируются вместе с моделью.
1. Перейдите на вкладку Layer->Polygon maps.
2. Выбираем первую Polygon map и жмём: New->Shader Preset:
Tangent UVMap: название вашей модели с суффиксом _uv.
Material Attributes: материал поверхности, в моем случае Stone (камень).
3. Configuration->”+”. Shader->Browes->Standart.
4. Теперь нужно конвертировать наши текстуры из формата *dds в *tga, есть много способов, я использую DDS плагин для GIMP.
5. Далее на верхней панели Serious Editor 3 жмём: Texture->Create Texture, в открывшемся окне выбираем нашу текстуру в формате *tga и жмём Create.
6. Shader Standart:
Base texture(обязательно к заполнению): собственно сама наша текстура.
Gloss Mask (не обязательно для заполнения): текстура отвечает за "силу” воздействия освещения на участках модели.
Normal Map(желательно заполнять): придаёт "выпуклости” модели.  Для генерации карт нормалей я также использую специальный плагин для GIMP.
Detail NormalMap(строго рекомендую заполнять): это фирменный приём Croteam, который перешёл ещё со времён Serious Engine 1, добавляет текстуру которая начинает прорисовываться при приближении к объекту и придаёт детальности.
Blend Mask: служит для добавления Stains-ов, чтобы текстура не кхм.. "тайлилась”.



7. Далее следует проделать эту достаточно нудную процедуру со всеми Polygon map. В итоги должно получится что-то похожее на это:



3) Оптимизация геометрии. Дело в том, что Serious Editor 3 не способен переварить одиночную модель с большим количеством полигонов, игрок будет попросту проваливаться под землю в некоторых местах. поэтому нам придётся разделить её на несколько более маленьких. Также это поможет избежать артефактов при генерации световой карты, связанных с "чёрными полигонами”.
1. Переходим на вкладку PM->S. Слева выбираем одну из поверхностей. Затем переходим в Select->Select from cur map.



2. Затем жмём Ctrl+C и удаляем выделенные полигоны.
3. Переходим в World Editor, жмём клавишу insert, в tools выставляем координаты такие же, как и у первой модели. Затем переходим в  Mesh Editor и жмём Ctrl+V. Результат: мы разделили модель на 2 разных модели:



4. Пункт 3, стоит проделать до получения желаемого результата, когда игрок перестанет проваливаться сквозь модель и исчезнут артефакты со световой карты.

4) Далее я проделал стандартные операции: добавил освещение, спаун, деревья и т.д. Но сейчас я не буду углубляться, и расписывать, как я это делал. На эту тему есть много статей. В итоге  я получил:





Заключение

Вот собственно и всё. Мне даже сложно представить сколько всего можно сделать этим методом, дерзайте!
Если что-то не понятно, то можете скачать демо-уровень, который я сделал, в процессе написания этой статьи: 5_7_BossArena.gro (46.9 Mb).


Комментарии   

№ 36  |  04.12.2014  |  +1  
Автор зделай видео урок по этой статье если не сложно пожалуйста:)
Ответ Цитата

№ 35  |  10.05.2013  |  +2  
Мда, разобрался, спасибо большое за статью только вот проблема, модель очень растянута, некоторые полигоны не выдираются, + пытался через 3Д Макс настроить размер не выходит :(
Ответ Цитата

№ 32  |  28.10.2012  |  +2  
А на 64-битном разряде 3d ripper DX пойдет ???
(WIN7-X64)
Ответ Цитата

№ 33  |  15.12.2012  |  +2  
Пойдет, но возможности будут порезаны.
Ответ Цитата

№ 31  |  21.08.2012  |  +3  
Плиз, дайте ссылку на 3D Max.
Ответ Цитата

№ 29  |  04.07.2012  |  +1  
Я импортирую этот уровень в HD
Ответ Цитата

№ 28  |  30.06.2012  |  0  
Черт, мониторинг доступен только 32-битным ОСям :(
Придется назначать отслеживаемый исполнительный...
Ответ Цитата

№ 25  |  12.06.2012  |  0  
Я блин делал карту dome из mw3 на сэма, а оказывается можно было скопипастить D:
Ответ Цитата

№ 26  |  13.06.2012  |  0  
Нельзя. Модель получается как в зеркальном отображении и вообще никакой...
ZIM,в 3DR ведь есть строка "Also capture to Wavefront .OBJ". Зачем мучится с .3DS,если уже дадут готовый .obj?
И уж тем-более не все окна объяснил...
К примеру это:

Вот что мне тут делать? :)


Модели получаются с лишними объектами(Например:на карте стена стоит,как-будто разделяет на маленькую(где ГГ производил захват)и на большую(всё остальное)часть,оригами ещё бывают).
Вот как это решить?
Ответ Цитата

№ 27  |  21.06.2012  |  0  
Спс за конструктивный коммент, отвечаю :) :
1) C дефолтным *OBJ будет оооочень много проблем, проверено и перепроверено. Вот некоторые: модель будет многослойной (до 3-х полигонов в одном месте!!!), с дырами в геометрии, потому что нету фильтров как при импорте *3DR.
2)В 3DR import options, если идёт загрузка, а в итоге пустое окно, то можно убрать галочки с:
-Ignore ZENABLE
-Ignore ZWRITEENABLE
-Ignore invalid meshes
Ответ Цитата

№ 34  |  18.04.2013  |  0  
Для того, чтобы модели были максимально прямыми, нужно "снимать" под прямым углом (центрировать камеру, смотреть строго вверх или вниз). Плюс лучшим вариантом для настройки FOV и Monitor Aspect Ratio является выбрать значения из Recommended values. FOV обязательно должен быть "for width" (хотя, возможно, есть и игры-исключения).
Ответ Цитата

№ 24  |  10.06.2012  |  +9  
Во тьме ночной, при свете дня, качаю с депозита я!
Ответ Цитата

№ 21  |  03.06.2012  |  0  
Статаья супер, спасибо))
З.Ы. люди кто умеет анимировать модели напишите в ЛС и научите ^^"
Ответ Цитата

№ 20  |  02.06.2012  |  0  
С другой стороны, мапперы смогут перенести свои творения на новый моторчик?
Ответ Цитата

№ 22  |  03.06.2012  |  0  
нуу, в основном мы мапим под СЕД1, а браши не модели, их придется экспортировать и текстурить полностью вручную ...
Ответ Цитата

№ 30  |  09.08.2012  |  0  
Не имеет значения, браш или модель. Полигоны и текстура есть - значит выдерет.
Правда, иногда не выходит, к примеру, я из вторых "Механоидов" пытался выдрать модель горизонта. В итоге - нихрена у меня не вышло, как бы я не парился и не шаманил.
Ответ Цитата

Страницы: 1-10 11-19

Оставьте комментарий

Мини-профиль

Гость

Вы в группе: Гости
Ваш IP: 54.204.172.174

Информация

Прочее

Категории раздела

Croteam [3]
Материалы по студии разработчика игр CroTeam.
Интервью с разработчиками [9]
Интервью с разработчиками, а также их издателями.
Serious Sam 1 [10]
Статьи о Serious Sam 1
Serious Sam 2 [6]
Статьи о Serious Sam 2
Serious Sam HD [5]
Статьи о HD-серии, ремейков классических версий Сэма.
Serious Sam 3: BFE [9]
Статьи о Serious Sam 3: BFE
Уроки по Serious Editor 1 [54]
Уроки по Serious Editor 2 [2]
Самое серьёзное редактирование, на русском!
Уроки по Serious Editor 3 [33]
Уроки по работе с редактором.
Serious Engine [6]
Описание возможностей всех движков компании Croteam
Разное [24]
Всё что не подошло не под одну из вышеупомянутых категорий.
Serious Sam: Revolution [1]
Материалы по SS: Revolution, серьёзном обновлении классических Крутых Сэмов.
Serious Sam 1.05/1.07 SDK [10]
SDK - набор исходников для Serious Sam: The Second Encounter 1.05/1.07.

Голосование

С какой части Serious Sam началось ваше первое знакомство с серией?
1. Serious Sam: The First Encounter (2001)
2. Serious Sam: The Second Encounter (2002)
3. Serious Sam 2 (2005)
4. Serious Sam 3: BFE
5. Serious Sam HD: The First Encounter (2009)
6. Serious Sam HD: The Second Encounter (2010)
7. Serious Sam: Next Encounter (2004)
8. Serious Sam: Xbox (2002)
9. Serious Sam: Kamikaze Attack! (2011)
10. Serious Sam: Advance (2004)
11. Serious Sam: Double D (2011)
12. Serious Sam: The Random Encounter (2011)

Статистика



На сайте: 16
Гостей: 12
Пользователей: 4
BillyMiz, Gnogor, Danielcib, Malcolmpar