3dsmax. Создание левела с дорогой — различия между версиями — S.T.A.L.K.E.R. Inside Wiki

3dsmax. Создание левела с дорогой — различия между версиями

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

Перейти к: навигация, поиск
 
(не показана 1 промежуточная версия 1 участника)
Строка 1: Строка 1:
<center>Небольшая статейка по изготовлению дороги на террейне с последующим текстурированием и добавлением в мультиплеер</center>
+
Небольшая статейка по изготовлению дороги на террейне с последующим текстурированием и добавлением в мультиплеер.
 
+
 
+
<center>Для пояснения принципов работы я создал плоскость размером 100х100 метров и количеством полигонов 50 по длине и ширине (размер одного полигона как не трудно догадаться 2 квадратных метра)</center>
+
  
 +
Для пояснения принципов работы я создал плоскость размером 100х100 метров и количеством полигонов 50 по длине и ширине (размер одного полигона, как не трудно догадаться, 2 квадратных метра)
  
 
ПРИМЕЧАНИЕ:Чтобы в окне проекции на объекте показалась сетка рёбер нужно нажать F4, а чтоб показать только одну сетку нужно нажать F3
 
ПРИМЕЧАНИЕ:Чтобы в окне проекции на объекте показалась сетка рёбер нужно нажать F4, а чтоб показать только одну сетку нужно нажать F3
 +
[[Изображение:terrain_with_roadmax1.jpg|750px]]
  
 +
Затем переходим на вкладку Modify и конвертируем по нажатию ПКМ Plane в Editable Poly
  
<center>[[Изображение:terrain_with_roadmax1.jpg|750px]]
+
[[Изображение:terrain_with_roadmax2.jpg|300px]]
 
+
Затем переходим на вкладку Modify и конвертируем по нажатию ПКМ Plane в Editable Poly</center>
+
 
+
<center>[[Изображение:terrain_with_roadmax2.jpg|300px]]</center>
+
 
+
 
+
<center>Переходим в окно проекции Top (вид сверху) жмём F3 затем F4 и видим</center>
+
 
+
<center>[[Изображение:terrain_with_roadmax3.jpg|750px]]
+
 
+
После переходим в режим редактирования полигонов (можно просто нажать 4) веделяем</center>
+
 
+
<center>[[Изображение:terrain_with_roadmax4.jpg|550px]]</center>
+
 
+
 
+
<center>ПРИМЕЧАНИЕ:Моей целью не было изготовление качественного террейна я всего лишь хотел показать некоторые принципы моделирования, а как их применить это дело личное :)</center>
+
 
+
 
+
<center>[[Изображение:terrain_with_roadmax5.jpg|200px]]
+
 
+
Переходим окно проекции Perspective и в списке справа щёлкаем на квадратик рядом с кнопкой Bevel</center>
+
 
+
<center>[[Изображение:terrain_with_roadmax6.jpg|750px]]</center>
+
 
+
 
+
<center>Парметр Height регулирует высоту/глубину (у меня -10), а параметр Outline Amond регулирует степень сужения/расширения к низу/верху (попробуйте изменить значения) </center>
+
 
+
 
+
<center>Мой результат</center>
+
 
+
<center>[[Изображение:terrain_with_roadmax7.jpg|750px]]</center>
+
 
+
<center>После выделяем полигоны у краёв и удаляем их</center>
+
 
+
 
+
<center>[[Изображение:terrain_with_roadmax8.jpg|550px]]</center>
+
 
+
 
+
<center>Жмём 1(вертексты) нажимаем Ctrl+A(веделяем все вертексты) нажимаем на кнопку weld чтобы объединить вертексты которые находятся в одной точке но не объединены </center>
+
 
+
<center>[[Изображение:terrain_with_roadmax9.jpg|200px]]</center>
+
 
+
 
+
<center>Потом немного достроим рёбер чтобы позже снять фаску, но сначала удалим лишние вершины</center>
+
 
+
 
+
<center>[[Изображение:terrain_with_roadmax10.jpg|550px]]</center>
+
 
+
 
+
<center>На рисунке выделена вершина которую можно и нужно убрать для это выделяем её и жмём на кнопку Remove — вершина исчезнет но на её месте не будет дыры как если бы мы нажали на клавишу Delite :)</center>
+
 
+
 
+
<center>А вот сейчас в режиме Vertext (вершины - цифра 1) нажимаем на кнопку Сut в списке справа </center>
+
 
+
<center>[[Изображение:terrain_with_roadmax11.jpg|200px]]
+
 
