Это приблизительный перевод статьи на английском(я её сократил):
http://www.planetquake.com/simland/pages/articles/phongshading1.htm
Этот шейдер сглаживает неровные поверхности, например поверхность скалы или земли.
Это одна и та же поверхность, текстура та же самая, только слева без шейдера, а справа с ним.
Сначала нужно эту неровную поверхность создать, например с помощью плагина gtkgensurf.
Затем нужно подобрать текстуру для поверхности
У меня это текстура rubbledark.jpg, которая лежит в папке textures/adm.
Создаем в папке baseq3/scripts файл с расширением .shader (название любое) и добавляем название этого файла в shaderlist.txt
Содержание этого файла:
textures/adm/rubbledark
{
q3map_nonplanar
q3map_shadeangle 60
{
map $lightmap
rgbGen identity
}
{
map textures/adm/rubbledark.tga
blendFunc filter
}
}
Запускаем радиант и присваиваем нужной поверхности текстуру adm/rubbledark.
Компилируем карту со светом и любуемся результатом.
Мой пример в этой карте
PS: Компиляция на моей карте:
BSP - meta, -vis -fast, -light -fast -super 2 -filter
|