Настройка погоды и освещения

Материал из Mod Wiki.

(Различия между версиями)
Перейти к: навигация, поиск
Версия 10:35, 20 марта 2008 (править)
BAC9-FLCL (Обсуждение | вклад)
(Значение параметров погодных конфигов)
← К предыдущему изменению
Текущая версия (06:28, 22 декабря 2010) (править) (отменить)
Alex Ros (Обсуждение | вклад)
(Параметры погоды)
 
(11 промежуточных версий не показаны.)
Строка 1: Строка 1:
-==Значение параметров погодных конфигов==+==Значение погодных параметров и относящихся к ним конфигов==
 + 
 +===Параметры погоды===
<pre>[sect_default_weather] <pre>[sect_default_weather]
Строка 7: Строка 9:
...</pre> ...</pre>
-Здесь указывается время смены типов погоды, каждый тип включает в себя свой скайбокс и индивидуальные параметры освещения, дождя, грозы, и звука окружения. Переход осуществляется не скачкообразно, а плавно, практически не заметно.+Здесь указывается время смены секций погоды, каждая секция включает в себя свой скайбокс
 +и индивидуальные параметры освещения, дождя, грозы, и звука окружения. Переход между секциями
 +осуществляется не скачкообразно, а плавно, практически не заметно. Имена секций можно ставить
 +произвольные, используя латиницу, время так же можно выставить любое, но не рекомендуется.
-<pre>[default_weather_01] ; имя типа погоды, описание которого ведется в этом блоке.+<pre>[default_weather_01] ; имя секции погоды, описание которой ведется в этом блоке.
flares = flares_gradient1 ; здесь указывается имя заготовки блика flares = flares_gradient1 ; здесь указывается имя заготовки блика
от солнца (заготовки прописаны в файле flares.ltx). от солнца (заготовки прописаны в файле flares.ltx).
-sky_texture = skysky_14_cube ; это имя используемого скайбокса. cкайбокс - это куб, +sky_texture = sky\sky_14_cube ; это имя используемого скайбокса. cкайбокс - это куб,
окружающий всю локацию, на 6 граней которого натянуты 6 текстур из файла, указанного окружающий всю локацию, на 6 граней которого натянуты 6 текстур из файла, указанного
в этой строке. нужно обратить внимание, что строка содержит еще и путь к файлу. в этой строке. нужно обратить внимание, что строка содержит еще и путь к файлу.
-sky_rotation = 0 ; угол поворота скайбокса за игровой час, в градусах.+sky_rotation = 0 ; определяет положение (азимут) скайбокса на описываемый час. Если выставить
 +в соседних секциях разные значения азимута, то в переходах между секциями скайбокс будет плавно
 +совершать вращение от одного значения к другому.
sky_color = 1.0, 1.0, 1.0 ; это цвет неба, или, точнее, цвет рассеянного света, sky_color = 1.0, 1.0, 1.0 ; это цвет неба, или, точнее, цвет рассеянного света,
Строка 26: Строка 33:
стоит учитывать, что здесь описывается не цвет, а свет, поэтому параметр, стоит учитывать, что здесь описывается не цвет, а свет, поэтому параметр,
например, [0,0,0] - даст не черный цвет, а отсутствие вообще какого либо света. например, [0,0,0] - даст не черный цвет, а отсутствие вообще какого либо света.
-аналогично эффекту смешивания в фотошопе (screen).+аналогично эффекту смешивания в фотошопе (screen). НО! Опытным путем установлено, что движок
 +может работать со значениями больше единицы.
-clouds_texture = skysky_oblaka ; это - имя тектуры облаков. не путать со скайбоксом.+clouds_texture = sky\sky_oblaka ; это - имя тектуры облаков. не путать со скайбоксом.
clouds_color = 0.333, 0.341, 0.431, 0.7, 1.7 ; это цвет облаков, первые 3 цифры - clouds_color = 0.333, 0.341, 0.431, 0.7, 1.7 ; это цвет облаков, первые 3 цифры -
Строка 35: Строка 43:
облаков. облаков.
-far_plane = 350 ; это, судя по всему, дальность видимости (расстояние, на котором +far_plane = 350 ; это дальность видимости, расстояние, на котором
-"обрезается" карта).+"обрезается" карта.
-fog_distance = 350 ; расстояние, на котором начинает действовать туман, т.е.,+fog_distance = 350 ; в DX9 это расстояние, на котором туман фактически "прекращает"
-начиная с этого расстояния, объекты постепенно окрашиваются в цвет тумана.+действовать. непосредственно дымка, интенсивность которой задаётся fog_density,
 +"висит" в радиусе fog_distance. за пределами этого радиуса часть геометрии "съедается"
 +и вместо неё отображается небо (скайбокс). правильно подобранная текстура неба
 +имитирует вдали клубы тумана. а уже дальше снова проявляется геометрия уровня (холмы
 +и т.д.). в DX8-режиме туман рудиментарен и обсуждать его нет особого смысла.
