Четверг, 28.03.2024, 17:35
Главная » Статьи » Прочее » PainEditor

3DS Max и PainEditor - Создание воды для Painkiller
Автор: LexaR
Источник: Форум "Беседы у Камина"

Статья описывает создание воды при помощи Maya, но принцип работы в 3DS Max такой же. К тому же больше придётся работать в эдиторе, а не 3D моделлере.

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


Обязательно назначаем второй UVset (map2) для этого объекта, для воды низкого уровня (Внимание! Без второй развёртки вода не будет правильно отображаться!)


Обязательно Называем нашу воду Water , Главное Water но если нужно много плоскостей воды можно назвать по любому как вам нужно, но Главное чтобы Water было в названии (например Water_REka).


Экспортируем карту в Движек, видим примерно такое:


Трудно работать с таким примером, Добавим нашу воду в Сцену...


... и сразу же Прикрепим к материалу назначенным на плоскость воды Ambient Color для карты Света которая будет на нашей воде.


Отправляем в Движек , видим:


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


примерно так 

Примечание: В максе так можно сделать, назначив воде модификатор Editable Poly и в настройках модификатора пару раз кликнув на "Tesselate".

Отправляем в Движек  


теперь мы видим бегущие волны, но они слишком глубокие, и проваливаются под землю. Чтобы это исправить, заходим с настройки текущего Clevel , ищем строку Water , и настраиваем волны, для Этого уходим в самый низ настроек воды, где начинается Wave.

WaveAmplitude - Амплитуда между волнами 
WaveFrequency - Частота Волн 
WaveSpeed - Скорость волн 


Показатели настраиваем как нужно именно вам


Теперь займемся необходимыми настройками плоскости воды в движке. Для этого Выбираем наш объект в Entities , и в его настройках Properties во вкладке NormalMap выбираем небходимую текстуру Нормалей волн шейдра воды (Примичание: необходима RG нормалмап)


А также еще во строке CubeMap Выбираем текстуру для отражению по кубической схеме.   


подкрутим настройки воды в Clevel Properties Water , и тогда мы увидим не только ЛАйтмап , но и нормали волн  

после покруток Нормали будут видны  


Если рябь оказалось слишком мелкой, то исправляется это в 3D моделлере уменьшением/увеличением первой UV развёртки


 просто уменьшаем УВ развертку, тогда рябь от Нормалмапа назначенного на воду станет меньше, выбранный NormalMap опирается на ПЕРВЫЙ (главный) UVset 
Переотправляем в Движек  


видим Рябь стала больше. 

Теперь займемся Визуальной настойкой воды, Например Заменим CubeMap Для этого Выбираем наш объект в Entities , и в его настройках Properties в Строке Cubemap выбираем другую текстуру   


Или лучше делаем свой Кубемап, и назначаем именно его. 


Теперь займемся настройками воды в Clevel Properties Water  


Настраивйте как вам нужно , опишу только коротко настройки 

BumpHight - Сила Назначенного NormalMap воды 
DeepWaterColor - Цвет Глубины Воды 
ShallowWaterColor - Цвет Воды на мели 
ReflectionAmount - Колиество Отражений (CubeMap для воды низкого уровня) 
Pan - Движение NormalMap 
FresnelBias и FresnelExponent - Пробуйте эти настройки и смотрите что получается  дословный перевод не поможет, на практике бкдет яснее  

Следующим шагом будем учиться Делать воду "Высокого" Уровня 

WaterSetting - High в дополнительных настройках Видео 

Для этого создаем CEnvironment  


И помещаем всю нашу воду в этот Объект (точнее этой областью накрываем нашуводу)  


Далее идем в Entities , и в его настройках Properties во вкладке DefaultMaterial пишем Water_ntu_rr или Water_ntu_refl , это 2 основных материала воды высокого уровня. *_rr - Reflection Refraction - С отражениями и искожающей прозрачностью *_refl - Reflection - только с прозрачностью.  


и видим что вода изменилась, но отражений нет в Эдиторе (хотя есть в Игре Gamemode)  


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


достаточно просто одной Zone 

Переотправляем в движек  


Отражения появились, теперь идем в настройки Properties нашего CEnvironment ответственного за воду, и именно в его Water Строке настроек, приступаем почти к тому же что мы делали с Clevel Properties Water. Но настроек тут будет уже больше.  


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

Pan2 - тоже что и Pan1 но вода высокого уровня способна поддерживать 2 слоя карты нормалей для ряби волн. 
PlaneShift - Изменение плоскости воды (зависимость с углом прозрачности) 
ReflectDist - Дистанция отражающей способности 
ReflectList - Выбираются Мэши для отражений (принудительно) 
ReflectRadius - Растояние Отраженного пространства 
ReflectScale - размер отражений (их сила) 
ReflectSky - отображать Небо - ДА НЕТ 
ReflectionAmount - количество отражений RefractScale сила Искожения 

Tile 1/2 Расмер NormalMap (ряби нашей воды) настраивается именно тут! а не в графичском Редакторе через УВсет как с водой низкого уровня. 

Ну вот и ВСЁ! 
Теперь мы имеем Воду с полным Динамическим отражением да еще и прозрачностью!!! 


Категория: PainEditor | Добавил: Str_Ghost (31.05.2012)
Просмотров: 3027 | Комментарии: 1 | Рейтинг: 5.0/3
Всего комментариев: 1
1 varver2013   (24.07.2013 11:11) [Материал]
Вот как воду делать а я не знал

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Поиск
Мини-Профиль
Здравствуйте, гость. Войдите на сайт или зарегистрируйтесь.

E-mail:
Пароль:
ГАМАЗАВР
Друзья сайта

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0