diablo_ 392.53589.2 19 января 2006 в 00:00
Вступление
Прежде всего, хочется отметить, что предлагаемый способ создания воды ни в коем случае не претендует на универсальность. При его использовании есть достаточно много ограничений, определяемых, в основном, используемыми материалами. В конце изложения мы остановимся на некоторых из них. Также хочется отметить, что некоторые нюансы создания материалов в данной сцене были, при написании урока, опущены в связи большим объемом получившегося материала.
1. ОкружениеТак как в данном уроке мы будем рассматривать только создание воды, то будем считать, что все остальное (небо, облака, камни и пр.) мы уже сделали. Создание некоторого окружения (хотя бы частично) именно до начала работы над водной поверхностью существенно облегчит задачу, так как при работе над материалом воды мы должны видеть отражение в ней чего-либо, причем (желательно) максимально реалистичного. При желании можно даже использовать фотографию, помещенную в качестве фона (горизонт фона и нашей сцены должны, конечно, совпадать), с последующей заменой ее на что-то, сделанное собственными руками.
2. Вода у берегаЧестно говоря, это оказалось самым сложным в работе. Сначала определимся с материалом отражения. Мы хотим сделать воду, набегающую на песок, на ней много маленьких волн, геометрическое задание которых (с помощью сетки) приведет к очень большому количеству полигонов в сцене. Последующее использование Raytrace в качестве отражения повергнет в глубочайшую задумчивость (переходящую в летаргический сон) самый современный процессор, поэтому от такого способа мы вынуждены отказаться, хотя он и является наиболее универсальным. Мы же изберем другой путь - представим воду в сцене как QuadPatch, а в качестве материала отражения выберем Flat Mirror. Почему именно этот материал? Благодаря его двум особенностям: возможности искажать отражение в зависимости от Bump и с помощью Blur. Но, в тоже время, это нас очень ограничивает - мы не сможем изменить геометрию воды, она останется плоской, к тому же искажения отражений при использовании Bump не совсем точны. Что ж, попробуем справиться с этим, создав для начала правильные текстуры прозрачности и bump.
ТекстурыДля создания текстур нам не понадобиться каких-либо
художественных способностей, а только владение основами
Photoshop и немного терпения. Все, что будет нарисовано,
получено опытным путем в результате проб и ошибок, поэтому,
наверняка, можно создать и более "правильные" с точки зрения
реалистичности текстуры.
.
Откроем Photoshop и создадим
новое изображение где-нибудь 2000х1300. Закрасим его белым и
на отдельном слое нарисуем линию воды у берега. Закрасим
часть, соответствующую берегу, черным. Добавим несколько серых
пятен у берега для создания "отмелей". Это будет текстурой
прозрачности.
В этом же проекте создадим bump карту. Для этого на новом слое проведем мягкой кистью черную линию, повторяющую береговую, но выше, там, где у нас уже будет вода. Это будем граница песка и воды. Сделаем белый Noise на этой линии, который будет задавать проступающий песок или неровности воды на самой границе .
Теперь нарисуем волны. Каждая волна представляет из себя чуть искривленную линию (у нас - серую), имеющую несколько неравномерную толщину и прозрачность и плавно исчезающую к краям. Как ни странно, но добиться нужной линии (волны) достаточно сложно. Автор нарисовал огромное количество разнообразного вида червяков, прежде чем добился, наконец, приемлемого результата. Создав несколько различных волн, сдублируем их, получив:
Но волны идут не только параллельно берегу. Поэтому скопируем слой волн, повернем его на 90 градусов, увеличим примерно в 2.5 раза и сделаем его более прозрачным. Теперь опять сделаем тоже самое, но увеличим уже гораздо сильнее и повернем под углом градусов 30 к линии берега. При этом получим следующее:
Назовем это Bump_map, и, в очередной раз, убедившись, что Айвазовского из нас не получится, закрываем Photoshop и переходим в МAX.
Материал воды
И так, вода у берега будет у нас сделана из QuadPatch. Берег тоже будет QuadPatch, но совсем чуть-чуть ниже и абсолютно черный. И то, и другое наклоняем чуть-чуть в сторону моря.
Теперь начинается самое сложное. Создаем материал воды.
Начнем с прозрачности. Понятно, что мы ее
уже нарисовали, но не все так просто. Во-первых, прозрачность
воды зависит от угла, под которым мы на нее смотрим. Чем ближе
к нам вода (начиная с некоторого угла или расстояния), тем она
прозрачней. Во-вторых (здесь я немного утрирую), чем дальше от
нас линия берега, тем она четче, а чем ближе - тем более
размыта. Осознав весь трагизм создавшейся ситуации с
прозрачностью (а ведь это далеко не самое сложное в нашем
материале воды), приступим. Создадим карту прозрачности
Bitmap. В качестве изображения для нее возьмем уже
нарисованную нами прозрачность.
В зависимости от пропорций,
которые имеет QuadPatch воды (полоска воды у берега длинная),
сделаем соответствующий tiling (у меня он равен 6) по
U-координате.
Зададим значение Blur = 10 (размытие линии
берега вдали).
Теперь создадим Mix, взяв в качестве одной карты только что получившуюся, в качестве второй - такую же, но с Blur = 70 (размытие линии берега вблизи), а в качестве Mix Amount - карту Falloff.
Этим мы задали изменение размытия линии берега от
расстояния.
Теперь полученный Mix мы берем в качестве map
для карты Mask
В качестве маски берем опять карту Falloff,
но с немного другими параметрами.
Таким образом, чем вода к нам ближе (начиная с некоторого расстояния), тем она прозрачней.
Теперь - Bump. Здесь все достаточно просто. В качестве Bump берем нарисованные нами в Photoshop многочисленные кривые полоски по маске Noise. Tiling соответственно тоже = 6. Маска по Noise делает наши волны немного "неправильными". Bump Amount = 700.
Теперь создаем карту отражений. Как уже говорилось выше, в основе ее будет Flat Mirror.
Но чем выше волна (или близость кромки берега), тем меньше
(слабее) отражение. Поэтому опять делаем Mix. В качестве map1
берем Noise (как бы рябь в местах большой волны и у берега), в
качестве map2 - наш Flat Mirror, в качестве Mix Amount -
нарисованный нами Bump. Так как сила отражения воды
противоположна ее прозрачности, то берем полученный нами
материал по маске ранее сделанной нами прозрачности.
В
принципе, то же самое надо сделать и с Specular Level - там,
где вода прозрачней, блик волны на ней слабее, но это не имеет
большого значения, потому что солнца как такового у нас нет.
Если кто-либо, кроме меня, не заснув на полпути, все же выполнил все описанное выше (а в этом я очень сомневаюсь J ), то он получил бы примерно следующее.
Поставим SuperSampling получше, нажмем Render и, в
зависимости от мощности нашего компьютера, пойдем пить кофе,
смотреть телевизор, или приляжем на часок
поспать.
Вернувшись к компьютеру, получим:
3. Волны
Здесь все гораздо проще. Волны не могут быть плоскими, а,
следовательно, Flat Mirror мы применить не можем. Значит
Raytrace. Но геометрия волн может быть не очень сложной, к
тому же они все-таки далеко. Для создания одной волны возьмем
Box с достаточным для последующего Edit Mesh количеством
точек. С помощью Edit Mesh зададим основные выпуклости и
впадины волны, а потом при помощи Displace сделаем небольшие
неровности. В качестве карты для Displace возьмем опять Mix из
двух noise_ов, различающихся размерами зерна. Если длины волны
не хватает, и мы видим ее край, то сдублируем ее и положим
"сбоку" еще одну такую же.
Материал волны гораздо
прозаичнее, чем у воды. В качестве отражения - Raytrace(с
глубиной трассировки = 1), Bump - dent
Считаем то, что у нас получается.
Таким же образом сделаем несколько "рядов" волн, при этом каждый последующий ряд, делая больше предыдущего. Будем делать это до тех пор, пока мы не дойдем до самого "горизонта".
В качестве заключительного штриха добавим две полоски
чистой воды вдали у берега. Сделаем это при помощи тех же
QuadPatch. Материалом для них будет сильно упрощенный материал
воды без bump и прозрачности.
Ну и, наконец, для тех, кто
дочитал до конца - финальный просчет (уже с облаками).
4. Недостатки метода
1. Невозможность задания "неплоской" прибрежной воды. Все волны, неровности ее задаются при помощи Bump.
2. Не совсем
корректное отражение Flat Mirror. Например, в данной сцене
нельзя поставить камень близко к точке камеры - отражение его
в воде будет неправильным, так как угол между направлением
камеры и поверхностью воды будет достаточно большой.
3. Сложность анимации полученной воды.
Материал предоставлен: Андрей Иванов aka KleSk
Советуем почитать