-fog_color = 0.043, 0.043, 0.055 ; непосредственно сам цвет тумана.+fog_color = 0.043, 0.043, 0.055 ; непосредственно сам цвет тумана. При слишком высоких
 +значениях параметра объекты вдали будут светлее неба, поэтому если вдали видим "белые сосны",
 +то проблема именно в этом параметре. Можно добавить, что вычислять цвет тумана можно двумя способами.
 +В случае если цвет неба sky_color равен 1.0, 1.0, 1.0, то можно открыть текстуру скайкуба в фотошопе
 +и щелкнуть пипеткой на цвет "дна" скайкуба. Потом по формуле 1/255*[значение в фотошопе]=[значение для игры]
 +вычислить для каждого цветового канала, какого же цвета нужен туман. В случае если цвет неба
 +sky_color НЕ равен 1.0, 1.0, 1.0, то необходимо зайти в игру, пролететь камерой за край локации
 +и сделать скриншот "дна" текстуры скайкуба, а потом провести операции с пипеткой в фотошопе с
 +вычислением цвета для настроек игры.
fog_density = 0.9 ; это плотность тумана, выставив значение в 0, можно увидеть fog_density = 0.9 ; это плотность тумана, выставив значение в 0, можно увидеть
-четкие края карты.+четкие края карты, а если поставить значение больше единицы, то туман будет виден прямо перед носом.
-rain_density = 0.2 ; это плотность дождя, действует, видимо, как и туман.+rain_density = 0.2 ; это плотность дождя, действует, видимо, как и туман. Примечательно, что зависимость
 +от параметра нелинейна, и значение 0.2 практически не отличается от единицы. Чтобы сделать действительно
 +слабый дождь, надо экспериментировать с очень маленькими значениями.
-rain_color = 0.21, 0.21, 0.27 ; цвет дождя.+rain_color = 0.21, 0.21, 0.27 ; цвет (непосредственно капель) падающего дождя.
thunderbolt = thunderbolt_collection_default ; это имя заготовки грозы, если грозы thunderbolt = thunderbolt_collection_default ; это имя заготовки грозы, если грозы
не предусмотрено, значение можно оставить пустым. не предусмотрено, значение можно оставить пустым.
-bolt_period = 4.5f - период молний (время длительности вспышки молнии).+bolt_period = 4.5f ; это время между вспышками молний. значение прописано не в
 +секундах. В принципе, эмпирически установлено, что в грозовую погоду желательно
 +ставить значения около 20f, в дождливую - в районе 50f.
-bolt_duration = 0.35f ;период между молниями, чем меньше значение, тем чаще молнии. +bolt_duration = 0.35f ; это собственно продолжительность фазы вспышки молнии.
-выставив 0,будете любоваться непрекращающимися сверканиями и грохотом, что означает +выставив высокое значение, можно вовсе получить не молнию, а некое плавно
-буква f, неизвестно, аналогично и в верхнем пункте.+нарастающее свечение.
-wind_velocity = 0.0 ; сила ветра.+wind_velocity = 0.0 ; сила ветра. На что влияет - не понятно.
-wind_direction = 0.0 ; направление ветра.+wind_direction = 0.0 ; направление ветра. На что влияет - не понятно.
ambient = 0.0425, 0.045, 0.0475 ; общее освещение локации, те тона, в которые она ambient = 0.0425, 0.045, 0.0475 ; общее освещение локации, те тона, в которые она
Строка 74: Строка 98:
sun_color = 0.0, 0.0, 0.0 ; свет солнца, его интенсивность также влияет на тени, sun_color = 0.0, 0.0, 0.0 ; свет солнца, его интенсивность также влияет на тени,
-если солнце не светит, теней от него не будет.+если солнце не светит, теней от него не будет. Зависимость глубины тени от значений света не линейна.
sun_dir = -18.0, 291 ; положение солнца, первая цифра - это высота, знак минус означает, sun_dir = -18.0, 291 ; положение солнца, первая цифра - это высота, знак минус означает,
Строка 83: Строка 107:
env_ambient = ambient_env_rain ; это набор звуков окружения.</pre> env_ambient = ambient_env_rain ; это набор звуков окружения.</pre>
-==Параметры бликов==+===Параметры эффектов светила===
 + 
 +Находятся в файле '''flares.ltx'''.
 + 
 +<pre>[flares_sun_rise] ; название cекции, параметры которой описываются ниже
