3dsmax 8. Подгрузка объектов уровня — различия между версиями — S.T.A.L.K.E.R. Inside Wiki

3dsmax 8. Подгрузка объектов уровня — различия между версиями

Материал из S.T.A.L.K.E.R. Inside Wiki

Перейти к: навигация, поиск
 
(не показаны 4 промежуточных версий 2 участников)
Строка 1: Строка 1:
'''В данной статье я расскажу как настроить конвертер от Бардака для декомпиляции уровней, преобразовать им уровень в формат редактора уровней из комплекта сдк от СТАЛКЕРА, а затем подгрузить данный уровень в 3ds max 8. В уроке я расскажу о некоторых приёмах работы с material editor-ом и о использовании слоёв. '''
+
В данной статье я расскажу как настроить конвертер от Бардака для декомпиляции уровней, преобразовать им уровень в формат редактора уровней из комплекта SDK от Сталкера, а затем подгрузить данный уровень в 3ds max 8. В уроке я расскажу о некоторых приёмах работы с material editor-ом и о использовании слоёв.
 
+
<br>
 
+
<br>В процессе нам понадобится [http://www.stalkerin.gameru.net/downloads/SDK/ai_compiler/xray_re-tools-10sep2008.rar xray_re-tools-10sep2008], плагины экспорта в формат object, установленный SDK для сталкера, 3ds max 8 и распакованная игра.
'''В процессе нам понадобится xray_re-tools-10sep2008, плагины экспорта в формат object([http://www.stalkerin.gameru.net/ www.stalkerin.gameru.net]), установленный SDK для сталкера, и 3ds max 8 и распакованная игра.'''
+
<br>
 
+
<br>И так начнём, сначала распакуем xray_re-tools (куда не важно), после чего нужно поправить конфиги, в '''fsconverter.ltx'''.
'''И так начнём, сначала распакуем xray_re-tools (куда не важно), после чего нужно поправить конфиги, в fsconverter.ltx '''
+
<br>
 
+
<ini>$sdk_root$ = false| false| C:\program files\x-ray sdk\level_editor\</ini>
'''$sdk_root$<nowiki>= false| false| C:\program files\x-ray sdk\level_editor\</nowiki>'''
+
По умолчанию так, зависит от того куда вы установили сдк.
 
+
<br>В '''converter.ini''' ищем секцию 2947 (тень Чернобыля) и указываем пути (у меня так, поправьте их под свои):
'''По умолчанию так, зависит от того куда вы установили сдк'''
+
<ini><nowiki>; 2947+ (финалка включая обновления)
 
+
[2947_config]:2945_config
'''в converter.ini ищем секцию 2947(тень чернобыля) и указываем пути(у меня так поправьте их под свои)'''
+
$game_data$<nowiki>= C:\Moding\SoC\gamedata\
 
+
$game_levels$<nowiki>= C:\Moding\SoC\gamedata\levels\</ini>
'''<nowiki>; 2947+ (финалка включая обновления)</nowiki>'''
+
И напротив слова '''default = 2947_config''' (т.е. поставили за умолчанием секцию теней Чернобыля).
 
+
<br>Теперь в папке xray_re-tools создадим bat-файл. Для этого создайте текстовый документ и смените расширение (например: '''Текстовый документ.txt''' поменяйте на '''декомпиляция.bat''') в котором напишите:
'''<nowiki>[2947_config]:2945_config</nowiki>'''
+
<ini>converter -level testers_mp_rostok -out rostok -mode le -with_lods
 
+
pause</ini>
'''$game_data$<nowiki>= C:\Moding\SoC\gamedata\</nowiki>'''
+
т.е. у меня карта с именем '''testers_mp_rostok''', будет сохранена в SDK в папку '''maps''' с именем '''rostok''', а ключи le и -with_lods указывают что карта разберётся в формат Level Editor'a и с лодами. После редактирования сохраняем и закрываем содержимое батника, щёлкаем на нём 2 раза и ждём пока разберётся локация.
 
+
<br>
'''$game_levels$<nowiki>= C:\Moding\SoC\gamedata\levels\</nowiki>'''
+
<br>После чего открываем Level Editor, жмём file -> open и выбираем '''rostok'''. Для удобности можно удалить мелкие объекты и деревья, вот как стало у меня.
 
+
{|
 
+
|valign=top|[[Изображение:load_level1.jpg|thumb|150px|Удалены lod-объекты]]
'''И напротив слова default = 2947_config(те поставили за умолчанием секцию теней чернобыля)'''
+
|}
 
+
Мне понравился вот этот объект:
 
+
{|
'''Теперь в папке xray_re-tools создадим bat файл для этого создайте текстовый документ и смените расширение(например: Текстовый документ.txt поменяйте на декомпиляция.bat) в котором напишите '''
+
|valign=top|[[Изображение:load_level2.jpg|thumb|150px|Трансформаторная будка, которую мы будем рипать]]
 
+
|}
'''converter -level testers_mp_rostok -out rostok -mode le -with_lods'''
+
Выделяем его и жмём enter, видим:
 
+
{|
'''pause'''
+
|valign=top|[[Изображение:load_level3.jpg|thumb|150px|Object Properties выбранного объекта]]
 
+
|}
 
+
Нас интересует '''Reference level\rostok\rostok_part0011''' (т.е. где искать наш объект).
'''те у меня карта с именем testers_mp_rostok ,будет сохранена в сдк в папку maps с именем rostok, а ключи le и -with_lods указывают что карта разберётся в формат левел эдитора и с лодами после сохраняем и закрываем батник, щёлкаем на нём 2 раза и ждём пока разберётся лока.'''
+
<br>Теперь открываем Actor Editor, жмём file -> load и открываем этот объект. Обычно он находится здесь С:\Program Files\X-Ray SDK\level_editor\rawdata\objects\levels\rostok.
 
+
{|
'''После чего открываем левел эдитор, жмём file -> open и выбираем rostok, для удобности можно удалить мелкие объекты и деревья, вот как стало у меня.'''
+
|valign=top|[[Изображение:load_level4.jpg|thumb|150px|Наш объект в Actor Editor'e]]
 
+
|}
[[Изображение:load_level1.jpg|750px]]
+
Затем в Actor Editor'e жмём File -> export -> export to obj, указываем имя, куда сохранять и жмём ок.
 
+
<br>Но не спешим закрывать Actor Editor, нам ещё интересна вкладка '''Surface''' - там у нас настройка материалов.
 
+
{|
'''Мне понравился вот этот домик '''
+
|valign=top|[[Изображение:load_level5.jpg|thumb|150px|Actor Editor с раскрытой вкладкой '''Surface''']]
 
+
|}
[[Изображение:load_level2.jpg|550px]]'''Выделяем его и жмём enter, видим'''
+
Теперь запускаем макс (не забываем что должны быть установлены плагины экспорта для макса в формат object и смонтирован виртуальный жёсткий диск X:\)  
 
+
<br>Щёлкаем на иконке слоёв.
[[Изображение:load_level3.jpg|750px]]
+
{|
 
+
|valign=top|[[Изображение:load_level6.jpg|thumb|150px]]
 
+
|}
'''Нас интересует Reference level\rostok\rostok_part0011 (те имя объекта)'''
+
И видим:
 
+
{|
'''Теперь открываем левел эдитор(тут автор немного ошибся, запускать нужно Actor Editor, скрин ниже сделан им верно там Actor Editor)  жмём file > load и открываем этот объект обычно он находится здесь С:\Program Files\X-Ray SDK\level_editor\rawdata\objects\levels\rostok'''
+
|valign=top|[[Изображение:load_level7.jpg|thumb|150px|Окно Слоёв]]
 
+
|valign=top|[[Изображение:load_level8.jpg|thumb|150px]]
[[Изображение:load_level4.jpg|750px]]
+
|}
 
+
Так же мы видим колонки '''hide''' (можем спрятать как весь слой так и объект слоя), '''freeze''' (можем заморозить как весь слой так и объект слоя, т.е. запретить трансформацию и выделение), '''render''' (тут различные типы визуализации объекта/слоя) и т.д.
 
+
<br>Итак, жмём на слое правой кнопкой мыши, выбираем из открывшегося меню '''select''' а затем жмём file > import и выбираем то что мы сохранили из Actor Editor'а, видим:
'''Затем жмём File> export> export to obj указываем имя и куда сохранять, жмём ок, но не спешим закрывать левел эдитор нам ещё интересна вкладка surface там у нас настройка материалов'''
+
{|
 
+
|valign=top|[[Изображение:load_level9.jpg|thumb|150px|Окно импорта OBJ-файла]]
[[Изображение:load_level5.jpg|750px]]
+
|}
 
+
Делаем всё как на рисунке. В результате чего получили все объекты нашего домика на новом слое:
 
+
{|
'''Теперь запускаем макс(не забываем что должны быть установлены плагины экспорта для макса в формат object и смонтировани виртуальный жёсткий диск X:\) Щёлкаем на иконке слоёв '''
+
|valign=top|[[Изображение:load_level10.jpg|thumb|150px| Наш объект в 3dsmax импортирован и распределён по слою]]
 
+
|}
[[Изображение:load_level6.jpg|350px]]
+
В дальнейшем мы можем легко выделить все объекты слоя нажав на слое правой клавишей мыши и выбрав select, так же можем поступить с любым объектом слоя, ещё мы можем спрятать весь слой или его части, и при необходимости быстро выделив слой (те все объекты дома и экспортировать его).
 
+
<br>Теперь перейдём к настройке материалов, нажмём M и увидим:
 
+
{|
'''И видим'''
+
|valign=top|[[Изображение:load_level11.jpg|thumb|150px|Окно редактора материалов]]
 
+
|}
[[Изображение:load_level7.jpg|350px]]
+
Делаем как показано на рисунке и видим:
 
+
{|
 
+
|valign=top|[[Изображение:load_level12.jpg|thumb|150px|Окно Material\Map Browser]]
[[Изображение:load_level8.jpg|350px]]
+
|}
 
+
Теперь делаем следующее:
 
+
{|
'''Так же мы видим колонки hide(можем спрятать как весь слой так и объект слоя), freeze(можем заморозить как весь слой так и объект слоя те запретить трансформацию), render(тут различные типы визуализации объекта/слоя) и тд. И так жмём на слое правой кнопкой мыши выбираем из открывшегося меню select а зате жмём file > import и выбираем то что мы сохранили из актор эдитора, видим'''
+
|valign=top|[[Изображение:load_level13.jpg|thumb|150px|Перенос материалов сцены из библиотеки в слоты Material Editor'a. ]]
 
+
|}
[[Изображение:load_level9.jpg|350px]]
+
Каждый материал нужно назначить в свой слот. Делать это можно двумя способами:
 
+
* 1.Выбирать ячейку и кликать по материалу 2 раза, каждый раз передвигая выделение слота.
 
+
* 2. Просто перетаскивать материалы из окна Material\Map Browser по ячейкам Material Editor'a.
<center>'''Делаем всё как на рисунке'''</center>
+
Ну вот текстуры все в слотах, дело за материалами и открытием текстур:
 
+
{|
 
+
|valign=top|[[Изображение:load_level14.jpg|thumb|150px|Замена типа материала со '''Standart''' на '''S.T.A.L.K.E.R. MTL''']]
<center>'''В результате чего получили все объекты нашего домика на новом слое'''</center>
+
|}
 
+
Такими действиями мы поставим тип материалов сталкера.
<center>[[Изображение:load_level10.jpg|750px]]</center>
+
<br>Теперь назначаем сами свойства материала. В максе они тут:
 
+
{|
'''В дальнейшем мы можем легко выделить все объекты слоя нажав на слое правой клавишей мыши и выбрав select, так же можем поступить с любым объектом слоя, ещё мы можем спрятать весь слой или его части, и при необходимости быстро выделив слой(те все объекты дома и экспортировать его)'''
+
|valign=top|[[Изображение:load_level15.jpg|thumb|150px| Настройки шейдеров материала]]
 
+
|}
'''Теперь перейдём к настройке материалов, нажмём M и увидим'''
+
А теперь вспоминаем, что это домик у нас открыт в Actor Editor'e и мы можем посмотреть настройку материалов для конкретной текстуры:
 
+
{|
<center>[[Изображение:load_level11.jpg|350px]]</center>
+
|valign=top|[[Изображение:load_level16.jpg|thumb|150px]]
 
+
|}
 
+
Меняем материалы для всех текстур, а затем:
<center>'''Делаем как написано на рисунке и видим'''</center>
+
{|
 
+
|valign=top|[[Изображение:load_level17.jpg|thumb|150px]]
<center>[[Изображение:load_level12.jpg|750px]]</center>
+
|}
 
+
После чего выбираем текстуру из папки с распакованной игрой и после видим это:
 
+
{|
<center>'''Теперь делаем следующее'''</center>
+
|valign=top|[[Изображение:load_level18.jpg|thumb|150px]]
 
+
|}
<center>[[Изображение:load_level13.jpg|750px]]</center>
+
Повторяем операцию для всех текстур и в результате:
 
+
{|
 
+
|valign=top|[[Изображение:load_level19.jpg|thumb|150px|Наш объект в настроенными материалами в 3ds max]]
<center>'''Ну вот текстуры все в слотах, дело за материалами и открытием текстур'''</center>
+
|}
 
+
Ну вот собственно всё. А выполнив данную операцию для всех объектов нашего уровня мы подгрузим весь уровень в 3ds max. А благодаря тому, что они будут на разных слоях, мы сможем быстро оперировать нужными нам объектами (выделять, а значит экспортировать, прятать, да и в общем облегчать себе работу). Не знаю как вы, а я делаю именно так. Использование слоёв очень удобно и практично, особенно если в сцене много объектов, а очень часто это именно так. Надеюсь статья окажется вам полезной.
<center>[[Изображение:load_level14.jpg|750px]]</center>
+
<br>
 
+
<br>Автор: '''Жуков Антон (Dzot), AMK-II(c)'''
<center>'''Такими действиями мы поставим тип материалов сталкера'''</center>
+
<br>Оформление: '''Pihan13'''
 
+
 
+
<center>'''Теперь назначаем сами материалы в максе они тут '''</center>
+
 
+
<center>[[Изображение:load_level15.jpg|350px]]</center>
+
 
+
 
+
<center>'''А теперь вспоминаем что это домик у нас открыт в актор эдиторе и мы можем посмотреть настройку материалов для конкретной текстуры'''</center>
+
 
+
<center>[[Изображение:load_level16.jpg|350px]]</center>
+
 
+
 
+
<center>'''Меняем материалы для всех текстур, а затем'''</center>
+
 
+
<center>[[Изображение:load_level17.jpg|750px]]</center>
+
 
+
 
+
<center>'''После чего выбираем текстуру из папки с распакованной игрой и после видим это'''</center>
+
 
+
<center>[[Изображение:load_level18.jpg|350px]]</center>
+
 
+
 
+
<center>'''Повторяем операцию для всех текстур и в результате'''</center>
+
 
+
<center>[[Изображение:load_level19.jpg|650px]]</center>
+
 
+
 
+
<center>'''Ну вот собственно данную операцию повторяем для всех объектов из нашего уровня, и благодаря тому что они будут на разных слоях мы сможем быстро оперировать нужными нам объектами(выделять, а значит экспортировать, прятать, а значит облегчать себе работу) Не знаю как вы, а я делаю именно так, использование слоёв очень удобно и практично особенно если в сцене много объектов, а очень часто это именно так. Надеюсь статья окажется вам полезной.'''</center>
+
 
+
 
+
'''Автор: Жуков Антон(Dzot), AMK-II(c)'''
+
  
 
[[Категория:Wireframe]]
 
[[Категория:Wireframe]]

Текущая версия на 06:13, 5 января 2011

В данной статье я расскажу как настроить конвертер от Бардака для декомпиляции уровней, преобразовать им уровень в формат редактора уровней из комплекта SDK от Сталкера, а затем подгрузить данный уровень в 3ds max 8. В уроке я расскажу о некоторых приёмах работы с material editor-ом и о использовании слоёв.

В процессе нам понадобится xray_re-tools-10sep2008, плагины экспорта в формат object, установленный SDK для сталкера, 3ds max 8 и распакованная игра.

И так начнём, сначала распакуем xray_re-tools (куда не важно), после чего нужно поправить конфиги, в fsconverter.ltx.

$sdk_root$ = false| false| C:\program files\x-ray sdk\level_editor\

По умолчанию так, зависит от того куда вы установили сдк.
В converter.ini ищем секцию 2947 (тень Чернобыля) и указываем пути (у меня так, поправьте их под свои):

<nowiki>; 2947+ (финалка включая обновления)
[2947_config]:2945_config
$game_data$<nowiki>= C:\Moding\SoC\gamedata\
$game_levels$<nowiki>= C:\Moding\SoC\gamedata\levels\

И напротив слова default = 2947_config (т.е. поставили за умолчанием секцию теней Чернобыля).
Теперь в папке xray_re-tools создадим bat-файл. Для этого создайте текстовый документ и смените расширение (например: Текстовый документ.txt поменяйте на декомпиляция.bat) в котором напишите:

converter -level testers_mp_rostok -out rostok -mode le -with_lods
pause

т.е. у меня карта с именем testers_mp_rostok, будет сохранена в SDK в папку maps с именем rostok, а ключи le и -with_lods указывают что карта разберётся в формат Level Editor'a и с лодами. После редактирования сохраняем и закрываем содержимое батника, щёлкаем на нём 2 раза и ждём пока разберётся локация.

После чего открываем Level Editor, жмём file -> open и выбираем rostok. Для удобности можно удалить мелкие объекты и деревья, вот как стало у меня.

Удалены lod-объекты

Мне понравился вот этот объект:

Трансформаторная будка, которую мы будем рипать

Выделяем его и жмём enter, видим:

Object Properties выбранного объекта

Нас интересует Reference level\rostok\rostok_part0011 (т.е. где искать наш объект).
Теперь открываем Actor Editor, жмём file -> load и открываем этот объект. Обычно он находится здесь С:\Program Files\X-Ray SDK\level_editor\rawdata\objects\levels\rostok.

Наш объект в Actor Editor'e

Затем в Actor Editor'e жмём File -> export -> export to obj, указываем имя, куда сохранять и жмём ок.
Но не спешим закрывать Actor Editor, нам ещё интересна вкладка Surface - там у нас настройка материалов.

Actor Editor с раскрытой вкладкой Surface

Теперь запускаем макс (не забываем что должны быть установлены плагины экспорта для макса в формат object и смонтирован виртуальный жёсткий диск X:\)
Щёлкаем на иконке слоёв.

Load level6.jpg

И видим:

Окно Слоёв
Load level8.jpg

Так же мы видим колонки hide (можем спрятать как весь слой так и объект слоя), freeze (можем заморозить как весь слой так и объект слоя, т.е. запретить трансформацию и выделение), render (тут различные типы визуализации объекта/слоя) и т.д.
Итак, жмём на слое правой кнопкой мыши, выбираем из открывшегося меню select а затем жмём file > import и выбираем то что мы сохранили из Actor Editor'а, видим:

Окно импорта OBJ-файла

Делаем всё как на рисунке. В результате чего получили все объекты нашего домика на новом слое:

Наш объект в 3dsmax импортирован и распределён по слою

В дальнейшем мы можем легко выделить все объекты слоя нажав на слое правой клавишей мыши и выбрав select, так же можем поступить с любым объектом слоя, ещё мы можем спрятать весь слой или его части, и при необходимости быстро выделив слой (те все объекты дома и экспортировать его).
Теперь перейдём к настройке материалов, нажмём M и увидим:

Окно редактора материалов

Делаем как показано на рисунке и видим:

Окно Material\Map Browser

Теперь делаем следующее:

Перенос материалов сцены из библиотеки в слоты Material Editor'a.

Каждый материал нужно назначить в свой слот. Делать это можно двумя способами:

  • 1.Выбирать ячейку и кликать по материалу 2 раза, каждый раз передвигая выделение слота.
  • 2. Просто перетаскивать материалы из окна Material\Map Browser по ячейкам Material Editor'a.

Ну вот текстуры все в слотах, дело за материалами и открытием текстур:

Замена типа материала со Standart на S.T.A.L.K.E.R. MTL

Такими действиями мы поставим тип материалов сталкера.
Теперь назначаем сами свойства материала. В максе они тут:

Настройки шейдеров материала

А теперь вспоминаем, что это домик у нас открыт в Actor Editor'e и мы можем посмотреть настройку материалов для конкретной текстуры:

Load level16.jpg

Меняем материалы для всех текстур, а затем:

Load level17.jpg

После чего выбираем текстуру из папки с распакованной игрой и после видим это:

Load level18.jpg

Повторяем операцию для всех текстур и в результате:

Наш объект в настроенными материалами в 3ds max

Ну вот собственно всё. А выполнив данную операцию для всех объектов нашего уровня мы подгрузим весь уровень в 3ds max. А благодаря тому, что они будут на разных слоях, мы сможем быстро оперировать нужными нам объектами (выделять, а значит экспортировать, прятать, да и в общем облегчать себе работу). Не знаю как вы, а я делаю именно так. Использование слоёв очень удобно и практично, особенно если в сцене много объектов, а очень часто это именно так. Надеюсь статья окажется вам полезной.

Автор: Жуков Антон (Dzot), AMK-II(c)
Оформление: Pihan13

Другие места
LANGUAGE