Выйти из положения поможет применение способа, называемого карта отражений (gloss map). Это будет измененная исходная текстура, в которой области, представляющие воду, будут иметь значения 1,0, а все остальные - значения 0. Значение для каждого фрагмента будет считано из этой текстуры, а затем умножено на отражающую составляющую применяемого уравнения освещения. Такую карту очень просто создать почти в любом графическом редакторе. Самый простой способ это сделать - отредактировать" красный канал дневного изображения без облаков. В этом канале все водные области будут черными или почти черными, так как красного цвета в них очень мало. Можно применить специальный инструмент для выбора всех черных (вода) областей. После этого все выбранные области окрашиваются в белый цвет. Выборка инвертируется, и все остальные области заполняются черным цветом. В результате получится текстура, в которой значение 1,0 (белый цвет) имеют отражающие области, а значение 0 (черный цвет) - не отражающие. Значение отражения будет множителем при вычислении отражения, так что области с водой будут иметь составляющую отражения, а остальные области - нет. Такая карта отражений представлена на рис. 10.1.
10.3. Пример множественной текстуры
![Карта отражений для создания эффекта отражения от водной поверхности](/books/images/tmp16FC-26.png)
Рис. 10.1. Карта отражений для создания эффекта отражения от водной поверхности Как видно на цветном рис. 5, текстуры для дневного и ночного времени больше не имеют покрытия облаками. Нужно сохранить облачное покрытие как отдельную текстуру, показанную на рис. 10.2. Это придаст дополнительную гибкость сочетанию изображения облаков с рисунками поверхности Земли. Для дневной поверхности облака должны быть с рассеянным отражением, но без зеркального отражения. Более того, облака скрывают поверхность Земли, и значение 1,0 этой текстуры означает, что облака в этой точке полностью закрывают поверхность. Облака над ночной поверхностью ничего не отражают и не рассеивают, но все равно должны закрывать поверхность. Для удобства это одноканальное изображение сохраняется в красном канале К.СВ-тскстуры, а карта отражений - в зеленом канале. Синий канал остается неиспользованным. (Есть варианты - можно сохранять карту отражений как канал прозрачности в «дневной» текстуре, а облака - как канал прозрачности в «ночной» текстуре.)