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  
Ответ Цитата

[Материал]  |  № 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  
Не имеет значения, браш или модель. Полигоны и текстура есть - значит выдерет.
Правда, иногда не выходит, к примеру, я из вторых "Механоидов" пытался выдрать модель горизонта. В итоге - нихрена у меня не вышло, как бы я не парился и не шаманил.
Ответ Цитата

[Материал]  |  № 17  |  01.06.2012  |  0  
В принципе вот так можно и сделать римейк SS 2,только одному это не сделать - нужна группа)
Ответ Цитата

[Материал]  |  № 16  |  01.06.2012  |  +4  
блин, скоро сайт зальет новые говнокарты... кривые ремейки карт с СС 2 или чего-нито еще, сделанные школярами. Теперь все будут тырить не только модели, но и сюжет, музыку, звуки и текстуру из одного и того же источника... смысл? тем более что заменять СС2 врагов на СС3 врагов будет не интересно. Они совсем не вписываются.

P.S.: копипастеры! Помните, что уровни с пейнкиллера тоже сделаны огромной моделью и их можно точно так же выдрать!
Ответ Цитата

[Материал]  |  № 14  |  01.06.2012  |  -2  
А чо карта в игре не показывается? я смог на ней побегать только в Эдиторе.
Ответ Цитата

[Материал]  |  № 15  |  01.06.2012  |  +2  
Нету .nfo файла. Да и зачем?
Ответ Цитата

[Материал]  |  № 12  |  01.06.2012  |  +2  
Отличная статья)
Ответ Цитата

[Материал]  |  № 9  |  01.06.2012  |  +2  
ООООФИГЕННО!!!Только не стоит копировать целые уровни.Иначе все начнут делать ремейки карт, тупо копирую все и ничего своего не добавляя.И так пропадет интерес к ремейкам карт
Ответ Цитата

[Материал]  |  № 18  |  01.06.2012  |  +7  
Иначе вы станете Николаем
Ответ Цитата

[Материал]  |  № 23  |  07.06.2012  |  +1  
Ну, или мной. :D
Ответ Цитата

[Материал]  |  № 7  |  01.06.2012  |  0  
просто нет слов prikol_b
Ответ Цитата

[Материал]  |  № 3  |  01.06.2012  |  -1  
Классно.
Ответ Цитата

[Материал]  |  № 2  |  01.06.2012  |  0  
Вот он, упадок творчества.
Ответ Цитата

[Материал]  |  № 19  |  02.06.2012  |  +3  
Увы, так и есть. Если хочештся побегать по уровням из PK, то лучше играть в PK ;)
Ответ Цитата

[Материал]  |  № 1  |  01.06.2012  |  0  
Чую, скоро "мапперы" понаэкспортируют в SS3 уровней из других игр...
Ответ Цитата

[Материал]  |  № 4  |  01.06.2012  |  0  
Quote
Для SED3.5 Лайтвэйв не нужен, хватит и Макса - SED3.5 понимает его формат .fbx

Знаю, но статью я делал обобщённо для SS 3 и SE HD Editor-ов.
Quote
Кстати, у меня в редакторе на моих моделях никогда не отображается detail normal map, как бы я её не настраивал, почему?

Насколько мне известно, для правильной работы Detail NormalMap нужно, чтобы в шейдере присутствовала просто NormalMap.
Ответ Цитата

[Материал]  |  № 5  |  01.06.2012  |  0  
Quote
Насколько мне известно, для правильной работы Detail NormalMap нужно, чтобы в шейдере присутствовала просто NormalMap.

Присутствует. Все равно, не вижу никакой разницы между наличием и отсутствуем detail normal map.
Ответ Цитата

[Материал]  |  № 6  |  01.06.2012  |  0  
Попробуй скачать уровень из этой статьи, посмотри как у меня устроено(я добавил Detail только на одну поверхность), глядишь разберёшься ;)
Ответ Цитата

[Материал]  |  № 8  |  01.06.2012  |  0  
Сдается мне, дело может быть в параметре Tangent UVMap - у меня и Parallax displacement отказывался работать правильно, пока я не указал там свою UV-карту. Потом проверю.
Ответ Цитата

[Материал]  |  № 10  |  01.06.2012  |  0  
Поправил :D
Ответ Цитата

[Материал]  |  № 11  |  01.06.2012  |  0  
Tangent UVMap, не думал, что ты забудешь его указать. Конечно же дело в нём. Нужно выбрать UV-карту, на которой будут находиться нормалии, когда-то давно тоже с этим сталкивался, но ещё в Serious Editor 2.
Ответ Цитата

[Материал]  |  № 13  |  01.06.2012  |  0  
Я не забывал его указывать. Я не знал, что это за штуковина, для чего конкретно она нужна и чем движку не угодна UV-карта, указанная в настройках шейдера :3 Как я понимаю, она нужна для тех опций шейдера, которые зависят от угла обзора, расстояния до полигона/вертекса и т.п.?
Тогда, может, нужно и развёртку делать какой-то особенной, не как "лишь бы текстура ровно легла"? :3
Ответ Цитата

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

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

Гость

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

Сейчас обсуждают

HoBu4oK7
maximmoz2454
AzuNeko5
SeriousRoman27
BaBuinel41
Boffy1662
Boffy61
BaBuinel5
AzuNeko6
Ar2R-devil-PiNKy18

МЕМЫ

НОВЫЙ
Serious_Stepan 3 1

Файлы

Boffy
74 8 0

Ar2R-devil-PiNKy
9899 2509 86

RRomanS95
1618 452 8

STALKER_27
2590 845 23

DeMoN
1972 1022 8

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

Croteam [4]
Материалы по студии разработчика игр CroTeam.
Интервью с разработчиками [9]
Интервью с разработчиками, а также их издателями.
Serious Sam 1 [9]
Статьи о Serious Sam 1
Serious Sam 2 [6]
Статьи о Serious Sam 2
Serious Sam HD [4]
Статьи о HD-серии, ремейков классических версий Сэма.
Serious Sam 3: BFE [10]
Статьи о Serious Sam 3: BFE
Уроки по Serious Editor 1 [60]
Уроки по Serious Editor 2 [3]
Самое серьёзное редактирование, на русском!
Уроки по Serious Editor 3 [40]
Уроки по работе с редактором.
Serious Engine [6]
Описание возможностей всех движков компании Croteam
Разное [26]
Всё что не подошло не под одну из вышеупомянутых категорий.
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 Lяп. Тридцать восьмой выпуск
172 5.0

Выживание в Затопленном Городе: Бесконечные перезапуски! - Aftermath (Serious Sam Map) №5
141 5.0

Обновлённый "Нож брутальным хватом"
217 5.0

Serious Sam Xbox - улучшенная классика
250 5.0

Взрывная поездка в прошлое - Aftermath (Serious Sam Map) №4
165 5.0

Статистика



На сайте: 15
Гостей: 15
Пользователей: 0