-Находятся в файле flares.ltx.+flare_opacity = 0.340, 0.260, 0.500, 0.420, 0.260, 0.260 ; непрозрачность
 +каждого отражения, в порядке от дальнего к ближнему.
-<pre>[flares_sun_rise]+flare_position = 1.300, 1.000, 0.500, -0.300, -0.600, -1.000 ; позиция каждого
 +отражения на оси, порядок соотв. верхнему.
-;название заготовки, параметры которой описываются ниже+flare_radius = 0.080, 0.120, 0.040, 0.080, 0.120, 0.300 ; радиус каждого
 +отражения, порядок соотв. верхнему.
-flare_opacity = 0.340, 0.260, 0.500, 0.420, 0.260, 0.260+flare_textures = fxfx_flare1.tga, fxfx_flare2.tga,
 +fxfx_flare2.tga, fxfx_flare2.tga, fxfx_flare3.tga,
 +fxfx_flare1.tga
-;непрозрачность каждого отражения, в порядке от дальнего к ближнему.+; имена текстур, использованных на каждое отражение, порядок аналогичен.
 +можно заметить, что прописан формат *.tga, в действительности используются,
 +как и везде, текстуры *.dds, а вообще - поддержка формата *.tga под вопросом.
-flare_position = 1.300, 1.000, 0.500, -0.300, -0.600, -1.000+flare_shader = effectsflare ; шейдер.
-;позиция каждого отражения на оси, порядок соотв. верхнему+flares = on ; параметр включает или выключает блики, например, для луны -
 +они не уместны.
-flare_radius = 0.080, 0.120, 0.040, 0.080, 0.120, 0.300+gradient = on ; параметр, включающий/выключающий ореол вокруг светила,
 +дающий эффект ослепления.
-;радиус каждого отражения, порядок соотв. верхнему+gradient_opacity = 1.0 ; непрозрачность ореола.
-flare_textures = fxfx_flare1.tga, fxfx_flare2.tga, fxfx_flare2.tga, fxfx_flare2.tga, fxfx_flare3.tga, fxfx_flare1.tga+gradient_radius = 0.7 ; радиус ореола.
-;имена текстур, использованных на каждое отражение, порядок аналогичен. Можно заметить, что прописан формат *.tga,+gradient_texture = fxfx_gradient.tga ;имя текстуры ореола.
-в действительности используются как и везде текстуры *.dds, а вообще поддержка формата *.tga под вопросом.+
-flare_shader = effectsflare+gradient_shader = effectsflare ; аналогично [flare_shader].
-;речь про шейдер, хотя в ресурсах его не обнаружено почему то+source = on ;параметр, включающий/выключающий отображение источника, то есть
 +самого солнца или луны.
-flares = on+source_radius = 0.03 ; радиус источника.
-;параметр включает или выключает блики, например для луны они не уместны+source_texture = fxfx_sun_rise.tga ;имя используемой для источника текстуры.
-gradient = on+source_shader = effectssun ; аналогично [flare_shader].
-;параметр, включающий/выключающий ореол вокруг светила, дающий эффект ослепления+source_ignore_color = false ; игнорирование цвета источника.</pre>
-gradient_opacity = 1.0+===Параметры фонарика===
-;непрозрачность ореола+Файл находится по следующему пути:<br>
 +'''config\models\objects\light_night.ltx'''
