Добавил специальный шейдер для отрисовки воды
Шейдер использует 4 текстуры:
1) карта нормалей
2) карта аттенуации
3) зеркало
4) экран
На основе этого рассчитываются отражение и преломление. Коэффициент Френеля считается по упрощенной формуле clamp( abs(dot(view, normal)), 0.1, 0.9 ).
Цвет воды и силу преломления можно регулировать в шейдерном скрипте.
Карта аттенуации - это специальная текстура, рассчитываемая компилятором vmap, которая позволяет сделать плавный переход от воды к суше.
Шейдер будет работать на PS2.0 видеокартах и выше (начиная с GeForce FX/Radeon 9500).
__________________
Правдой дорожить, лжи не потакать,
Дальних не судить, ближним помогать,
С тишиной сойтись на исходе дня
Научи меня, Родина моя!
Систематизировал воду, ввёл новую переменную для настройки её качества, которая может принимать три значения. См. картинку.
Также изменения коснулись шейдерных скриптов (появились новые команды), формата карт (лайтмапы теперь 32-битные, а не 24-битные), компилятора и кое-чего по мелочи. Так что водичку вживую вы увидите не раньше большого кумулятивного апдейта.
__________________
Правдой дорожить, лжи не потакать,
Дальних не судить, ближним помогать,
С тишиной сойтись на исходе дня
Научи меня, Родина моя!