+
И при наведении на вертекст будет изменяться курсор на маленький квадратик, жмём один раз и ведём до следующего снова жмём и получаем ребро если больше не хотим строить нажимаем ПКМ </center>
+
 
+
<center>[[Изображение:terrain_with_roadmax12.jpg|550px]]</center>
+
 
+
 
+
<center>Контролируем результат обводим рамкой выделения то место куда мы пришивали рёбра как видно из рисунка там две вершины вы скажите да здесь тоже можно использовать weld возможно, но вертексты могут находиться не точно в одной точке и weld не поможет тут к нам на помощь придёт Collapse (находится чуть выше cut) лечим таким образом все вершины которые мы сделали(только нужно сначала конвертнуть модель в Editable mesh иначе некоторые вершины не будут спаиваться, после лечения :) конвертните обратно в Editable Poly)</center>
+
 
+
 
+
<center>Но сначала удалите рёбра которые выделены на рисунке они у меня появились при соединении вершин и снова объедините вершины</center>
+
 
+
<center>[[Изображение:terrain_with_roadmax13.jpg|750px]]</center>
+
 
+
 
+
<center>А теперь выделите рёбра как на рисунке(предварительно убедитесь в том что модель у вас конвертирована в Editable Poly)</center>
+
 
+
<center>[[Изображение:terrain_with_roadmax14.jpg|650px]]</center>
+
 
+
 
+
<center>И снова в списке справа щёлкните на квадратике рядом со словом Chamfer</center>
+
 
+
<center>и вы увидите вот это</center>
+
 
+
<center>[[Изображение:terrain_with_roadmax15.jpg|550px]]</center>
+
 
+
 
+
<center>Наконец то сделали :) (получились эдакие обрывы)</center>
+
 
+
 
+
<center>Теперь займёмся дорогой</center>
+
 
+
<center>Перейдём в окно проекции вид сверху(Top) и выделяем полигоны так:</center>
+
 
+
<center>[[Изображение:terrain_with_roadmax16.jpg|650px]]</center>
+
 
+
 
+
<center>Затем в списке справа жмём на кнопку Detach в открывшемся окне вводим имя нового объекта и жмём ОК. В результате у нас есть готовая дорога (её можно было вычертить с помощью инструмента Cut</center>
+
 
+
 
+
<center>Теперь повторим то что сделали с дорогой но уже над обрывами</center>
+
 
+
<center>В итоге у нас есть три плотно подогнанных объекта</center>
+
 
+
<center>[[Изображение:terrain_with_roadmax17.jpg|750px]]</center>
+
 
+
 
+
<center>Теперь нужно нарисовать текстуру и наложить на наш ландшафт :), настроить материалы и экспортировать в СДК сталкера</center>
+
 
+
 
+
<center>И так приступим. Дороге я поставлю текстуру grnd_asphalt_escape, а обрывам grnd_mudwalls1(текстуры есть в игре чтобы их заполучить распакуйте игру) для самого террейна текстуру нарисуем в фотошопе</center>
+
 
+
<center>[[Изображение:terrain_with_roadmax18.jpg|750px]]</center>
+
 
+
 
+
<center>Вот что вышло у меня</center>
+
 
+
 
+
<center>Текстурировать начнём с террейна у меня он назван terrain_test</center>
+
 
+
<center>[[Изображение:terrain_with_roadmax19.jpg|250px]]</center>
+
  
 +
Переходим в окно проекции Top (вид сверху) жмём F3 затем F4 и видим
  
<center>Дорога у меня имеет имя grnd_asphalt_escape, а обрывы grnd_mudwalls1 это я сделал чтобы лучше запомнить и меньше путаться</center>
+
[[Изображение:terrain_with_roadmax3.jpg|750px]]
  
 +
После переходим в режим редактирования полигонов (можно просто нажать 4) выделяем
  
<center>[[Изображение:terrain_with_roadmax20.jpg|750px]]Открываем материал эдитор и делаем как на рисунке</center>
+
[[Изображение:terrain_with_roadmax4.jpg|550px]]
  
 +
ПРИМЕЧАНИЕ: Моей целью не было изготовление качественного террейна. Я всего лишь хотел показать некоторые принципы моделирования, а как их применить это дело личное :)
  
<center>Окно изменится на следующее</center>
+
[[Изображение:terrain_with_roadmax5.jpg|200px]]
  
<center>[[Изображение:terrain_with_roadmax21.jpg|350px]]</center>
+
Переходим окно проекции Perspective и в списке справа щёлкаем на квадратик рядом с кнопкой Bevel
  
 +
