Статья № 54 Детальные тени
 Автор Kirk Barnes, 24.04.2005 [прислать статью]

Одна из основных проблем при картостоении под quake3 является сложность с установкой хорошего освещения. Однако поставить хорошо свет это половина дела. На уровне все равно будут невыразительные теряющиеся в общей массе тени. Причина состоит с малом размере карты теней (lightmap). К сожалению quake3 в отличии от Enemy Territory не имеет поддержки карт теней высокого разрешения, позволяющий делать карты теней размером 1024х1024 (стандартый размер lightmap в q3 128x128). Но тем немение есть способ значительно улучшить качество теней на уровне. Для компиляции небходим q3map2.

Первое. Немного отредактируем один из шейдеров текстур. Открываем шейдер base_floor.shader и ищем в нем описание текстуры proto_grate4 в нем меняем строку surfaceparm nonsolid на surfaceparm alphashadow то есть мы убираем "неплотность" текстуры на функцию позволющий компилятору расчитывать тень через альфаканал текстуры. Открываем в радианте карту пример и компилируем ее. на выходе мы получаем невыразительную картинку

теперь чтобы сделать тени более детальными мы открывает в радианте свойства worldspawn и добавляем ключ _lightmapscale с значением 0.1

хотя в общем достаточно значения 0.256 если условии что не надо силь-но детализировать альфа тени.

ОСОБЕННОСТИ КОМПИЛЯЦИИ

В bsp фазе обязатеньно необходим ключ -meta в противном случае скейл лайтмэпов неработает. Теперь главное - расчет освещения . По скольку мы не меняя размера лайтмэпа просто меняем его маштаб, то при сильном перемаштабировании (значение менее чем 0.256) начинает вылезать "лесенка" которую необходимо сгладить. Для этого вы используем ключ -filter. В результате мы имеее на выходе вот такой результат

пример можно взять [тут]