-gradient_radius = 0.7+<pre>[torch_definition]
-;радиус ореола+range = 30 ; дистанция в метрах.
-gradient_texture = fxfx_gradient.tga+range_r2 = 30 ; дистанция в метрах (для динамического освещения).
-;имя текстуры ореола+color = 0.22,0.22,0.22,0.2 ; цвет, из 4 компонентов <r,g,b,a> значением от 0 до 3.
-gradient_shader = effectsflare+color_r2 = 1.1,1.1,1.1,0.0 ; цвет, из 4 компонентов <r,g,b,a> значением от 0 до 3
 +(для динамического освещения).
-;аналогично [flare_shader]+omni_range = 3 ; дистанция освещения от фонариков неписей в метрах.
-source = on+omni_range_r2 = 3 ; дистанция освещения от фонариков неписей в метрах (для динамического
 +освещения).
-;параметр, включающий/выключающий отображение источника, то есть самого солнца или луны+omni_color = 1.0,1.0,1.0,0.1 ; цвет фонариков неписей, из 4 компонентов <r,g,b,a>
 +значением от 0 до 3.
-source_radius = 0.03+omni_color_r2 = 1.0,1.0,1.0,0.1 ; цвет фонариков неписей, из 4 компонентов <r,g,b,a>
 +значением от 0 до 3 (для динамического освещения).
-;радиус источника+color_animator = empty ; цвет аниматора (empty - аниматор не используется).
-source_texture = fxfx_sun_rise.tga+spot_texture = internalinternal_light_torch_r2 ; текстура яркой точки (для динамического
 +освещения).
-;имя используемой для источника текстуры+spot_angle = 45 ; угол освещения в градусах.
-source_shader = effectssun+glow_texture = glowglow_torch_r2 ; текстура свечения фонарика, когда он направлен в глаза
 +(обязательный параметр).
-;аналогично [flare_shader]+glow_radius = 0.3 ; радиус свечения в метрах.
-source_ignore_color = false+guide_bone = lights_bone ; кость, к направлению которой привязывается фонарик (изменять
 +строго не рекомендуется).</pre>
-;игнорирование цвета источника... не совсем понятно, о чем речь+==Авторы==
-blend_time = 5 ;(сек)+Статья создана по материалам, предоставленным:
-;время смешивания... честно говоря в этих 3 пунктах не разобрался, может быть, относится к адаптации зрения+* [[Участник:Argus|Argus]]
 +* [[Участник:Saharov|Saharov]]
 +* [[Участник:sergy172|sergy172]]
 +* [[Участник:Xarvius|Xarvius]]
 +* [[Участник:NightVz|NightVz]]
-blend_rise_time = 20 ;(сек)+[[Категория:Статьи участников]]
-blend_down_time = 20 ;(сек)</pre>+

Текущая версия

Содержание

Значение погодных параметров и относящихся к ним конфигов

Параметры погоды

[sect_default_weather]

01:00:00 = default_weather_01
02:00:00 = default_weather_02
...

Здесь указывается время смены секций погоды, каждая секция включает в себя свой скайбокс и индивидуальные параметры освещения, дождя, грозы, и звука окружения. Переход между секциями осуществляется не скачкообразно, а плавно, практически не заметно. Имена секций можно ставить произвольные, используя латиницу, время так же можно выставить любое, но не рекомендуется.

[default_weather_01] ; имя секции погоды, описание которой ведется в этом блоке.

flares = flares_gradient1 ; здесь указывается имя заготовки блика
от солнца (заготовки прописаны в файле flares.ltx).

sky_texture = sky\sky_14_cube ; это имя используемого скайбокса. cкайбокс - это куб, 
окружающий всю локацию, на 6 граней которого натянуты 6 текстур из файла, указанного 
в этой строке. нужно обратить внимание, что строка содержит еще и путь к файлу.

sky_rotation = 0 ; определяет положение (азимут) скайбокса на описываемый час. Если выставить
в соседних секциях разные значения азимута, то в переходах между секциями скайбокс будет плавно
совершать вращение от одного значения к другому.