[[Изображение:terrain_with_roadmax6.jpg|750px]]
  
<center>Во вкладке STALKER PARAMS ставим</center>
+
Параметр Height регулирует высоту/глубину (у меня -10), а параметр Outline Amond регулирует степень сужения/расширения к низу/верху (попробуйте изменить значения)
  
<center>[[Изображение:terrain_with_roadmax22.jpg|350px]]</center>
+
Мой результат
  
 +
[[Изображение:terrain_with_roadmax7.jpg|750px]]
  
<center>Потом жмём на кнопку возле Diffuse(указана на рисунке) дальше жмём на кнопку bitmap и открываем текстуру, и при выделеном объекте нажимаем 1 и 2 </center>
+
После выделяем полигоны у краёв и удаляем их
  
<center>[[Изображение:terrain_with_roadmax23.jpg|450px]]</center>
+
[[Изображение:terrain_with_roadmax8.jpg|550px]]
  
 +
Жмём 1(вертексы) нажимаем Ctrl+A(выделяем все вертексы) нажимаем на кнопку weld чтобы объединить вертексы которые находятся в одной точке но не объединены
  
<center>И видим что на терейне появилась текстура но ещё нужно назначит модификатор UVW map</center>
+
[[Изображение:terrain_with_roadmax9.jpg|200px]]
  
<center>с настройками как на рисунке</center>
+
Потом немного достроим ребер, чтобы позже снять фаску, но сначала удалим лишние вершины
  
<center>[[Изображение:terrain_with_roadmax24.jpg|750px]]</center>
+
[[Изображение:terrain_with_roadmax10.jpg|550px]]
  
<center>Потом нажать на модификаторе правой кнопкой мыши и выбрать Collapse to</center>
+
На рисунке выделена вершина которую можно и нужно убрать для это выделяем её и жмём на кнопку Remove — вершина исчезнет но на её месте не будет дыры как если бы мы нажали на клавишу Delete :)
  
 +
А вот сейчас в режиме Vertex (вершины - цифра 1) нажимаем на кнопку Сut в списке справа
  
<center>Сейчас выделяем дорогу и проделываем всё тоже самое что и с террейном(Engine shader ставим на default, Compiler Shader на default, а game material на material/grass), но после нажатия кнопки Collapse to назначаем дороге модификатор Unwrap UVW и в списке справа жмём на кнопку Edit и увидим окно как на рисунке в котором выделим полигоны нажмём ПКМ и выберем Break потом повернём их и перетащим друг на друга</center>
+
[[Изображение:terrain_with_roadmax11.jpg|200px]]
  
 +
И при наведении на вертекс будет изменяться курсор на маленький квадратик, жмём один раз и ведём до следующего снова жмём и получаем ребро если больше не хотим строить нажимаем ПКМ
  
<center>[[Изображение:terrain_with_roadmax25.jpg|550px]]</center>
+
[[Изображение:terrain_with_roadmax12.jpg|550px]]
  
 +
Контролируем результат обводим рамкой выделения то место куда мы пришивали рёбра как видно из рисунка там две вершины вы скажите да здесь тоже можно использовать weld возможно, но вертексы могут находиться не точно в одной точке и weld не поможет тут к нам на помощь придёт Collapse (находится чуть выше cut) лечим таким образом все вершины которые мы сделали(только нужно сначала конвертнуть модель в Editable mesh иначе некоторые вершины не будут спаиваться, после лечения :) конвертните обратно в Editable Poly)
  
<center>[[Изображение:terrain_with_roadmax26.jpg|450px]]</center>
+
Но сначала удалите ребра, которые выделены на рисунке. Они у меня появились при соединении вершин и снова объедините вершины
  
<center>Откроем текстуру и увидим</center>
+
[[Изображение:terrain_with_roadmax13.jpg|750px]]
  
<center>[[Изображение:terrain_with_roadmax27.jpg|750px]]</center>
+
А теперь выделите рёбра как на рисунке(предварительно убедитесь в том что модель у вас конвертирована в Editable Poly)
  
 +
[[Изображение:terrain_with_roadmax14.jpg|650px]]
  
<center>Делаем модификатору Collapse to и переходим к обрывам.</center>
+
И снова в списке справа щёлкните на квадратике рядом со словом Chamfer. И вы увидите вот это
  
<center>А если вам вдруг не понравился масштаб или направление текстуры то сделайте так:Выделите полигоны где вам не нравится масштаб, назначьте модификатор UVW map щёлкаем по плюсу слева от него выбираем gizmo и с помощью инструмента вращения, масштабирования, и перемещения добиваемся желаемого результата вот что получилось у меня </center>
+
[[Изображение:terrain_with_roadmax15.jpg|550px]]
  
 +
