Уроки 3D Max 3D MAX Разное

Поиск по тегам : 3D Max, 3D MAX Разное, Создание карт смещения в V-ray, 3D уроки, 3D Tutorials, 3d uroki


Render To Texture
07.02.2008 г.

Рейтинг 1.6/5 (9 голосов)

Вступление.

Очень многие стали задавать вопрос, как делать реальные статические тени в играх. Ответ прост - LightMap (Карта света).
Я решил написать урок по созданию Light Map(ЛМ), потому что на мой взгляд это легко и красиво. :)

Для этого нам понадобится 3D Studio MAX 5(или больше) и игровой движок.

***

Часть 1
-----------------------------

Вот наша сцена.

Render To Texture

Делаем её супермегареалистичной :)))
Я использовал для этого Mental Ray рендер.
Наворотил её немного. Добавил текстур, источников света разноцветных и т.д...
Также добавил камеру.
Отрендерил то, что получилось.


Render To Texture


А вот, как выглядит в Максе.

Render To Texture


В этом уроке мы создадим 2 ЛМ. Одна для стен и пола(потолка), другая для объектов. Итак приступим.

***
Часть 2
-----------------------------

Атачим все объекты сцены в один. (Editable Poly->Attach) Применим к этим объектам модификатор Unvrap UVW и присмотримся к его панели.

Render To Texture


Там мы найдем пункт Map Channel(Канал текстуры). По умолчанию он первый. Если нажать кнопку Edit, то мы увидим координаты нашей наложеной текстуры. Она у нас наложена по первому каналу. Закроем окно Edit. Пока оно нам не нужно.
Нажимаем 0(ноль). Или в меню вверху вибираем Rendering->Render to texture. Появляется вот эта панель.

Render To Texture

Жмём кнопку Add и в списке выбираем Lightning Map. Теперь называем нашу текстуру и указываем путь.
(1) Устанавливаем нужный размер текстуры (обязательно кратный степени двойки). Лучше выбрать из уже предоставленых. Он появится в поле Size.
(2) И ставим галочку Render to files only.
(3) Это делается для того, чтобы текстура не накладывалась сразу на объект.


Render To Texture


Вернемся к панели Unwrap UVW. Сменим Map Channel на 2. Выскочит табличка - жмём да. Потом жмём Edit. Теперь (ВАЖНО!!!) проследите, чтобы ни один вертекс не был выделен. Для этого нужно отъехать подальше и кликнуть на свободном месте. В верхнем меню выбираем Mapping, Flattern Mapping (если нету маленьких полигонов, можно параметр Spacing уменьшить до 0,01) и жмём ОК.

Render To Texture


Потом в окне Render to texture. Выбираем Map Channel 2. Объект должен быть всегда выделен(!!!).

Render To Texture

Всё готово, можно рендерить в текстуру! :)


Render To Texture

И вот, что у нас вышло.


Render To Texture

Теперь повторяем то же, но для стен и пола. Вот, как выглядит этот ЛМ.


Render To Texture

***
Часть 3
-------------------------------

Теперь нужно как-то отобразить ЛМ в игре.
Для этого нам понадобится какойнибудь экспортер в ваш движок. Я использовал экспортер для Blitz3D. У вас - свой.
Примечание: если у вас нет экспортера, то переходим к Послесловию.
Итак. Сохраняем сцену под другим именем. Выделяем объект. Выбираем из списка материалов движковый материал.


Render To Texture


И на первый слой наносим текстуру, которая должна быть на объекте.

Render To Texture

Тип нанесения - Multiply.
Я включил mipmap,color... это особенности движка. Но самое главное - Map Channel. Он должден быть установлен в "1".


Render To Texture


Теперь на второй слой наносим наш сохраненный ЛМ. Но! Map Channel уже нужно выставить "2".

Render To Texture

Нужно убедится, что у объекта есть второй Map Channel. Для этого применим к нему Unwrap UVW(если он уже не применен) и переключившись на Map Channel 2, нажмем кнопку Edit. Если текстурные координаты выглядят так же, как мы их создавали, то всё в порядке. Если появляются сомнения насчет этого, то снова идем в меню Mapping->Flattern Mapping и жмем ОК, как и в прошлый раз(!) Нужно повторить всё, что мы делали в прошлый раз!
Если всё в порядке, то повторяем всё теперь с остальными материалами и смотрим, что вышло. :)
Вот, что вышло у меня.
Это движковый рендер.


Render To Texture


А вот как выглядит в максе сцена, если показывать второй канал на всех материалах.

Render To Texture


***
Послесловие.

Если у вас нет экспортера, то наложение текстур придется делать вручную в движке. Или писать свой экспортер, который поддерживает несколько слоев.
Если есть какие-нибудь вопросы, присылайте мне на мыло.
Всем желаю удачи!
Buck.

 

Автор: Buck

Источник: www.3dcenter.ru 

Related items

Комментарии (0)Add Comment

Написать комментарий
quote
bold
italicize
underline
strike
url
image
quote
quote
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley

security code
Напишите отображаемые буквы


busy
 
« Пред.   След. »