sky_color = 1.0, 1.0, 1.0 ; это цвет неба, или, точнее, цвет рассеянного света, 
формат из 3 цифр, как и в параметрах ниже, подразумевает цветовую модель RGB, 
учитывая то, что здесь максимальная интенсивность цвета (255), здесь равна 1.0. 
например, цвет неба, равный [1.0, 0.0, 0.0] - зальет окрестность ярко красным светом. 
стоит учитывать, что здесь описывается не цвет, а свет, поэтому параметр,
например, [0,0,0] - даст не черный цвет, а отсутствие вообще какого либо света. 
аналогично эффекту смешивания в фотошопе (screen). НО! Опытным путем установлено, что движок
может работать со значениями больше единицы.

clouds_texture = sky\sky_oblaka ; это - имя тектуры облаков. не путать со скайбоксом.

clouds_color = 0.333, 0.341, 0.431, 0.7, 1.7 ; это цвет облаков, первые 3 цифры - 
это RGB (см.выше), четвертая - это видимость (непрозрачность) текстуры облаков, 
т.е 0 - облаков не видно, а 1 - полная видимость. пятая цифра - скорость движения
облаков.

far_plane = 350 ; это дальность видимости, расстояние, на котором 
"обрезается" карта.

fog_distance = 350 ; в DX9 это расстояние, на котором туман фактически "прекращает" 
действовать. непосредственно дымка, интенсивность которой задаётся fog_density, 
"висит" в радиусе fog_distance. за пределами этого радиуса часть геометрии "съедается" 
и вместо неё отображается небо (скайбокс). правильно подобранная текстура неба 
имитирует вдали клубы тумана. а уже дальше снова проявляется геометрия уровня (холмы 
и т.д.). в DX8-режиме туман рудиментарен и обсуждать его нет особого смысла.

fog_color = 0.043, 0.043, 0.055 ; непосредственно сам цвет тумана. При слишком высоких
значениях параметра объекты вдали будут светлее неба, поэтому если вдали видим "белые сосны",
то проблема именно в этом параметре. Можно добавить, что вычислять цвет тумана можно двумя способами.
В случае если цвет неба sky_color равен 1.0, 1.0, 1.0, то можно открыть текстуру скайкуба в фотошопе
и щелкнуть пипеткой на цвет "дна" скайкуба. Потом по формуле 1/255*[значение в фотошопе]=[значение для игры]
вычислить для каждого цветового канала, какого же цвета нужен туман. В случае если цвет неба
sky_color НЕ равен 1.0, 1.0, 1.0, то необходимо зайти в игру, пролететь камерой за край локации
и сделать скриншот "дна" текстуры скайкуба, а потом провести операции с пипеткой в фотошопе с
вычислением цвета для настроек игры. 

fog_density = 0.9 ; это плотность тумана, выставив значение в 0, можно увидеть 
четкие края карты, а если поставить значение больше единицы, то туман будет виден прямо перед носом.

rain_density = 0.2 ; это плотность дождя, действует, видимо, как и туман. Примечательно, что зависимость
от параметра нелинейна, и значение 0.2 практически не отличается от единицы. Чтобы сделать действительно
слабый дождь, надо экспериментировать с очень маленькими значениями.

rain_color = 0.21, 0.21, 0.27 ; цвет (непосредственно капель) падающего дождя.

thunderbolt = thunderbolt_collection_default ; это имя заготовки грозы, если грозы 
не предусмотрено, значение можно оставить пустым.

bolt_period = 4.5f ; это время между вспышками молний. значение прописано не в 
секундах. В принципе, эмпирически установлено, что в грозовую погоду желательно 
ставить значения около 20f, в дождливую - в районе 50f.

bolt_duration = 0.35f ; это собственно продолжительность фазы вспышки молнии. 
выставив высокое значение, можно вовсе получить не молнию, а некое плавно 
нарастающее свечение.

wind_velocity = 0.0 ; сила ветра. На что влияет - не понятно.

wind_direction = 0.0 ; направление ветра. На что влияет - не понятно.