Наконец то сделали :) (получились эдакие обрывы).
  
<center>[[Изображение:terrain_with_roadmax28.jpg|850px]]</center>
+
Теперь займёмся дорогой.
 +
Перейдём в окно проекции вид сверху(Top) и выделяем полигоны так:
  
<center>Теперь перейдём к обрывам :) (Engine shader ставим на default, Compiler Shader на default, а game material на material/earth)</center>
+
[[Изображение:terrain_with_roadmax16.jpg|650px]]
  
<center>Для начала выделим полигоны как на рисунке</center>
+
Затем в списке справа жмём на кнопку Detach, в открывшемся окне вводим имя нового объекта и жмём ОК. В результате у нас есть готовая дорога (её можно было вычертить с помощью инструмента Cut).
  
<center>[[Изображение:terrain_with_roadmax29.jpg|850px]]</center>
+
Теперь повторим то, что сделали с дорогой, но уже над обрывами. В итоге у нас есть три плотно подогнанных объекта.
  
 +
[[Изображение:terrain_with_roadmax17.jpg|750px]]
  
<center>Как видно они все более менее параллельны :)</center>
+
Теперь нужно нарисовать текстуру и наложить на наш ландшафт :), настроить материалы и экспортировать в SDK сталкера. И так приступим. Дороге я поставлю текстуру grnd_asphalt_escape, а обрывам grnd_mudwalls1(текстуры есть в игре чтобы их заполучить распакуйте игру) для самого террейна текстуру нарисуем в фотошопе
  
<center>Теперь назначим модификатор UVW map потом в его настройках выберем ось Y и нажмём на кнопку fit увидим вот это</center>
+
[[Изображение:terrain_with_roadmax18.jpg|750px]]
  
<center>[[Изображение:terrain_with_roadmax30.jpg|850px]]</center>
+
Вот что вышло у меня
  
<center>Затем выполним настройку gizmo так как говорилось выше и получим вот это(маштабируем)</center>
+
Текстурировать начнём с террейна. У меня он назван terrain_test
  
<center>[[Изображение:terrain_with_roadmax31.jpg|850px]]</center>
+
[[Изображение:terrain_with_roadmax19.jpg|250px]]
  
 +
Дорога у меня имеет имя grnd_asphalt_escape, а обрывы grnd_mudwalls1 это я сделал, чтобы лучше запомнить и меньше путаться.
  
<center>Финальный вид</center>
+
[[Изображение:terrain_with_roadmax20.jpg|750px]]
  
<center>[[Изображение:terrain_with_roadmax32.jpg|850px]]Не плохо, правда? :)</center>
+
Открываем материал эдитор и делаем как на рисунке. Окно изменится на следующее.
  
<center>Теперь выделяем все три объекта нажимаем сталкер экспорт </center>
+
[[Изображение:terrain_with_roadmax21.jpg|350px]]
  
<center>Для настройки кнопки экспорта нажмите 1 в открывшемся окне поставте число на 10 (по умолчанию стоит 9) пролистайте вниз списка и там выберите 3 конечно надписи на ней не будет а появится она только тогда когда вы нажмёте на 4 дальше жмём ОК </center>
+
Во вкладке STALKER PARAMS ставим
  
<center>[[Изображение:terrain_with_roadmax33.jpg|450px]]</center>
+
[[Изображение:terrain_with_roadmax22.jpg|350px]]
  
 +
Потом жмём на кнопку возле Diffuse(указана на рисунке) дальше жмём на кнопку bitmap и открываем текстуру, и при выделенном объекте нажимаем 1 и 2
  
<center>Нажимаем на появившуюся кнопку и видим</center>
+
[[Изображение:terrain_with_roadmax23.jpg|450px]]
  
<center>[[Изображение:terrain_with_roadmax34.jpg|220px]]</center>
+
И видим что на терейне появилась текстура но ещё нужно назначит модификатор UVW map с настройками как на рисунке.
  
 +
[[Изображение:terrain_with_roadmax24.jpg|750px]]
 +
Потом нажать на модификаторе правой кнопкой мыши и выбрать Collapse to. Сейчас выделяем дорогу и проделываем всё тоже самое что и с террейном (Engine shader ставим на default, Compiler Shader на default, а game material на material/grass), но после нажатия кнопки Collapse to назначаем дороге модификатор Unwrap UVW и в списке справа жмём на кнопку Edit и увидим окно как на рисунке в котором выделим полигоны нажмём ПКМ и выберем Break потом повернём их и перетащим друг на друга.
  
<center>Здесь нажимаем на выделенную кнопку и указываем папку скажем такую level_terrain_test которую создадим по адрессу</center>
+
[[Изображение:terrain_with_roadmax25.jpg|550px]][[Изображение:terrain_with_roadmax26.jpg|450px]]
  
<center>D:\Program Files\X-Ray SDK\level_editor\rawdata\objects\level_terrain_test</center>
+
Откроем текстуру и увидим
  
<center>(папка может быть и не здесь, зависит от того куда вы установили СДК)</center>
+
[[Изображение:terrain_with_roadmax27.jpg|750px]]
  
 +
Делаем модификатору Collapse to и переходим к обрывам.
 +
А если вам вдруг не понравился масштаб или направление текстуры то сделайте так: Выделите полигоны где вам не нравится масштаб, назначьте модификатор UVW map щёлкаем по плюсу слева от него выбираем gizmo и с помощью инструмента вращения, масштабирования, и перемещения добиваемся желаемого результата вот что получилось у меня
  
<center>Ах да, не забудьте что если вы делаете новую текстуру то её нужно добавить в папку импорт и импортировать в СДК</center>
+
[[Изображение:terrain_with_roadmax28.jpg|850px]]
  
<center>В СДК нужно нажать на кнопку Images затем на check new textures и на кнопке OK </center>
+
Теперь перейдём к обрывам :) (Engine shader ставим на default, Compiler Shader на default, а game material на material/earth)
  
<center>[[Изображение:terrain_with_roadmax35.jpg|450px]]</center>
+
Для начала выделим полигоны как на рисунке
  
 +
[[Изображение:terrain_with_roadmax29.jpg|850px]]
  
<center>Дальше жмём на кнопку 1 ставим галочку 2 и жмём ОК 3</center>
+
Как видно они все более менее параллельны :) Теперь назначим модификатор UVW map потом в его настройках выберем ось Y и нажмём на кнопку fit увидим вот это
  
<center>[[Изображение:terrain_with_roadmax36.jpg|750px]]</center>
+
[[Изображение:terrain_with_roadmax30.jpg|850px]]
  
<center>Видим наш левел</center>
+
Затем выполним настройку gizmo так как говорилось выше и получим вот это (масштабируем)
  
<center>[[Изображение:terrain_with_roadmax37.jpg|950px]]</center>
+
[[Изображение:terrain_with_roadmax31.jpg|850px]]
  
 +
Финальный вид
  
<center>Но чтоб добавить его в игру(мультиплеер) нужно минимум создать на нём источник света, объект глоу, и два rs point-а и так приступим </center>
+
[[Изображение:terrain_with_roadmax32.jpg|850px]]Не плохо, правда? :)
  
 +
Теперь выделяем все три объекта нажимаем сталкер экспорт . Для настройки кнопки экспорта нажмите 1 в открывшемся окне поставите число на 10 (по умолчанию стоит 9) пролистайте вниз списка и там выберите 3 конечно надписи на ней не будет а появится она только тогда когда вы нажмёте на 4 дальше жмём ОК
  
<center>Выберем Light 1 нажмём 2 (чайник) потом на точку 3 затем на инструмент 4 и ось 5 и нажав на сферу поднимем её вверх мышкой</center>
+
[[Изображение:terrain_with_roadmax33.jpg|450px]]
  
<center>[[Изображение:terrain_with_roadmax38.jpg|750px]]</center>
+
Нажимаем на появившуюся кнопку и видим
  
 +
[[Изображение:terrain_with_roadmax34.jpg|220px]]
  
<center>Затем выберем вкладку Glow нажмём на чайник и щёлкнем на терейне появится экранчик его поднимем в центр сферы и нажмем на кнопке Properties, введём имя 2 выберем качество 3(низкое чтобы быстрее компилировалось) щёлкнем на 4 выберем текстуру 5 и кликнем на 6</center>
+
Здесь нажимаем на выделенную кнопку и указываем папку скажем такую level_terrain_test которую создадим по адресу
 +
D:\Program Files\X-Ray SDK\level_editor\rawdata\objects\level_terrain_test
 +
(папка может быть и не здесь, зависит от того куда вы установили SDK). Ах да, не забудьте что если вы делаете новую текстуру то её нужно добавить в папку импорт и импортировать в SDK. В SDK нужно нажать на кнопку Images, затем на check new textures и на кнопке OK
  