Плетёная мебель
12
9
56 080
Автор: diablo_
26 мая 2010 в 00:00

Стул - дизайн интерьера
5
14
31 291
Автор: diablo_
17 ноября 2013 в 17:31

Моделирование ручки для кружки
0
2
18 412
Автор: diablo_
19 января 2006 в 00:00

Создание насемкомого
5
1
26 776
Автор: diablo_
1 апреля 2006 в 00:00

Создаём и оживляем Qtek 8310
27
3
87 575
Автор: diablo_
8 февраля 2009 в 00:00
3D моделиприслатьещё
Паровоз 1-3-0 Н сер...
Железнодорожная
Материалы: Нет
Текстуры: Нет
250 р.Стол с котами...
Столы
Материалы: Да
Текстуры: Да
30 р.Кресло
Кресла
Материалы: Нет
Текстуры: Да
бесплатноIllusion Half
Бра
Материалы: Да
Текстуры: Да
10 р.Bizzotto Door
Двери
Материалы: Да
Текстуры: Да
19 р.Радиатор
Другое
Материалы: Нет
Текстуры: Нет
бесплатноRoy Bosh / Элизабет...
Диваны
Материалы: Да
Текстуры: Да
200 р.Кресло фабрики Turr...
Кресла
Материалы: Да
Текстуры: Да
20 р.Flaubo torcher (Тор...
Торшеры
Материалы: Да
Текстуры: Нет
69 р.Подвеска лонгборда...
Спортинвентарь
Материалы: Да
Текстуры: Нет
600 р.iPhone 4
Телефоны
Материалы: Да
Текстуры: Да
100 р.Xолодильник витрина...
Другое
Материалы: Да
Текстуры: Нет
300 р.Колесо для машины...
Автомобили
Материалы: Да
Текстуры: Да
бесплатноПрикроватный столик...
Столы
Материалы: Да
Текстуры: Нет
30 р.вазы Design: Kate H...
Вазы
Материалы: Да
Текстуры: Да
60 р.Book Bag
Сумки и чемоданы
Материалы: Да
Текстуры: Да
300 р.Информационная стой...
Другое
Материалы: Да
Текстуры: Нет
50 р.Нож Ontario-RTAK...
Оружие и броня
Материалы: Да
Текстуры: Да
бесплатноArte Lamp
Настольные светильники
Материалы: Да
Текстуры: Да
100 р.Стул
Стулья
Материалы: Нет
Текстуры: Нет
10 р.
Форумещё
- 1. Есть кто живой?
72
- 2. Прокачка навыков 2Д
293
- 3. Двигатель Харлей-Девидсон S&S Panhead
268
- 4. Mihanik_W.I.P
90
- 5. Заз 1102 "Таврия"
29
- 6. Экологическая катастрофа в Ташкенте
1
- 7. Воспоминания 3D моделинга
23
- 8. Нужна помощь
6
- 9. Kramar Workshop
38
- 10. Пара вопросов по модели и топологии.
11
- 11. Прибалбус
90
- 12. Полуторка
90
- 13. груЗИЛы
127
- 14. ЯЗь и МАЗь
49
- 15. Газики-Уазики
72
- 16. Рогатый
17
- 17. SH Projects
205
- 18. ГАЗ М 72
201
- 19. 3Д мир. Проект воскрешение.
139
- 20. X-Лада
12
Блогиещё
- 1. Всех с праздником 3DECEMBER!!!
10
- 2. Майор Гром
2
- 3. C Праздником 2-3December!!!
2
- 4. Книжная тема
19
- 5. Большой автоконкурс 2016 — награждение
20
- 6. Кто в какие игры играет в свободное от работы время?
49
- 7. precise3dmodeling.com
5
- 8. Астрологи объявили неделю "Марсианина"
19
- 9. innoBright выпустили Altus 1.2
2
- 10. Dell представила 30-дюймовый OLED дисплей UltraSharp
10
- 11. С Новым 2016 Годом!!!
8
- 12. Радиоактивные люди)))
2
- 13. Allegorithmic выпустили Substance Painter 1.7
0
- 14. Chaos Group представили V-Ray 3.3 для 3ds Max
10
- 15. Paragon from Epic Games — Announce Trailer
0
- 16. Thinkbox Software представили Sequoia
0
- 17. The Foundry выпустили Mari 3
0
- 18. Вышел After Effects and Premiere Pro 2015.1
0
- 19. Autodesk выпустили 3ds Max 2016 Extension 2
0
- 20. CLO Virtual Fashion опубликовали отличное двухминутное видео, в котором собраны лучшие проекты, созданные с помощью Marvelous Designer 5.
1
Популярные урокиещё
Объёмный свет в Mental Ray
Уроки по 3ds maxСоздание и настройка студии в 3ds max и VRay
Уроки по VRayСоздание воды в 3ds max и Mental Ray
Уроки по 3ds maxЭксклюзивное интервью с nailgun
Статьи и ИнтервьюК дождю. Making of...
Статьи и Интервью
Комментарии (Всего: 2)