ambient = 0.0425, 0.045, 0.0475 ; общее освещение локации, те тона, в которые она
будет окрашена (цвет и интенсивность света фонового освещения там, где не светит солнце - 
выставив значения в [0,0,0] - получим кромешную тьму в зданиях и под навесами. 
работает только на R2.

lmap_color = 1.0, 1.0, 1.0 ; видимо, цвет лайтмапа.

hemi_color = 0.0425, 0.045, 0.0475, 0.1 ;по слухам, параметр, идентичный амбиенту, 
только предназначенный для статичного освещения. насчет четвертой цифры - не в курсе.

sun_color = 0.0, 0.0, 0.0 ; свет солнца, его интенсивность также влияет на тени, 
если солнце не светит, теней от него не будет. Зависимость глубины тени от значений света не линейна.

sun_dir = -18.0, 291 ; положение солнца, первая цифра - это высота, знак минус означает, 
что солнце выше горизонта. от горизонта до горизонта солнце описывает полукруг, значения 
в игре соотносятся с градусами, то есть от -0 до -180, зенит -90, вторая цифра определяет 
положение солнца относительно сторон горизонта, нулевое значение вроде соответствует югу.

env_ambient = ambient_env_rain ; это набор звуков окружения.

Параметры эффектов светила

Находятся в файле flares.ltx.

[flares_sun_rise] ; название cекции, параметры которой описываются ниже

flare_opacity = 0.340, 0.260, 0.500, 0.420, 0.260, 0.260 ; непрозрачность 
каждого отражения, в порядке от дальнего к ближнему.

flare_position = 1.300, 1.000, 0.500, -0.300, -0.600, -1.000 ; позиция каждого 
отражения на оси, порядок соотв. верхнему.

flare_radius = 0.080, 0.120, 0.040, 0.080, 0.120, 0.300 ; радиус каждого 
отражения, порядок соотв. верхнему.

flare_textures = fxfx_flare1.tga, fxfx_flare2.tga, 
fxfx_flare2.tga, fxfx_flare2.tga, fxfx_flare3.tga, 
fxfx_flare1.tga

; имена текстур, использованных на каждое отражение, порядок аналогичен. 
можно заметить, что прописан формат *.tga, в действительности используются, 
как и везде, текстуры *.dds, а вообще - поддержка формата *.tga под вопросом.

flare_shader = effectsflare ; шейдер.

flares = on ; параметр включает или выключает блики, например, для луны - 
они не уместны.

gradient = on ; параметр, включающий/выключающий ореол вокруг светила, 
дающий эффект ослепления.

gradient_opacity = 1.0 ; непрозрачность ореола.

gradient_radius = 0.7 ; радиус ореола.

gradient_texture = fxfx_gradient.tga ;имя текстуры ореола.

gradient_shader = effectsflare ; аналогично [flare_shader].

source = on ;параметр, включающий/выключающий отображение источника, то есть 
самого солнца или луны.

source_radius = 0.03 ; радиус источника.

source_texture = fxfx_sun_rise.tga ;имя используемой для источника текстуры.

source_shader = effectssun ; аналогично [flare_shader].

source_ignore_color = false ; игнорирование цвета источника.

Параметры фонарика

Файл находится по следующему пути:
config\models\objects\light_night.ltx

[torch_definition]

range = 30 ; дистанция в метрах.

range_r2 = 30 ; дистанция в метрах (для динамического освещения).

color = 0.22,0.22,0.22,0.2 ; цвет, из 4 компонентов <r,g,b,a> значением от 0 до 3.

color_r2 = 1.1,1.1,1.1,0.0 ; цвет, из 4 компонентов <r,g,b,a> значением от 0 до 3 
(для динамического освещения).

omni_range = 3 ; дистанция освещения от фонариков неписей в метрах.

omni_range_r2 = 3 ; дистанция освещения от фонариков неписей в метрах (для динамического 
освещения).

omni_color = 1.0,1.0,1.0,0.1 ; цвет фонариков неписей, из 4 компонентов <r,g,b,a> 
значением от 0 до 3.

omni_color_r2 = 1.0,1.0,1.0,0.1 ; цвет фонариков неписей, из 4 компонентов <r,g,b,a> 
значением от 0 до 3  (для динамического освещения).

color_animator = empty ; цвет аниматора (empty - аниматор не используется).

spot_texture = internalinternal_light_torch_r2 ; текстура яркой точки (для динамического 
освещения).

spot_angle = 45 ; угол освещения в градусах.

glow_texture = glowglow_torch_r2 ; текстура свечения фонарика, когда он направлен в глаза 
(обязательный параметр).

glow_radius = 0.3 ; радиус свечения в метрах.

guide_bone = lights_bone ; кость, к направлению которой привязывается фонарик (изменять
строго не рекомендуется).

Авторы

Статья создана по материалам, предоставленным:

Личные инструменты