<center>[[Изображение:terrain_with_roadmax39.jpg|750px]]</center>
+
[[Изображение:terrain_with_roadmax35.jpg|450px]]
  
 +
Дальше жмём на кнопку 1, ставим галочку 2 и жмём ОК 3
  
<center>Теперь выберем Spawn element и поставим на карту два rs pointa</center>
+
[[Изображение:terrain_with_roadmax36.jpg|750px]]
  
<center>[[Изображение:terrain_with_roadmax40.jpg|250px]]</center>
+
Видим наш левел
  
 +
[[Изображение:terrain_with_roadmax37.jpg|950px]]
  
<center>Теперь выберем вкладку Compile и выберем build</center>
+
Но чтоб добавить его в игру(мультиплеер) нужно минимум создать на нём источник света, объект глоу, и два rs point-а и так приступим . Выберем Light 1 нажмём 2 (чайник) потом на точку 3 затем на инструмент 4 и ось 5 и нажав на сферу поднимем её вверх мышкой.
  
<center>После нажмём ПУСК->Выполнить->в строке напишем X:\xrLC.bat level_terrain_test</center>
+
[[Изображение:terrain_with_roadmax38.jpg|750px]]
  
<center>Скомпилируем наш уровень </center>
+
Затем выберем вкладку Glow, нажмём на чайник и щёлкнем на терейне. Появится экранчик - его поднимем в центр сферы и нажмем на кнопке Properties, введём имя 2 выберем качество 3(низкое чтобы быстрее компилировалось) щёлкнем на 4 выберем текстуру 5 и кликнем на 6.
  
<center>Потом в папке с игрой создадим папку gamedata, а в ней папку textures в которую вложим папку terrain с нашей текстурой террейна, ещё создадим папку config в которую вложим папку mp с файлом map_list.ltx из распакованой игры в который впишем после строки testers_mp_pool имя нашей локи level_terrain_test</center>
+
[[Изображение:terrain_with_roadmax39.jpg|750px]]
  
<center>Запустим сетевую игру и создадим сервер с нашей локой</center>
+
Теперь выберем Spawn element и поставим на карту два rs pointa
  
 +
[[Изображение:terrain_with_roadmax40.jpg|250px]]
  
<center>В папке с уроком положено два скрина из игры </center>
+
Теперь выберем вкладку Compile и выберем build
  
<center>Если возникнут проблемы при запуске игры то тогда замените файл user.ltx из папки C:\Documents and Settings\All Users\documents\stalker-shoc на тот что лежит в архиве и всё должно работать.</center>
+
После нажмём ПУСК->Выполнить->в строке напишем X:\xrLC.bat level_terrain_test
 +
Скомпилируем наш уровень
  
 +
Потом, в папке с игрой создадим папку gamedata, а в ней папку textures в которую вложим папку terrain с нашей текстурой террейна.  Ещё создадим папку config, в которую вложим папку mp с файлом map_list.ltx из распакованной игры в который впишем после строки testers_mp_pool имя нашей локи level_terrain_test.
 +
Запустим сетевую игру и создадим сервер с нашей локой.
  
<center>Надеюсь эта статья будет вам полезна. </center>
+
В папке с уроком положено два скрина из игры.  
  
 +
Если возникнут проблемы при запуске игры то тогда замените файл user.ltx из папки C:\Documents and Settings\All Users\documents\stalker-shoc на тот, что лежит в архиве и всё должно работать. Надеюсь, эта статья будет вам полезна.
  
<center>'''Автор: Жуков Антон (Anton_dzot)'''</center>
+
'''Автор: Жуков Антон (Anton_dzot)'''
 +
'''Редактировал – Pihan13'''
  
 
'''Ссылки'''
 
'''Ссылки'''

Текущая версия на 11:01, 27 мая 2010

Небольшая статейка по изготовлению дороги на террейне с последующим текстурированием и добавлением в мультиплеер.

Для пояснения принципов работы я создал плоскость размером 100х100 метров и количеством полигонов 50 по длине и ширине (размер одного полигона, как не трудно догадаться, 2 квадратных метра)

ПРИМЕЧАНИЕ:Чтобы в окне проекции на объекте показалась сетка рёбер нужно нажать F4, а чтоб показать только одну сетку нужно нажать F3 Terrain with roadmax1.jpg

Затем переходим на вкладку Modify и конвертируем по нажатию ПКМ Plane в Editable Poly

Terrain with roadmax2.jpg

Переходим в окно проекции Top (вид сверху) жмём F3 затем F4 и видим

Terrain with roadmax3.jpg

