Новости сайта
Главная страница » 2007 » Апрель » 7 » Шейдеры - сила!

Шейдеры - сила!

Сделал наконец нормальный пацанский ландшафт. С ЛОДом, с VBO, и детальными текстурами.
Благодаря шейдерам можно раскрасить ландшафт одновременно четырьмя текстурами, вкратце, делается это так:
Берется текстура в каждый из каналов которой (R, G, B и Alpha) ложится маска для определенной детальной текстуры.
Шейдер, на основе этой композитной маски выбирает цвета из 4х текстур и складывает их в "общий" цвет.
Потом, шейдер добавляет к этому цвету еще одну текстуру, которая формирует разные цветовые оттенки у детальных текстур.
Это придает одним и тем же детальным текстурам разные цвета в разных участках ландшафта, например песок у кромки воды будет ярко-желтым и этот же песок у края леса будет уже с коричневатым оттенком.
После этого, шейдер добавляем еще карту освещенности, затемняя участки ландшафта которые находятся в тени, и немного осветляя те, которые напрямую освещены солнцем.
Результат - на скрине.

PS: масштаб детальных текстур специально увеличен чтобы их было видно, на реальной рабочей карте масштабы меньше с такого расстояния уже не практически не видно деталей, зато если приблизиться поближе к земле, детали проступают очень сочно :)
PPS: в данном случае, количество детальных текстур ограничено количеством текстурных блоков видеокарты (это то, что называется MAX_MULTITEXTURE_UNITS), у меня в этом примере их задействовано 6. Если еще немного постараться то можно обойти и это ограничение (не увеличивая количество проходов), но ессно, это будет немножко медленнее. B)
Просмотров: 611 | Добавил: Barbanel | Дата:
Комментарии
Всего комментариев: 4
4 Bedny  
0
Неплохо. Если и спецэффекты в том же духе будут - можно уже показывать издателям. Только объясните мне такую проблему, господа: я скачиваю все файлы по движку подряд, а когда это дело распакую - игра ругается. Что именно надо скачать и куда распаковать??

3 Barbanel  
0
Quote
класссс.... мегареспект)

Спасибо, очень приятно smile

2 braza87  
0
класссс.... мегареспект)
п.с. всегда приятно обновления видеть)

1 Barbanel  
0
что называется, почувствуй разницу biggrin biggrin biggrin

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