Unity includes several water Prefabs (including the necessary Shaders, scripts and art Assets) within the Standard Assets packages. Separate daylight and nighttime water Prefabs are provided.
Note that the water reflections described in this document do not work in VR.
Place one of the existing water Prefabs into your Scene. Make sure you have the Standard Assets installed:
Для воды префаб использует меш в форме овала. Если вы желаете использовать другой меш, то проще всего просто поменять его в Mesh Filter у объекта воды:
Создание воды с нуля (для продвинутых пользователей)
Простая вода в Unity требует добавления скрипта на плоский меш и использования шейдера воды:
Отражающая/преломляющая вода в Unity Pro требует аналогичных шагов для настройки с нуля:
Свойства в материалах воды
Эти свойства используются в шейдере отражающей и преломляющей воды. Большинство из них также используется и в шейдере простой воды.
Свойство: | Функция: |
---|---|
Wave scale | Изменение масштаба карты нормалей волн. Чем меньше значение, тем больше будут волны у воды. |
Reflection/refraction distort | Как сильно отражение/преломление будет искажаться картой нормалей волн. |
Refraction color | Дополнительный оттенок отражения. |
Environment reflection/refraction | Render текстуры для отражения и преломления в реальном времени. |
Normalmap | Определяет форму волн. Итоговые волны производятся путём совмещения этих двух карт нормалей, каждая из которых смещается в разном направлении, с разным масштабом и скоростью. Вторая карта нормалей в два раза меньше первой. |
Wave speed | Скорость смещения для первой (1е и 2е числа) и второй карты нормалей (3е и 4е числа). |
Fresnel | Текстура с альфа-каналом, управляющим эффектом Fresnel - количество видимого отражения против количества видимого преломления, в зависимости от угла зрения. |
Остальные свойства не используются отражающим и преломляющим шейдером, но должны быть настроены в случае, если графический ускоритель пользователя не поддерживает его и вынужден откатиться на более простой шейдер.
Свойство: | Функция: |
---|---|
Reflective color/cube and fresnel | Текстура, которая определяет цвет воды (RGB) и эффект Fresnel (A), в зависимости от угла зрения. |
Horizon color | Цвет воды на горизонте (используется только в шейдере простой воды). |
Fallback texture | Текстура для отображения воды на очень старых видео картах, если не может работать ни один из более красивых шейдеров. |