После переходим в режим редактирования полигонов (можно просто нажать 4) выделяем

Terrain with roadmax4.jpg

ПРИМЕЧАНИЕ: Моей целью не было изготовление качественного террейна. Я всего лишь хотел показать некоторые принципы моделирования, а как их применить это дело личное :)

Terrain with roadmax5.jpg

Переходим окно проекции Perspective и в списке справа щёлкаем на квадратик рядом с кнопкой Bevel

Terrain with roadmax6.jpg

Параметр Height регулирует высоту/глубину (у меня -10), а параметр Outline Amond регулирует степень сужения/расширения к низу/верху (попробуйте изменить значения)

Мой результат

Terrain with roadmax7.jpg

После выделяем полигоны у краёв и удаляем их

Terrain with roadmax8.jpg

Жмём 1(вертексы) нажимаем Ctrl+A(выделяем все вертексы) нажимаем на кнопку weld чтобы объединить вертексы которые находятся в одной точке но не объединены

Terrain with roadmax9.jpg

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

Terrain with roadmax10.jpg

На рисунке выделена вершина которую можно и нужно убрать для это выделяем её и жмём на кнопку Remove — вершина исчезнет но на её месте не будет дыры как если бы мы нажали на клавишу Delete :)

А вот сейчас в режиме Vertex (вершины - цифра 1) нажимаем на кнопку Сut в списке справа

Terrain with roadmax11.jpg

И при наведении на вертекс будет изменяться курсор на маленький квадратик, жмём один раз и ведём до следующего снова жмём и получаем ребро если больше не хотим строить нажимаем ПКМ

Terrain with roadmax12.jpg

Контролируем результат обводим рамкой выделения то место куда мы пришивали рёбра как видно из рисунка там две вершины вы скажите да здесь тоже можно использовать weld возможно, но вертексы могут находиться не точно в одной точке и weld не поможет тут к нам на помощь придёт Collapse (находится чуть выше cut) лечим таким образом все вершины которые мы сделали(только нужно сначала конвертнуть модель в Editable mesh иначе некоторые вершины не будут спаиваться, после лечения :) конвертните обратно в Editable Poly)

Но сначала удалите ребра, которые выделены на рисунке. Они у меня появились при соединении вершин и снова объедините вершины

Terrain with roadmax13.jpg

А теперь выделите рёбра как на рисунке(предварительно убедитесь в том что модель у вас конвертирована в Editable Poly)

Terrain with roadmax14.jpg

И снова в списке справа щёлкните на квадратике рядом со словом Chamfer. И вы увидите вот это

Terrain with roadmax15.jpg

Наконец то сделали :) (получились эдакие обрывы).

Теперь займёмся дорогой. Перейдём в окно проекции вид сверху(Top) и выделяем полигоны так:

Terrain with roadmax16.jpg

Затем в списке справа жмём на кнопку Detach, в открывшемся окне вводим имя нового объекта и жмём ОК. В результате у нас есть готовая дорога (её можно было вычертить с помощью инструмента Cut).

Теперь повторим то, что сделали с дорогой, но уже над обрывами. В итоге у нас есть три плотно подогнанных объекта.

Terrain with roadmax17.jpg

Теперь нужно нарисовать текстуру и наложить на наш ландшафт :), настроить материалы и экспортировать в SDK сталкера. И так приступим. Дороге я поставлю текстуру grnd_asphalt_escape, а обрывам grnd_mudwalls1(текстуры есть в игре чтобы их заполучить распакуйте игру) для самого террейна текстуру нарисуем в фотошопе

Terrain with roadmax18.jpg

Вот что вышло у меня

Текстурировать начнём с террейна. У меня он назван terrain_test

Terrain with roadmax19.jpg

Дорога у меня имеет имя grnd_asphalt_escape, а обрывы grnd_mudwalls1 это я сделал, чтобы лучше запомнить и меньше путаться.

Terrain with roadmax20.jpg

Открываем материал эдитор и делаем как на рисунке. Окно изменится на следующее.

Terrain with roadmax21.jpg

Во вкладке STALKER PARAMS ставим

Terrain with roadmax22.jpg

Потом жмём на кнопку возле Diffuse(указана на рисунке) дальше жмём на кнопку bitmap и открываем текстуру, и при выделенном объекте нажимаем 1 и 2

Terrain with roadmax23.jpg

И видим что на терейне появилась текстура но ещё нужно назначит модификатор UVW map с настройками как на рисунке.

