forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D Моделирование (http://forum.boolean.name/forumdisplay.php?f=18)
-   -   Тутор. Создание ландшафта в 3ds max. Моделирование и текстуринг. (http://forum.boolean.name/showthread.php?t=12887)

ARA 10.07.2010 22:28

Тутор. Создание ландшафта в 3ds max. Моделирование и текстуринг.
 
Цитата:

Сообщение от Админ
Картинки все просраны.
Но добрые люди в лице Arton'а вовремя схоронили их у себя и выложили:
Вложение 22403


Данный тутор писал давно, потом отложил его. Мне кажется, что я не очень понятно его изложил. Но всёравно выкладываю, может быть отдельные методы заюзаные мной будут полезны. Вот что у меня получилось в финале:



В данной статье рассмотрим один из методов создания и маппинга игровой локации.
Задача: создать игровую локацию в виде тропического рая. Пляж, пальмы, бунгало, водопад и прочая экзотика.
Моделирование
Начнём с того, что очертим предполагаемую береговую линию сплайном:


Преобразовываем сплайн в геометрию, поставив нужные галочки в его настройках:


Из этого же сплайна будем создавать всю локацию. Конвертируем сплайн в Editable Poly:


Удаляем полигоны снизу и по бокам. В результате получается такая дорожка. Из этой заготовки будем выдавливать берег и скалы:


Выделяем внутренние рёбра дорожки. Для этого необходимо выделить одно из рёбер и применить инструмент Loop:


Выдавливаем (Extrude) эти рёбра по оси Z вниз:


Для удобства в дальнейшем рёбра можно выдавливать горячими клавишами: зажимаем shift и тянем рёбра в нужную сторону инструментом Select and move.

Не убирая выделение рёбер применяем модификатор Push. Он позволит нам сделать скос. Берег спускается под воду:


Снова конвертируем меш в Editable Poly. "Заделываем" дно у речки. Необходимо выбрать рёбра противоположных берегов и связать их между собой инструментом Bridge:


Продолжаем наращивать берега пользуясь выше описанным методом: Выделяем рёбра (Loop) > Выдавливаем рёбра вниз или вверх (Extrude) > скашиваем (Push):


Для удобства можно добавить в сцену прозрачную плоскость, которая будет показывать уровень воды в море-океане. Т.к. главный герой игры будет хорошо себя вести и не будет заплывать за буйки, у дна можно убавить детализацию, сшив вершины. Чем дальше от берега, тем меньше детализация. Сшивать будем так: выделяем несколько вершин, применяем инструмент Weld и в появившемся окне указываем какое-нибудь большое число:


Берег и дно готовы. Теперь вырастим горы. К ним нужен творческий подход. Обглодаем границу гор, выборочно удалив грани:


Теперь необходимо выделить это художество и выдавить вертикально вверх. Несколько раз (команда Extrude)


Получилась какая-то стенка. Но это временно. Находим свиток Paint Deformation и мнём все углы Relax кисточкой. Углы становятся не углами:


Обработав нижнюю часть скал релаксом можно продолжать их наращивать всё выше и выше. С каждым новым уровнем скал можно понижать детализацию:


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


Следующая часть тутора - маппинг, тайлинг.

ARA 10.07.2010 22:43

Маппинг.
 
Маппинг
Будем текстурить локацию 5 текстурами(тайлами). Вот схема раскладки тайлов:


Будем использовать текстуры переходов от одной поверхности к другой для избавления от швов. Швы всё равно будут заметны, но не так явно.
Начнём со скал. Сначала мы из них сделаем большой кусок развёртки, а потом расположим его на текстуре и отмасштабируем.

Приступаем. Выделяем полигоны нужного куска скалы, применяем к куску текстуру скалы. Не убирая выделения применяем модификатор Unwrap UVW:


Текстура наложена, но не правильно спроецирована. Нажав на кнопку Edit можно увидеть наш кусок скалы в редакторе развёрток. Выделим его:


Теперь развернём его, нажав кнопки в следующем порядке:


Метод авторазвёртки - Pelt очень крут для органики. Кнопку Relax(Heavy) нужно нажать несколько раз. Теперь текстура ровно ложится на наш кусок. Осталось только увеличить его в окне редактора развёрток, чтобы текстура затайлилась получше и отображалась чётче:


Таким же способом затекстурим вторую часть скалы:


Теперь затекстурим подножье гор. Используем текстуру перехода от гор к траве. Выделяем полигоны у подножья, применяем к ней нужную текстуру и применяем модификатор UVW Mapping:


Текстура наложилась вверх ногами. Нам нужно её перевернуть. Применяем модиффикатор Unwrap UVW, выделяем полигоны и поворачиваем их на 180 градусов. У меня как следует избавиться от шва так и не получилось. Надеюсь, у вас выйдет лучше.


Весь остальной маппинг производим аналогичным образом.
Cкриншот Blitz3D + FastExt:






P.S. Метод моделирования скал был подсмотрен в туториале от левел дизайнера игры Корсары 3. Только там моделирование в Maya было и другими инструментами.

ARA 10.07.2010 22:48

Ответ: Тутор. Создание ландшафта в 3ds max. Моделирование и текстуринг.
 
Обсуждаем вот тута http://forum.boolean.name/showthread...142#post154142

ARA 01.05.2015 01:03

Ответ: Тутор. Создание ландшафта в 3ds max. Моделирование и текстуринг.
 
Дополнение к статье. Ещё один способ сделать относительно плавный переход между поверхностями, подсмотренный в ГТА5.
В максе это выглядит как-то так:


А в Юнити5 так:


Я использовал Cutout шейдер для переходов. С альфой смотрится лучше, но альфашейдер в U5 не умеет принимать на себя тени, да ещё имеет баг с сортировкой. В общим, нужно кодить и что-то придумывать для этого :)
Преимущество метода: поверхности можно анврапить как душе угодно.

Arton 01.05.2015 21:08

Ответ: Тутор. Создание ландшафта в 3ds max. Моделирование и текстуринг.
 
Э-э, я правильно понял что на первом скриншоте вон те полоски, это отдельная поверхность?

ARA 01.05.2015 21:52

Ответ: Тутор. Создание ландшафта в 3ds max. Моделирование и текстуринг.
 
Цитата:

Сообщение от Arton (Сообщение 295485)
Э-э, я правильно понял что на первом скриншоте вон те полоски, это отдельная поверхность?

Да. Приподнятая.

Igor 02.05.2015 04:17

Ответ: Тутор. Создание ландшафта в 3ds max. Моделирование и текстуринг.
 
А никаких сюрпризов с z-fighting не будет?

ABTOMAT 02.05.2015 05:18

Ответ: Тутор. Создание ландшафта в 3ds max. Моделирование и текстуринг.
 
Цитата:

Сообщение от Igor (Сообщение 295498)
А никаких сюрпризов с z-fighting не будет?

Зависит от того, насколько приподнимешь.

FREE MAN 02.05.2015 13:51

Ответ: Тутор. Создание ландшафта в 3ds max. Моделирование и текстуринг.
 
Интересно как на мобилках будет. ARA ты не проводил тесты на них?

tirarex 02.05.2015 15:58

Ответ: Тутор. Создание ландшафта в 3ds max. Моделирование и текстуринг.
 
Цитата:

Сообщение от Phyton (Сообщение 295501)
Интересно как на мобилках будет. ARA ты не проводил тесты на них?

На скринах видно добротную тесселяцию , о каких мобилках ты говоришь ?
Но простая текстура с альфой должна работать на ура.

Samodelkin 02.05.2015 16:18

Ответ: Тутор. Создание ландшафта в 3ds max. Моделирование и текстуринг.
 
Цитата:

Сообщение от tirarex (Сообщение 295503)
На скринах видно добротную тесселяцию

Мне кажется это параллакс. Края у полигонов вроде ровные. Но да мобилки всё равно не потянут.

ABTOMAT 02.05.2015 18:50

Ответ: Тутор. Создание ландшафта в 3ds max. Моделирование и текстуринг.
 
Олсо как решается баг сортировки при альфабленде?

ARA 02.05.2015 20:38

Ответ: Тутор. Создание ландшафта в 3ds max. Моделирование и текстуринг.
 
Цитата:

На скринах видно добротную тесселяцию
Да, паралакс там. DX9
Цитата:

Олсо как решается баг сортировки при альфабленде?
Баг с сортировкой решается программистами. Наверное :-D А при Cutout (на скрине он) бага сортировки есесно нет.

Fatalix3d 07.05.2015 18:04

Ответ: Тутор. Создание ландшафта в 3ds max. Моделирование и текстуринг.
 
Добротно, а текстуры сам делал?

Mr_F_ 07.05.2015 18:36

Ответ: Тутор. Создание ландшафта в 3ds max. Моделирование и текстуринг.
 
Цитата:

Олсо как решается баг сортировки при альфабленде?
между альфа-поверхностями тут его не будет, просто рисуешь с ztest и без zwrite. как решить z-fighting это уже поважнее проблема и тут кроме как обычных трюков типа динамического z-биаса хз что предложить.


Часовой пояс GMT +4, время: 04:29.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot