Объемный свет
Вот собственно тутор (нашел в своем загашнике и решил с Вами поделится), написанный мною пол года назад под 7 протокол, но с таким же успехом можно им пользоваться на любой версии движка (Это мой первый тутор, так что не бейте сильно
). Итак Поехали!
Помните, когда заходите в пыльную комнату, особенно вечером, когда солнце уже садится, можно увидеть чудный эффект, когда на свету пылинки переливаются, красиво освещаясь. Сейчас мы попытаемся воспроизвести подобный эффект.
Вместо пыльной комнаты я попытаюсь создать старый ангар...
Для начала создадим помещение, где будет происходить действие:
Затем проделаем в одной из стен дырки для окон:
После зададим материал для нашего окна:
и в тех местах, где не должен проходить свет, создадим браш с текстурой "Tools/toolsblocklight",(1) делаем зто для всех таких мест в окне, затем превращаем все это дело в "func_detail":
Затем нужно разобраться со светом:
поставим на карте "light_environment" Можно использовать свои настройки но нужно четко следить за изменением угла падения солнечных лучей. Вот поимер моих настроек:
"Pitch Yaw Roll (Y Z X)"="0 90 0"
"Pitch"="-30"
"Brightness"="255 165 121 200"
Далее создадим собственно то, что будет представлять из себя объемный свет, а именно браш(4), поставленный таким образом, чтобы он в ширину покрывал всю площадь(2). Также браш нужно сделать довольно большой длины. Затем применим к брашу(4) материал "Models/Effects/vol_light001". (Если такой текстуры нет, возьмите в аттаче)
Далее просто раскопируем браш(4) нужное количество раз и получим систему брашей(6):
Обратите внимание, что угол наклона лучей солнца в настройках"light_environment" должен соответствовать углу наклона браша(4), имитирующего объемный свет.
Для этого создадим дополнительный объект "light_spot"(3) с таким же настройками углов, как и у"light_environment" и поставим его в смой верхней точке на пересечении браша(4) и сеточки(1).
Далее выбираем систему брашей(6) затем инструмент "Vertex tool<Shift+V>"(5), выбираем все точки, которые находятся дальше всего от окна и тянем вниз до тех пор, пока верняя линия(7) не окажется под тем же углом, что и стрелочка у "light_spot"а.
После всех манипуляций выберем инструмент"Clipping tool<Shift+X>"(
и просто обрежем все, что находится ниже пола.
Ввиду вредности текстуры""она может неправильно отображаться на участке соприкосновения с полом, поэтому выберем систему брашей(6) и немного преподнимим над полом, чтобы закрасить нижние плоскости текстурой"Tools/toolsnodraw".
Делаем тоже самое для плоскостей возле окна(9) после чего спокойно ставим всё(6) на место и превращаем в "func_illusionary" с такими настройками:
"Render FX"="Normal" //режим пульсирования
"Render mode"="Texture" //режим рендеринга
"FX Amount (0-255)"="150" //прозрачность
"FX Color (R G B)"="255 255 255" //Цвет подсветки
"Disable Reseiving Shadows"="Yes" //запретить тени, бросаемые на объект
"Disable Shadows"="Yes" //запретить тени, отбрасываемые объектом
Затем размножаем наши копии "func_illusionary" сколько нужно
Остается последний штрих: если вы отрендерите сцену в таком состоянии, то тени от окна будут весьма расплывчитыми, чтобы получить эффект, как на верхней картинке нужно выбрать инструмент "Toggle Texture Application"(12) и выделить браш пола(11) и изменить значение "Lightmap Scale"(10) на "4".
ВНИМАНИЕ! Чем ниже значение "Lightmap Scale"(10), тем дольше будет идти просчет теней при компиляции карты!
Чтобы еще больше улучшить конечный вид карты нужен соответствующий "Skybox". Для его изменения нажмите "Map→Map Properties" затем в графе "SkyBox Texture Name" поставьте "sky_day01_07" или "sky_day01_08".
Теперь можно удалить ненужный "light_spot" и с чистой совестью запускать компиляцию....
Карта, использованная в данном примере находится в аттаче.
Вот собственно тутор (нашел в своем загашнике и решил с Вами поделится), написанный мною пол года назад под 7 протокол, но с таким же успехом можно им пользоваться на любой версии движка (Это мой первый тутор, так что не бейте сильно
Помните, когда заходите в пыльную комнату, особенно вечером, когда солнце уже садится, можно увидеть чудный эффект, когда на свету пылинки переливаются, красиво освещаясь. Сейчас мы попытаемся воспроизвести подобный эффект.
Вместо пыльной комнаты я попытаюсь создать старый ангар...
Для начала создадим помещение, где будет происходить действие:
Затем проделаем в одной из стен дырки для окон:
После зададим материал для нашего окна:
и в тех местах, где не должен проходить свет, создадим браш с текстурой "Tools/toolsblocklight",(1) делаем зто для всех таких мест в окне, затем превращаем все это дело в "func_detail":
Затем нужно разобраться со светом:
поставим на карте "light_environment" Можно использовать свои настройки но нужно четко следить за изменением угла падения солнечных лучей. Вот поимер моих настроек:
"Pitch Yaw Roll (Y Z X)"="0 90 0"
"Pitch"="-30"
"Brightness"="255 165 121 200"
Далее просто раскопируем браш(4) нужное количество раз и получим систему брашей(6):
Обратите внимание, что угол наклона лучей солнца в настройках"light_environment" должен соответствовать углу наклона браша(4), имитирующего объемный свет.
Для этого создадим дополнительный объект "light_spot"(3) с таким же настройками углов, как и у"light_environment" и поставим его в смой верхней точке на пересечении браша(4) и сеточки(1).
Далее выбираем систему брашей(6) затем инструмент "Vertex tool<Shift+V>"(5), выбираем все точки, которые находятся дальше всего от окна и тянем вниз до тех пор, пока верняя линия(7) не окажется под тем же углом, что и стрелочка у "light_spot"а.
После всех манипуляций выберем инструмент"Clipping tool<Shift+X>"(
и просто обрежем все, что находится ниже пола.Ввиду вредности текстуры""она может неправильно отображаться на участке соприкосновения с полом, поэтому выберем систему брашей(6) и немного преподнимим над полом, чтобы закрасить нижние плоскости текстурой"Tools/toolsnodraw".
Делаем тоже самое для плоскостей возле окна(9) после чего спокойно ставим всё(6) на место и превращаем в "func_illusionary" с такими настройками:
"Render FX"="Normal" //режим пульсирования
"Render mode"="Texture" //режим рендеринга
"FX Amount (0-255)"="150" //прозрачность
"FX Color (R G B)"="255 255 255" //Цвет подсветки
"Disable Reseiving Shadows"="Yes" //запретить тени, бросаемые на объект
"Disable Shadows"="Yes" //запретить тени, отбрасываемые объектом
Затем размножаем наши копии "func_illusionary" сколько нужно
Остается последний штрих: если вы отрендерите сцену в таком состоянии, то тени от окна будут весьма расплывчитыми, чтобы получить эффект, как на верхней картинке нужно выбрать инструмент "Toggle Texture Application"(12) и выделить браш пола(11) и изменить значение "Lightmap Scale"(10) на "4".
ВНИМАНИЕ! Чем ниже значение "Lightmap Scale"(10), тем дольше будет идти просчет теней при компиляции карты!
Чтобы еще больше улучшить конечный вид карты нужен соответствующий "Skybox". Для его изменения нажмите "Map→Map Properties" затем в графе "SkyBox Texture Name" поставьте "sky_day01_07" или "sky_day01_08".
Теперь можно удалить ненужный "light_spot" и с чистой совестью запускать компиляцию....
Карта, использованная в данном примере находится в аттаче.
Attachments
-
59.9 KB Views: 1,907
-
114.9 KB Views: 1,354
-
116.4 KB Views: 1,238
-
70.2 KB Views: 1,335
-
72.6 KB Views: 1,303
-
72.6 KB Views: 1,249
-
75.8 KB Views: 1,261
-
76 KB Views: 1,218
-
69.8 KB Views: 1,275
-
69.2 KB Views: 1,234
-
116.7 KB Views: 1,290
-
129.2 KB Views: 1,290
-
7.2 KB Views: 314
-
2.3 KB Views: 320
.
.