Terrain with roadmax24.jpg Потом нажать на модификаторе правой кнопкой мыши и выбрать Collapse to. Сейчас выделяем дорогу и проделываем всё тоже самое что и с террейном (Engine shader ставим на default, Compiler Shader на default, а game material на material/grass), но после нажатия кнопки Collapse to назначаем дороге модификатор Unwrap UVW и в списке справа жмём на кнопку Edit и увидим окно как на рисунке в котором выделим полигоны нажмём ПКМ и выберем Break потом повернём их и перетащим друг на друга.

Terrain with roadmax25.jpgTerrain with roadmax26.jpg

Откроем текстуру и увидим

Terrain with roadmax27.jpg

Делаем модификатору Collapse to и переходим к обрывам. А если вам вдруг не понравился масштаб или направление текстуры то сделайте так: Выделите полигоны где вам не нравится масштаб, назначьте модификатор UVW map щёлкаем по плюсу слева от него выбираем gizmo и с помощью инструмента вращения, масштабирования, и перемещения добиваемся желаемого результата вот что получилось у меня

Terrain with roadmax28.jpg

Теперь перейдём к обрывам :) (Engine shader ставим на default, Compiler Shader на default, а game material на material/earth)

Для начала выделим полигоны как на рисунке

Terrain with roadmax29.jpg

Как видно они все более менее параллельны :) Теперь назначим модификатор UVW map потом в его настройках выберем ось Y и нажмём на кнопку fit увидим вот это

Terrain with roadmax30.jpg

Затем выполним настройку gizmo так как говорилось выше и получим вот это (масштабируем)

Terrain with roadmax31.jpg

Финальный вид

Terrain with roadmax32.jpgНе плохо, правда? :)

Теперь выделяем все три объекта нажимаем сталкер экспорт . Для настройки кнопки экспорта нажмите 1 в открывшемся окне поставите число на 10 (по умолчанию стоит 9) пролистайте вниз списка и там выберите 3 конечно надписи на ней не будет а появится она только тогда когда вы нажмёте на 4 дальше жмём ОК

Terrain with roadmax33.jpg

Нажимаем на появившуюся кнопку и видим

Terrain with roadmax34.jpg

Здесь нажимаем на выделенную кнопку и указываем папку скажем такую level_terrain_test которую создадим по адресу D:\Program Files\X-Ray SDK\level_editor\rawdata\objects\level_terrain_test (папка может быть и не здесь, зависит от того куда вы установили SDK). Ах да, не забудьте что если вы делаете новую текстуру то её нужно добавить в папку импорт и импортировать в SDK. В SDK нужно нажать на кнопку Images, затем на check new textures и на кнопке OK

Terrain with roadmax35.jpg

Дальше жмём на кнопку 1, ставим галочку 2 и жмём ОК 3

Terrain with roadmax36.jpg

Видим наш левел

Terrain with roadmax37.jpg

Но чтоб добавить его в игру(мультиплеер) нужно минимум создать на нём источник света, объект глоу, и два rs point-а и так приступим . Выберем Light 1 нажмём 2 (чайник) потом на точку 3 затем на инструмент 4 и ось 5 и нажав на сферу поднимем её вверх мышкой.

Terrain with roadmax38.jpg

Затем выберем вкладку Glow, нажмём на чайник и щёлкнем на терейне. Появится экранчик - его поднимем в центр сферы и нажмем на кнопке Properties, введём имя 2 выберем качество 3(низкое чтобы быстрее компилировалось) щёлкнем на 4 выберем текстуру 5 и кликнем на 6.

Terrain with roadmax39.jpg

Теперь выберем Spawn element и поставим на карту два rs pointa

Terrain with roadmax40.jpg

Теперь выберем вкладку Compile и выберем build

После нажмём ПУСК->Выполнить->в строке напишем X:\xrLC.bat level_terrain_test Скомпилируем наш уровень

Потом, в папке с игрой создадим папку gamedata, а в ней папку textures в которую вложим папку terrain с нашей текстурой террейна. Ещё создадим папку config, в которую вложим папку mp с файлом map_list.ltx из распакованной игры в который впишем после строки testers_mp_pool имя нашей локи level_terrain_test. Запустим сетевую игру и создадим сервер с нашей локой.

В папке с уроком положено два скрина из игры.

Если возникнут проблемы при запуске игры то тогда замените файл user.ltx из папки C:\Documents and Settings\All Users\documents\stalker-shoc на тот, что лежит в архиве и всё должно работать. Надеюсь, эта статья будет вам полезна.

Автор: Жуков Антон (Anton_dzot) Редактировал – Pihan13

Ссылки

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