Environment

Наследует: Resource < RefCounted < Object

Ресурс для узлов среды (например, WorldEnvironment), которые определяют несколько параметров рендеринга.

Описание

Ресурс для узлов окружения (например, WorldEnvironment), которые определяют множество операций с окружением (таких как фон Sky или Color, окружающее освещение, туман, глубина резкости...). Эти параметры влияют на окончательный рендеринг сцены. Порядок этих операций следующий:

  • Размытие глубины резкости

  • Автоматическая экспозиция

  • Свечение

  • Тональная карта

  • Коррекция

Обучающие материалы

Свойства

float

adjustment_brightness

1.0

Texture

adjustment_color_correction

float

adjustment_contrast

1.0

bool

adjustment_enabled

false

float

adjustment_saturation

1.0

Color

ambient_light_color

Color(0, 0, 0, 1)

float

ambient_light_energy

1.0

float

ambient_light_sky_contribution

1.0

AmbientSource

ambient_light_source

0

int

background_camera_feed_id

1

int

background_canvas_max_layer

0

Color

background_color

Color(0, 0, 0, 1)

float

background_energy_multiplier

1.0

float

background_intensity

30000.0

BGMode

background_mode

0

float

fog_aerial_perspective

0.0

float

fog_density

0.01

float

fog_depth_begin

10.0

float

fog_depth_curve

1.0

float

fog_depth_end

100.0

bool

fog_enabled

false

float

fog_height

0.0

float

fog_height_density

0.0

Color

fog_light_color

Color(0.518, 0.553, 0.608, 1)

float

fog_light_energy

1.0

FogMode

fog_mode

0

float

fog_sky_affect

1.0

float

fog_sun_scatter

0.0

GlowBlendMode

glow_blend_mode

1

float

glow_bloom

0.0

bool

glow_enabled

false

float

glow_hdr_luminance_cap

12.0

float

glow_hdr_scale

2.0

float

glow_hdr_threshold

1.0

float

glow_intensity

0.3

float

glow_levels/1

0.0

float

glow_levels/2

0.8

float

glow_levels/3

0.4

float

glow_levels/4

0.1

float

glow_levels/5

0.0

float

glow_levels/6

0.0

float

glow_levels/7

0.0

Texture

glow_map

float

glow_map_strength

0.8

float

glow_mix

0.05

bool

glow_normalized

false

float

glow_strength

1.0

ReflectionSource

reflected_light_source

0

float

sdfgi_bounce_feedback

0.5

float

sdfgi_cascade0_distance

12.8

int

sdfgi_cascades

4

bool

sdfgi_enabled

false

float

sdfgi_energy

1.0

float

sdfgi_max_distance

204.8

float

sdfgi_min_cell_size

0.2

float

sdfgi_normal_bias

1.1

float

sdfgi_probe_bias

1.1

bool

sdfgi_read_sky_light

true

bool

sdfgi_use_occlusion

false

SDFGIYScale

sdfgi_y_scale

1

Sky

sky

float

sky_custom_fov

0.0

Vector3

sky_rotation

Vector3(0, 0, 0)

float

ssao_ao_channel_affect

0.0

float

ssao_detail

0.5

bool

ssao_enabled

false

float

ssao_horizon

0.06

float

ssao_intensity

2.0

float

ssao_light_affect

0.0

float

ssao_power

1.5

float

ssao_radius

1.0

float

ssao_sharpness

0.98

bool

ssil_enabled

false

float

ssil_intensity

1.0

float

ssil_normal_rejection

1.0

float

ssil_radius

5.0

float

ssil_sharpness

0.98

float

ssr_depth_tolerance

0.5

bool

ssr_enabled

false

float

ssr_fade_in

0.15

float

ssr_fade_out

2.0

int

ssr_max_steps

64

float

tonemap_agx_contrast

1.25

float

tonemap_agx_white

16.29

float

tonemap_exposure

1.0

ToneMapper

tonemap_mode

0

float

tonemap_white

1.0

Color

volumetric_fog_albedo

Color(1, 1, 1, 1)

float

volumetric_fog_ambient_inject

0.0

float

volumetric_fog_anisotropy

0.2

float

volumetric_fog_density

0.05

float

volumetric_fog_detail_spread

2.0

Color

volumetric_fog_emission

Color(0, 0, 0, 1)

float

volumetric_fog_emission_energy

1.0

bool

volumetric_fog_enabled

false

float

volumetric_fog_gi_inject

1.0

float

volumetric_fog_length

64.0

float

volumetric_fog_sky_affect

1.0

float

volumetric_fog_temporal_reprojection_amount

0.9

bool

volumetric_fog_temporal_reprojection_enabled

true

Методы

float

get_glow_level(idx: int) const

void

set_glow_level(idx: int, intensity: float)


Перечисления

enum BGMode: 🔗

BGMode BG_CLEAR_COLOR = 0

Очищает фон, используя чистый цвет, определенный в ProjectSettings.rendering/environment/defaults/default_clear_color.

BGMode BG_COLOR = 1

Очищает фон, используя пользовательский цвет очистки.

BGMode BG_SKY = 2

Отображает заданное пользователем небо на заднем плане.

BGMode BG_CANVAS = 3

Отображает CanvasLayer на заднем плане.

BGMode BG_KEEP = 4

Сохраняет на экране каждый пиксель, нарисованный на заднем плане. Это самый быстрый фоновый режим, но его можно безопасно использовать только в полностью внутренних сценах (без видимого неба или отражений неба). Если включить в сцене, где виден фон, при перемещении камеры будут видны артефакты "призрачного следа".

BGMode BG_CAMERA_FEED = 5

Отображает изображение с камеры в фоновом режиме.

BGMode BG_MAX = 6

Представляет размер перечисления BGMode.


enum AmbientSource: 🔗

AmbientSource AMBIENT_SOURCE_BG = 0

Соберите окружающий свет из любого источника, указанного в качестве фона.

AmbientSource AMBIENT_SOURCE_DISABLED = 1

Отключить окружающее освещение. Это обеспечивает небольшой прирост производительности по сравнению с AMBIENT_SOURCE_SKY.

AmbientSource AMBIENT_SOURCE_COLOR = 2

Укажите конкретный Color для окружающего света. Это обеспечивает небольшое повышение производительности по сравнению с AMBIENT_SOURCE_SKY.

AmbientSource AMBIENT_SOURCE_SKY = 3

Собирает окружающий свет с Sky независимо от фона.


enum ReflectionSource: 🔗

ReflectionSource REFLECTION_SOURCE_BG = 0

Использует фон для отражений.

ReflectionSource REFLECTION_SOURCE_DISABLED = 1

Отключить отражения. Это обеспечивает небольшой прирост производительности по сравнению с другими вариантами.

ReflectionSource REFLECTION_SOURCE_SKY = 2

Использует Sky для отражений независимо от фона.


enum ToneMapper: 🔗

ToneMapper TONE_MAPPER_LINEAR = 0

Не изменяет цветовые данные, что приводит к линейной кривой тональной компрессии, которая неестественно обрезает яркие значения, из-за чего яркое освещение выглядит пересвеченным. Самый простой и быстрый тональный компрессионный фильтр.

ToneMapper TONE_MAPPER_REINHARDT = 1

Простая кривая тональной компрессии, которая сглаживает яркие значения, чтобы предотвратить обрезку. Это приводит к изображению, которое может выглядеть тусклым и малоконтрастным. Медленнее, чем TONE_MAPPER_LINEAR.

Примечание: Если tonemap_white оставить на значении по умолчанию 1.0, TONE_MAPPER_REINHARDT создает изображение, идентичное TONE_MAPPER_LINEAR.

ToneMapper TONE_MAPPER_FILMIC = 2

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

ToneMapper TONE_MAPPER_ACES = 3

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

Примечание: Этот оператор тональной компрессии называется «ACES Fitted» в Godot 3.x.

ToneMapper TONE_MAPPER_AGX = 4

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


enum GlowBlendMode: 🔗

GlowBlendMode GLOW_BLEND_MODE_ADDITIVE = 0

Добавляет эффект свечения в сцену.

GlowBlendMode GLOW_BLEND_MODE_SCREEN = 1

Добавляет эффект свечения к сцене после изменения влияния свечения в зависимости от значения сцены; темные значения будут сильно подвержены влиянию свечения, а светлые — нет. Такой подход позволяет избежать чрезмерного усиления ярких значений из-за эффекта свечения. tonemap_white используется для определения максимального значения сцены, при котором свечение не должно оказывать никакого влияния. Если tonemap_mode установлено на TONE_MAPPER_LINEAR, в качестве максимального значения сцены будет использоваться значение 1.0.

GlowBlendMode GLOW_BLEND_MODE_SOFTLIGHT = 2

Добавляет эффект свечения к тонированному изображению после изменения влияния свечения в зависимости от значения изображения; темные и светлые значения не будут подвержены влиянию свечения, а средние значения будут сильно подвержены его влиянию. Такой подход позволяет избежать чрезмерного увеличения яркости светлых значений из-за эффекта свечения. Свечение будет оказывать наибольшее влияние на значения изображения 0.25 и не будет оказывать никакого влияния при применении к значениям изображения больше 1.0.

GlowBlendMode GLOW_BLEND_MODE_REPLACE = 3

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

GlowBlendMode GLOW_BLEND_MODE_MIX = 4

Смешивает изображение свечения с изображением сцены. Лучше всего использовать с glow_bloom, чтобы избежать затемнения сцены.


enum FogMode: 🔗

FogMode FOG_MODE_EXPONENTIAL = 0

Используйте физическую модель тумана, определяемую в первую очередь плотностью тумана.

FogMode FOG_MODE_DEPTH = 1

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


enum SDFGIYScale: 🔗

SDFGIYScale SDFGI_Y_SCALE_50_PERCENT = 0

Используйте масштаб 50% для SDFGI по оси Y (вертикальной). Ячейки SDFGI будут в два раза короче своей ширины. Это позволяет повысить детализацию GI и уменьшить утечку света при тонких полах и потолках. Обычно это лучший выбор для сцен, в которых не так много вертикальности.

SDFGIYScale SDFGI_Y_SCALE_75_PERCENT = 1

Используйте 75% масштаб для SDFGI на оси Y (вертикальной). Это баланс между 50% и 100% шкалами Y SDFGI.

SDFGIYScale SDFGI_Y_SCALE_100_PERCENT = 2

Используйте масштаб 100% для SDFGI на оси Y (вертикальной). Ячейки SDFGI будут такими же высокими, как и широкими. Обычно это лучший выбор для сцен с высокой вертикальностью. Недостатком является то, что утечка света может стать более заметной при тонких полах и потолках.


Описания свойств

float adjustment_brightness = 1.0 🔗

  • void set_adjustment_brightness(value: float)

  • float get_adjustment_brightness()

Применяет простую регулировку яркости к отрендеренному изображению после тонального отображения. Для регулировки яркости сцены используйте tonemap_exposure, который применяется до тонального отображения и, следовательно, менее подвержен проблемам с яркими цветами. Эффективно только если adjustment_enabled имеет значение true.


Texture adjustment_color_correction 🔗

  • void set_adjustment_color_correction(value: Texture)

  • Texture get_adjustment_color_correction()

Таблица поиска (LUT) Texture2D или Texture3D для встроенной цветокоррекции постобработки. Можно использовать GradientTexture1D для одномерной LUT или Texture3D для более сложной LUT. Действует только если adjustment_enabled имеет значение true.


float adjustment_contrast = 1.0 🔗

  • void set_adjustment_contrast(value: float)

  • float get_adjustment_contrast()

Увеличение значения параметра adjustment_contrast сделает темные значения темнее, а светлые — ярче. Эта простая корректировка применяется к отрендеренному изображению после тонального отображения. При значении больше 1.0 параметр adjustment_contrast может обрезать цвета, которые становятся слишком яркими или слишком темными. Эффективно только в том случае, если параметр adjustment_enabled имеет значение true.


bool adjustment_enabled = false 🔗

  • void set_adjustment_enabled(value: bool)

  • bool is_adjustment_enabled()

Если true, то включаются свойства adjustment_*, предоставляемые этим ресурсом. Если false, то изменения свойств adjustment_* не будут иметь никакого эффекта на визуализированную сцену.


float adjustment_saturation = 1.0 🔗

  • void set_adjustment_saturation(value: float)

  • float get_adjustment_saturation()

Применяет простую корректировку насыщенности к отрендеренному изображению после тонального отображения. Если параметр adjustment_saturation установлен на 0.0, отрендеренное изображение будет полностью преобразовано в изображение в оттенках серого. Действует только если параметр adjustment_enabled имеет значение true.


Color ambient_light_color = Color(0, 0, 0, 1) 🔗

  • void set_ambient_light_color(value: Color)

  • Color get_ambient_light_color()

Color окружающего света. Действует только в том случае, если ambient_light_sky_contribution ниже, чем 1.0 (исключительно).


float ambient_light_energy = 1.0 🔗

  • void set_ambient_light_energy(value: float)

  • float get_ambient_light_energy()

Энергия окружающего света. Чем выше значение, тем сильнее свет. Действует только если ambient_light_sky_contribution ниже, чем 1.0 (исключительно).


float ambient_light_sky_contribution = 1.0 🔗

  • void set_ambient_light_sky_contribution(value: float)

  • float get_ambient_light_sky_contribution()

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

Примечание: ambient_light_sky_contribution внутренне ограничен между 0.0 и 1.0 (включительно).


AmbientSource ambient_light_source = 0 🔗

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


int background_camera_feed_id = 1 🔗

  • void set_camera_feed_id(value: int)

  • int get_camera_feed_id()

Идентификатор камеры, который будет отображаться на заднем плане.


int background_canvas_max_layer = 0 🔗

  • void set_canvas_max_layer(value: int)

  • int get_canvas_max_layer()

Максимальный идентификатор слоя для отображения. Действует только при использовании фонового режима BG_CANVAS.


Color background_color = Color(0, 0, 0, 1) 🔗

  • void set_bg_color(value: Color)

  • Color get_bg_color()

Color, отображаемый для чистых областей сцены. Действует только при использовании фонового режима BG_COLOR.


float background_energy_multiplier = 1.0 🔗

  • void set_bg_energy_multiplier(value: float)

  • float get_bg_energy_multiplier()

Множитель для фоновой энергии. Увеличьте, чтобы сделать фон ярче, уменьшите, чтобы сделать фон тусклее.


float background_intensity = 30000.0 🔗

  • void set_bg_intensity(value: float)

  • float get_bg_intensity()

Яркость фона измеряется в нитах (nits) (кандела на квадратный метр). Используется только при включенном ProjectSettings.rendering/lights_and_shadows/use_physical_light_units. Значение по умолчанию примерно соответствует небу в полдень.


BGMode background_mode = 0 🔗

  • void set_background(value: BGMode)

  • BGMode get_background()

Фоновый режим.


float fog_aerial_perspective = 0.0 🔗

  • void set_fog_aerial_perspective(value: float)

  • float get_fog_aerial_perspective()

Если установлено выше 0.0 (исключительно), смешивается между цветом тумана и цветом фона Sky, как считано из кубической карты сияния. Это имеет небольшие затраты производительности, если установлено выше 0.0. Необходимо установить background_mode на BG_SKY.

Это полезно для имитации воздушной перспективы в больших сценах с туманом низкой плотности. Однако это не очень полезно для тумана высокой плотности, так как небо будет просвечивать. Если установлено значение 1.0, цвет тумана полностью берется из Sky. Если установлено значение 0.0, воздушная перспектива отключена.

Обратите внимание, что это не выборка Sky напрямую, а выборка кубической карты сияния. Кубическая карта выбирается на уровне mip-карты в зависимости от глубины визуализированного пикселя; чем дальше, тем выше разрешение выбираемой mip-карты. Это приводит к тому, что фактический цвет становится размытой версией неба, с большей размытостью ближе к камере. Самое высокое разрешение mip-карты используется на глубине Camera3D.far.


float fog_density = 0.01 🔗

  • void set_fog_density(value: float)

  • float get_fog_density()

Плотность тумана, которая будет использоваться. Это демонстрируется по-разному в зависимости от выбранного режима fog_mode:

Режим экспоненциального тумана: Более высокие значения приводят к более плотному туману. Рендеринг тумана экспоненциальный, как в реальной жизни.

Режим глубинного тумана: Максимальная интенсивность глубокого тумана, эффект будет проявляться на расстоянии (относительно камеры). При 1.0 туман полностью скроет сцену, при 0.0 туман не будет виден.


float fog_depth_begin = 10.0 🔗

  • void set_fog_depth_begin(value: float)

  • float get_fog_depth_begin()

Начальное расстояние глубины тумана от камеры. Доступно только когда fog_mode установлен на FOG_MODE_DEPTH.


float fog_depth_curve = 1.0 🔗

  • void set_fog_depth_curve(value: float)

  • float get_fog_depth_curve()

Кривая интенсивности глубины тумана. Ряд предустановок доступен в Инспекторе, если щелкнуть правой кнопкой мыши по кривой. Доступно только когда fog_mode установлен на FOG_MODE_DEPTH.


float fog_depth_end = 100.0 🔗

  • void set_fog_depth_end(value: float)

  • float get_fog_depth_end()

Конечное расстояние глубины тумана от камеры. Если это значение установлено на 0, оно будет равно значению Camera3D.far текущей камеры. Доступно только когда fog_mode установлено на FOG_MODE_DEPTH.


bool fog_enabled = false 🔗

  • void set_fog_enabled(value: bool)

  • bool is_fog_enabled()

Если true, эффекты тумана включены.


float fog_height = 0.0 🔗

  • void set_fog_height(value: float)

  • float get_fog_height()

Высота, на которой начинается эффект высотного тумана.


float fog_height_density = 0.0 🔗

  • void set_fog_height_density(value: float)

  • float get_fog_height_density()

Плотность, используемая для увеличения тумана по мере уменьшения высоты. Чтобы туман увеличивался по мере увеличения высоты, используйте отрицательное значение.


Color fog_light_color = Color(0.518, 0.553, 0.608, 1) 🔗

  • void set_fog_light_color(value: Color)

  • Color get_fog_light_color()

Цвет тумана.


float fog_light_energy = 1.0 🔗

  • void set_fog_light_energy(value: float)

  • float get_fog_light_energy()

Яркость тумана. Более высокие значения дают более яркий туман.


FogMode fog_mode = 0 🔗

Режим тумана.


float fog_sky_affect = 1.0 🔗

  • void set_fog_sky_affect(value: float)

  • float get_fog_sky_affect()

Коэффициент, который следует использовать при воздействии на небо необъемным туманом. 1.0 означает, что туман может полностью скрыть небо. Более низкие значения уменьшают влияние тумана на рендеринг неба, а 0.0 вообще не влияет на рендеринг неба.

Примечание: fog_sky_affect не имеет визуального эффекта, если fog_aerial_perspective равен 1.0.


float fog_sun_scatter = 0.0 🔗

  • void set_fog_sun_scatter(value: float)

  • float get_fog_sun_scatter()

Если установлено выше 0.0, то направленный свет сцены отображается в цвете тумана в зависимости от угла обзора. Это можно использовать для создания впечатления, что солнце «проникает» сквозь туман.


GlowBlendMode glow_blend_mode = 1 🔗

Режим смешивания свечения.

Примечание: Рендерер совместимости всегда использует GLOW_BLEND_MODE_SCREEN, и glow_blend_mode не будет иметь никакого эффекта.


float glow_bloom = 0.0 🔗

  • void set_glow_bloom(value: float)

  • float get_glow_bloom()

Интенсивность свечения. Если установлено значение выше 0, это сделает свечение видимым в областях темнее, чем glow_hdr_threshold.


bool glow_enabled = false 🔗

  • void set_glow_enabled(value: bool)

  • bool is_glow_enabled()

Если true, эффект свечения включается. Это имитирует реальную атмосферу и поведение глаз/камеры, заставляя яркие пиксели распространяться на окружающие пиксели.

Примечание: При использовании метода рендеринга для мобильных устройств эффект свечения выглядит иначе из-за меньшего динамического диапазона, доступного в этом методе.

Примечание: При использовании метода рендеринга для совместимости эффект свечения использует другую реализацию, при которой некоторые свойства недоступны и скрыты от инспектора: glow_levels/*, glow_normalized, glow_strength, glow_blend_mode, glow_mix, glow_map и glow_map_strength. Эта реализация оптимизирована для работы на устройствах низкого класса и, как следствие, менее гибкая.


float glow_hdr_luminance_cap = 12.0 🔗

  • void set_glow_hdr_luminance_cap(value: float)

  • float get_glow_hdr_luminance_cap()

Верхний порог свечения HDR. Области ярче этого порога будут ограничены для эффекта свечения.


float glow_hdr_scale = 2.0 🔗

  • void set_glow_hdr_bleed_scale(value: float)

  • float get_glow_hdr_bleed_scale()

Сглаживает переход между значениями, находящимися ниже и выше glow_hdr_threshold, уменьшая интенсивность свечения, создаваемого значениями, близкими к glow_hdr_threshold. Значения выше glow_hdr_threshold + glow_hdr_scale не будут иметь такого уменьшения свечения.


float glow_hdr_threshold = 1.0 🔗

  • void set_glow_hdr_bleed_threshold(value: float)

  • float get_glow_hdr_bleed_threshold()

Нижний порог свечения HDR. При использовании метода рендеринга Mobile (который поддерживает только более низкий динамический диапазон до 2.0) может потребоваться, чтобы это значение было ниже 1.0, чтобы свечение было видимым. Значение 0.9 хорошо подходит в этом случае. Это значение также необходимо уменьшить ниже 1.0 при использовании свечения в 2D, поскольку 2D-рендеринг выполняется в SDR.


float glow_intensity = 0.3 🔗

  • void set_glow_intensity(value: float)

  • float get_glow_intensity()

Общий множитель яркости, применяемый к эффекту свечения непосредственно перед его смешиванием со сценой. При использовании метода рендеринга для мобильных устройств (который поддерживает только более низкий динамический диапазон до 2.0) его следует увеличить до 1.5 для компенсации.


float glow_levels/1 = 0.0 🔗

  • void set_glow_level(idx: int, intensity: float)

  • float get_glow_level(idx: int) const

Интенсивность 1-го уровня свечения. Это самый «локальный» уровень (наименее размытый).

Примечание: glow_levels/1 не имеет эффекта при использовании метода рендеринга Compatibility, поскольку этот метод рендеринга использует более простую реализацию свечения, оптимизированную для устройств низкого уровня.


float glow_levels/2 = 0.8 🔗

  • void set_glow_level(idx: int, intensity: float)

  • float get_glow_level(idx: int) const

Интенсивность 2-го уровня свечения.

Примечание: glow_levels/2 не имеет эффекта при использовании метода рендеринга Compatibility, поскольку этот метод рендеринга использует более простую реализацию свечения, оптимизированную для устройств начального уровня.


float glow_levels/3 = 0.4 🔗

  • void set_glow_level(idx: int, intensity: float)

  • float get_glow_level(idx: int) const

Интенсивность 3-го уровня свечения.

Примечание: glow_levels/3 не имеет эффекта при использовании метода рендеринга Compatibility, поскольку этот метод рендеринга использует более простую реализацию свечения, оптимизированную для устройств начального уровня.


float glow_levels/4 = 0.1 🔗

  • void set_glow_level(idx: int, intensity: float)

  • float get_glow_level(idx: int) const

Интенсивность 4-го уровня свечения.

Примечание: glow_levels/4 не имеет эффекта при использовании метода рендеринга Compatibility, поскольку этот метод рендеринга использует более простую реализацию свечения, оптимизированную для устройств низкого уровня.


float glow_levels/5 = 0.0 🔗

  • void set_glow_level(idx: int, intensity: float)

  • float get_glow_level(idx: int) const

Интенсивность 5-го уровня свечения.

Примечание: glow_levels/5 не имеет эффекта при использовании метода рендеринга Compatibility, поскольку этот метод рендеринга использует более простую реализацию свечения, оптимизированную для бюджетных устройств.


float glow_levels/6 = 0.0 🔗

  • void set_glow_level(idx: int, intensity: float)

  • float get_glow_level(idx: int) const

Интенсивность 6-го уровня свечения.

Примечание: glow_levels/6 не имеет эффекта при использовании метода рендеринга Compatibility, поскольку этот метод рендеринга использует более простую реализацию свечения, оптимизированную для устройств начального уровня.


float glow_levels/7 = 0.0 🔗

  • void set_glow_level(idx: int, intensity: float)

  • float get_glow_level(idx: int) const

Интенсивность 7-го уровня свечения. Это самый «глобальный» уровень (самый размытый).

Примечание: glow_levels/7 не имеет эффекта при использовании метода рендеринга Compatibility, поскольку этот метод рендеринга использует более простую реализацию свечения, оптимизированную для устройств начального уровня.


Texture glow_map 🔗

Текстура, которая должна использоваться в качестве карты свечения для умножения результирующего цвета свечения в соответствии с glow_map_strength. Это можно использовать для создания эффекта «грязи линзы». Цветовые каналы RGB текстуры используются для модуляции, но альфа-канал игнорируется.

Примечание: Текстура будет растянута, чтобы соответствовать экрану. Поэтому рекомендуется использовать текстуру с соотношением сторон, соответствующим базовому соотношению сторон вашего проекта (обычно 16:9).

Примечание: glow_map не оказывает никакого эффекта при использовании метода рендеринга Compatibility, поскольку этот метод рендеринга использует более простую реализацию свечения, оптимизированную для устройств низкого уровня.


float glow_map_strength = 0.8 🔗

  • void set_glow_map_strength(value: float)

  • float get_glow_map_strength()

Насколько сильное влияние glow_map должно оказывать на общий эффект свечения. Сила 0.0 означает, что карта свечения не оказывает никакого влияния, в то время как сила 1.0 означает, что карта свечения оказывает полное влияние.

Примечание: Если карта свечения имеет черные области, значение 1.0 также может полностью отключить эффект свечения в определенных областях экрана.

Примечание: glow_map_strength не оказывает никакого влияния при использовании метода рендеринга Compatibility, поскольку этот метод рендеринга использует более простую реализацию свечения, оптимизированную для устройств низкого уровня.


float glow_mix = 0.05 🔗

  • void set_glow_mix(value: float)

  • float get_glow_mix()

При использовании GLOW_BLEND_MODE_MIX glow_blend_mode это контролирует, насколько исходное изображение смешивается со слоем свечения. Значение 0.0 делает рендеринг свечения невидимым, тогда как значение 1.0 эквивалентно GLOW_BLEND_MODE_REPLACE.

Примечание: glow_mix не оказывает никакого эффекта при использовании метода рендеринга Compatibility, поскольку этот метод рендеринга использует более простую реализацию свечения, оптимизированную для устройств низкого уровня.


bool glow_normalized = false 🔗

  • void set_glow_normalized(value: bool)

  • bool is_glow_normalized()

Если true, уровни свечения будут нормализованы так, чтобы их суммарные интенсивности равнялись 1.0.

Примечание: glow_normalized не имеет эффекта при использовании метода рендеринга Compatibility, поскольку этот метод рендеринга использует более простую реализацию свечения, оптимизированную для устройств начального уровня.


float glow_strength = 1.0 🔗

  • void set_glow_strength(value: float)

  • float get_glow_strength()

Величина, используемая при размытии по экрану для создания эффекта свечения. Она влияет на расстояние и интенсивность размытия. При использовании метода рендеринга для мобильных устройств её следует увеличить, чтобы компенсировать меньший динамический диапазон.

Примечание: Параметр glow_strength не оказывает влияния при использовании метода рендеринга «Совместимость», поскольку этот метод использует более простую реализацию эффекта свечения, оптимизированную для устройств низкого класса.


ReflectionSource reflected_light_source = 0 🔗

Отражённый (зеркальный) источник света.


float sdfgi_bounce_feedback = 0.5 🔗

  • void set_sdfgi_bounce_feedback(value: float)

  • float get_sdfgi_bounce_feedback()

Множитель энергии, применяемый к свету каждый раз, когда он отражается от поверхности при использовании SDFGI. Значения больше 0.0 будут имитировать множественные отскоки, что приведет к более реалистичному виду. Увеличение sdfgi_bounce_feedback обычно не влияет на производительность. См. также sdfgi_energy.

Примечание: Значения больше 0.5 могут вызывать бесконечные циклы обратной связи и их следует избегать в сценах с яркими материалами.

Примечание: Если sdfgi_bounce_feedback равен 0.0, непрямое освещение не будет представлено в отражениях, поскольку свет отразится только один раз.


float sdfgi_cascade0_distance = 12.8 🔗

  • void set_sdfgi_cascade0_distance(value: float)

  • float get_sdfgi_cascade0_distance()

Примечание: Это свойство связано с sdfgi_min_cell_size и sdfgi_max_distance. Изменение его значения автоматически изменит и эти свойства.


int sdfgi_cascades = 4 🔗

  • void set_sdfgi_cascades(value: int)

  • int get_sdfgi_cascades()

Число каскадов для использования в SDFGI (от 1 до 8). Большее число каскадов позволяет отображать SDFGI дальше, сохраняя детали вблизи, за счет производительности. При использовании SDFGI на мелкомасштабных уровнях sdfgi_cascades часто можно уменьшить между 1 и 4 для повышения производительности.


bool sdfgi_enabled = false 🔗

  • void set_sdfgi_enabled(value: bool)

  • bool is_sdfgi_enabled()

Если true, включает глобальное освещение поля расстояний со знаком для сеток, у которых GeometryInstance3D.gi_mode установлен на GeometryInstance3D.GI_MODE_STATIC. SDFGI — это метод глобального освещения в реальном времени, который хорошо работает с процедурно сгенерированными и созданными пользователем уровнями, в том числе в ситуациях, когда геометрия создается во время игры. Поле расстояний со знаком автоматически генерируется вокруг камеры по мере ее движения. Поддерживается динамическое освещение, но динамические окклюдеры и излучающие поверхности — нет.

Примечание: SDFGI поддерживается только в методе рендеринга Forward+, а не в Mobile или Compatibility.

Производительность: SDFGI относительно требователен к графическому процессору и не подходит для аппаратного обеспечения низкого уровня, такого как интегрированная графика (вместо этого рассмотрите LightmapGI). Чтобы улучшить производительность SDFGI, включите ProjectSettings.rendering/global_illumination/gi/use_half_resolution в настройках проекта.

Примечание: Сетки должны иметь достаточно толстые стенки, чтобы избежать утечек света (избегайте односторонних стен). Для внутренних уровней заключите геометрию уровня в достаточно большой ящик и соедините петли, чтобы закрыть сетку.


float sdfgi_energy = 1.0 🔗

  • void set_sdfgi_energy(value: float)

  • float get_sdfgi_energy()

Множитель энергии для использования в SDFGI. Более высокие значения приведут к более яркому непрямому освещению и отражениям. См. также sdfgi_bounce_feedback.


float sdfgi_max_distance = 204.8 🔗

  • void set_sdfgi_max_distance(value: float)

  • float get_sdfgi_max_distance()

Максимальное расстояние, на котором виден SDFGI. За пределами этого расстояния в качестве резерва будет использоваться окружающее освещение или другие источники GI, такие как ReflectionProbe.

Примечание: Это свойство связано с sdfgi_min_cell_size и sdfgi_cascade0_distance. Изменение его значения автоматически изменит и эти свойства.


float sdfgi_min_cell_size = 0.2 🔗

  • void set_sdfgi_min_cell_size(value: float)

  • float get_sdfgi_min_cell_size()

Размер ячейки, используемый для ближайшего каскада SDFGI (в 3D-единицах). Более низкие значения позволяют SDFGI быть более точным вблизи, за счет того, что обновления SDFGI становятся более требовательными. Это может вызвать заикание, когда камера быстро движется. Более высокие значения позволяют SDFGI охватывать большую площадь, а также снижают влияние обновлений SDFGI на производительность.

Примечание: Это свойство связано с sdfgi_max_distance и sdfgi_cascade0_distance. Изменение его значения автоматически изменит и эти свойства.


float sdfgi_normal_bias = 1.1 🔗

  • void set_sdfgi_normal_bias(value: float)

  • float get_sdfgi_normal_bias()

Нормальное смещение для использования в зондах SDFGI. Увеличение этого значения может уменьшить видимые артефакты полос на наклонных поверхностях за счет увеличения утечки света.


float sdfgi_probe_bias = 1.1 🔗

  • void set_sdfgi_probe_bias(value: float)

  • float get_sdfgi_probe_bias()

Постоянное смещение для использования в зондах SDFGI. Увеличение этого значения может уменьшить видимые артефакты полос на наклонных поверхностях за счет увеличения утечки света.


bool sdfgi_read_sky_light = true 🔗

  • void set_sdfgi_read_sky_light(value: bool)

  • bool is_sdfgi_reading_sky_light()

Если true, SDFGI учитывает освещение окружающей среды. Для внутренних сцен это должно быть установлено на false.


bool sdfgi_use_occlusion = false 🔗

  • void set_sdfgi_use_occlusion(value: bool)

  • bool is_sdfgi_using_occlusion()

Если true, SDFGI использует подход обнаружения окклюзии для уменьшения утечки света. Однако окклюзия может привести к появлению темных пятен в определенных местах, что может быть нежелательным в сценах, в основном происходящих на открытом воздухе. sdfgi_use_occlusion влияет на производительность и должен быть включен только при необходимости.


SDFGIYScale sdfgi_y_scale = 1 🔗

Масштаб Y для использования с ячейками SDFGI. Более низкие значения приведут к тому, что ячейки SDFGI будут упакованы более плотно по оси Y. Это используется для баланса между качеством и охватом большого количества вертикальной поверхности. sdfgi_y_scale следует устанавливать в зависимости от того, насколько вертикальна ваша сцена (и насколько быстро ваша камера может двигаться по оси Y).


Sky sky 🔗

  • void set_sky(value: Sky)

  • Sky get_sky()

Ресурс Sky, используемый для этого Environment-а.


float sky_custom_fov = 0.0 🔗

  • void set_sky_custom_fov(value: float)

  • float get_sky_custom_fov()

Если установлено значение больше 0.0, переопределяет поле зрения, используемое для рендеринга неба. Если установлено значение 0.0, то же поле зрения, что и у текущей Camera3D, используется для рендеринга неба.


Vector3 sky_rotation = Vector3(0, 0, 0) 🔗

Поворот, используемый для рендеринга неба.


float ssao_ao_channel_affect = 0.0 🔗

  • void set_ssao_ao_channel_affect(value: float)

  • float get_ssao_ao_channel_affect()

Интенсивность экранного пространства окружающего света на материалах, для которых определена текстура AO. Значения выше 0 сделают эффект SSAO видимым в областях, затемненных текстурами AO.


float ssao_detail = 0.5 🔗

  • void set_ssao_detail(value: float)

  • float get_ssao_detail()

Устанавливает силу дополнительного уровня детализации для эффекта экранного пространства Ambient Occlusion. Высокое значение делает передачу деталей более заметной, но может способствовать появлению алиасинга в вашем конечном изображении.


bool ssao_enabled = false 🔗

  • void set_ssao_enabled(value: bool)

  • bool is_ssao_enabled()

Если true, эффект экранного затенения (SAM) включается. Он затемняет углы и углубления объектов, имитируя рассеянный свет, не достигающий всего объекта, как в реальной жизни. Это хорошо работает для небольших динамических объектов, но запеченное освещение или текстуры затенения лучше справятся с отображением затенения на больших статических объектах. Godot использует форму SSAO, называемую адаптивным экранным затенением (Adaptive Screen Space Ambient Occlusion), которая сама по себе является формой затенения на основе горизонта (Horizon Based Ambient Occlusion).

Примечание: SSAO поддерживается только в методах рендеринга Forward+ и Compatibility, а не на мобильных устройствах.


float ssao_horizon = 0.06 🔗

  • void set_ssao_horizon(value: float)

  • float get_ssao_horizon()

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


float ssao_intensity = 2.0 🔗

  • void set_ssao_intensity(value: float)

  • float get_ssao_intensity()

Первичная интенсивность экранного пространства окружающего затенения. Действует как множитель для эффекта экранного пространства окружающего затенения. Более высокое значение приводит к более темному затенению.


float ssao_light_affect = 0.0 🔗

  • void set_ssao_direct_light_affect(value: float)

  • float get_ssao_direct_light_affect()

Интенсивность экранного пространства окружающего света в прямом свете. В реальной жизни окружающее затенение применяется только к непрямому свету, что означает, что его эффекты не видны в прямом свете. Значения выше 0 сделают эффект SSAO видимым в прямом свете.


float ssao_power = 1.5 🔗

  • void set_ssao_power(value: float)

  • float get_ssao_power()

Распределение окклюзии. Более высокое значение приводит к более темной окклюзии, похожей на ssao_intensity, но с более резким спадом.


float ssao_radius = 1.0 🔗

  • void set_ssao_radius(value: float)

  • float get_ssao_radius()

Расстояние, на котором объекты могут закрывать друг друга при расчете экранного пространства окружающего затенения. Более высокие значения приведут к затенению на большем расстоянии за счет производительности и качества.


float ssao_sharpness = 0.98 🔗

  • void set_ssao_sharpness(value: float)

  • float get_ssao_sharpness()

Степень, в которой эффекту экранного пространства Ambient Occlusion разрешено размывать края объектов. Слишком большое значение приведет к алиасингу по краям объектов. Слишком низкое значение сделает края объектов размытыми.


bool ssil_enabled = false 🔗

  • void set_ssil_enabled(value: bool)

  • bool is_ssil_enabled()

Если true, эффект непрямого освещения в экранном пространстве включен. Непрямое освещение в экранном пространстве — это форма непрямого освещения, которая позволяет рассеянному свету отражаться между близлежащими объектами. Непрямое освещение в экранном пространстве работает очень похоже на окклюзию окружающего пространства в том смысле, что оно влияет только на ограниченный диапазон. Оно предназначено для использования вместе с формой надлежащего глобального освещения, например, SDFGI или VoxelGI. Непрямое освещение в экранном пространстве не зависит от Light3D.light_indirect_energy отдельного источника света.

Примечание: SSIL поддерживается только в методе рендеринга Forward+, а не в Mobile или Compatibility.


float ssil_intensity = 1.0 🔗

  • void set_ssil_intensity(value: float)

  • float get_ssil_intensity()

Множитель яркости для эффекта непрямого освещения экранного пространства. Более высокое значение приведет к более яркому свету.


float ssil_normal_rejection = 1.0 🔗

  • void set_ssil_normal_rejection(value: float)

  • float get_ssil_normal_rejection()

Величина нормального отклонения, используемая при расчете непрямого освещения экранного пространства. Нормальное отклонение использует нормаль заданной точки выборки для отклонения выборок, которые обращены в сторону от текущего пикселя. Нормальное отклонение необходимо для предотвращения утечки света, когда освещена только одна сторона объекта. Однако нормальное отклонение можно отключить, если утечка света желательна, например, когда сцена в основном содержит излучающие объекты, которые излучают свет с лиц, которые не видны из камеры.


float ssil_radius = 5.0 🔗

  • void set_ssil_radius(value: float)

  • float get_ssil_radius()

Расстояние, которое может пройти отраженный свет при использовании эффекта непрямого освещения экранного пространства. Большее значение приведет к тому, что свет будет отражаться дальше в сцене, но может привести к артефактам недостаточной выборки, которые выглядят как длинные шипы, окружающие источники света.


float ssil_sharpness = 0.98 🔗

  • void set_ssil_sharpness(value: float)

  • float get_ssil_sharpness()

Степень, в которой эффекту непрямого освещения в экранном пространстве разрешено размывать края объектов. Слишком большое значение приведет к сглаживанию краев объектов. Слишком низкое значение сделает края объектов размытыми.


float ssr_depth_tolerance = 0.5 🔗

  • void set_ssr_depth_tolerance(value: float)

  • float get_ssr_depth_tolerance()

Допуск по глубине для отражений в экранном пространстве.


bool ssr_enabled = false 🔗

  • void set_ssr_enabled(value: bool)

  • bool is_ssr_enabled()

Если true, отражения в экранном пространстве включены. Отражения в экранном пространстве точнее отражений от VoxelGI или ReflectionProbe, но медленнее и не могут отражать поверхности, закрытые другими.

Примечание: SSR поддерживается только в методе рендеринга Forward+, а не в Mobile или Compatibility.

Примечание: SSR не поддерживается на окнах просмотра с прозрачным фоном (где Viewport.transparent_bg имеет значение true).


float ssr_fade_in = 0.15 🔗

  • void set_ssr_fade_in(value: float)

  • float get_ssr_fade_in()

Расстояние постепенного появления для отражений в экранном пространстве. Влияет на область от отраженного материала до отражения в экранном пространстве. Допустимы только положительные значения (отрицательные значения будут ограничены 0.0).


float ssr_fade_out = 2.0 🔗

  • void set_ssr_fade_out(value: float)

  • float get_ssr_fade_out()

Расстояние затухания для отражений в экранном пространстве. Влияет на область от отражения в экранном пространстве до "глобального" отражения. Допустимы только положительные значения (отрицательные значения будут ограничены 0.0).


int ssr_max_steps = 64 🔗

  • void set_ssr_max_steps(value: int)

  • int get_ssr_max_steps()

Максимальное количество шагов для отражений в экранном пространстве. Более высокие значения медленнее.


float tonemap_agx_contrast = 1.25 🔗

  • void set_tonemap_agx_contrast(value: float)

  • float get_tonemap_agx_contrast()

Увеличение параметра tonemap_agx_contrast сделает темные значения темнее, а светлые — ярче. Это обеспечит более высокое качество результата, чем параметр adjustment_contrast, без дополнительных затрат производительности, но доступно только при использовании тонального преобразователя TONE_MAPPER_AGX.


float tonemap_agx_white = 16.29 🔗

  • void set_tonemap_agx_white(value: float)

  • float get_tonemap_agx_white()

Опорное значение белого для тонального отображения, указывающее, где находится яркий белый цвет в шкале значений, предоставляемых тональному преобразователю. Для фотореалистичного освещения рекомендуется установить tonemap_agx_white не менее чем на 6.0. Более высокие значения приводят к меньшему количеству пересвеченных участков, но могут снизить контрастность сцены. tonemap_agx_white аналогичен tonemap_white, но эффективен только с тональным преобразователем TONE_MAPPER_AGX. См. также tonemap_exposure.

Примечание: При использовании рендерера Mobile с отключенным Viewport.use_hdr_2d значение tonemap_agx_white игнорируется, и вместо него всегда будет использоваться значение белого 2.0.


float tonemap_exposure = 1.0 🔗

  • void set_tonemap_exposure(value: float)

  • float get_tonemap_exposure()

Регулирует яркость значений до того, как они будут предоставлены преобразователю тонов. Более высокие значения tonemap_exposure приводят к более яркому изображению. См. также tonemap_white.

Примечание: Значения, предоставленные преобразователю тонов, также будут умножены на 2.0 и 1.8 для TONE_MAPPER_FILMIC и TONE_MAPPER_ACES соответственно, чтобы получить такую же видимую яркость, как TONE_MAPPER_LINEAR.


ToneMapper tonemap_mode = 0 🔗

Режим тональной компрессии для использования. Тональная компрессия — это процесс, который «конвертирует» значения HDR для их отображения на дисплее LDR. (Godot пока не поддерживает отображение на дисплеях HDR.)


float tonemap_white = 1.0 🔗

  • void set_tonemap_white(value: float)

  • float get_tonemap_white()

Опорное значение белого цвета для тонального отображения, указывающее, где находится яркий белый цвет в шкале значений, предоставляемых тональному преобразователю. Для фотореалистичного освещения рекомендуется установить tonemap_white не менее чем на 6.0. Более высокие значения приводят к меньшему количеству пересвеченных участков, но могут снизить контрастность сцены. tonemap_agx_white будет использоваться вместо него при использовании тонального преобразователя TONE_MAPPER_AGX. См. также tonemap_exposure.

Примечание: tonemap_white необходимо установить на 2.0 или ниже в мобильном рендерере для получения ярких изображений.


Color volumetric_fog_albedo = Color(1, 1, 1, 1) 🔗

  • void set_volumetric_fog_albedo(value: Color)

  • Color get_volumetric_fog_albedo()

Color объемного тумана при взаимодействии с источниками света. Дымка и туман имеют альбедо, близкое к Color(1, 1, 1, 1), тогда как дым имеет более темное альбедо.


float volumetric_fog_ambient_inject = 0.0 🔗

  • void set_volumetric_fog_ambient_inject(value: float)

  • float get_volumetric_fog_ambient_inject()

Масштабирует интенсивность окружающего света, используемого в объемном тумане. Значение 0.0 означает, что окружающий свет не будет влиять на объемный туман. volumetric_fog_ambient_inject имеет небольшие затраты производительности, если установлено значение выше 0.0.

Примечание: Это не имеет видимого эффекта, если volumetric_fog_density равно 0.0 или если volumetric_fog_albedo — полностью черный цвет.


float volumetric_fog_anisotropy = 0.2 🔗

  • void set_volumetric_fog_anisotropy(value: float)

  • float get_volumetric_fog_anisotropy()

Направление рассеянного света, проходящего через объемный туман. Значение, близкое к 1.0, означает, что почти весь свет рассеивается вперед. Значение, близкое к 0.0, означает, что свет рассеивается одинаково во всех направлениях. Значение, близкое к -1.0, означает, что свет рассеивается в основном назад. Туман и дымка рассеивают свет немного вперед, в то время как дым рассеивает свет одинаково во всех направлениях.


float volumetric_fog_density = 0.05 🔗

  • void set_volumetric_fog_density(value: float)

  • float get_volumetric_fog_density()

Базовая экспоненциальная плотность объемного тумана. Установите ее на самую низкую плотность, которую вы хотите иметь глобально. FogVolumes можно использовать для добавления или вычитания из этой плотности в определенных областях. Рендеринг тумана является экспоненциальным, как в реальной жизни.

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

Чтобы объемный туман работал как решение объемного освещения, установите volumetric_fog_density на самое низкое ненулевое значение (0.0001), а затем увеличьте Light3D.light_volumetric_fog_energy источников света до значений между 10000 и 100000, чтобы компенсировать очень низкую плотность.


float volumetric_fog_detail_spread = 2.0 🔗

  • void set_volumetric_fog_detail_spread(value: float)

  • float get_volumetric_fog_detail_spread()

Распределение размера по длине буфера фрокселей. Более высокое значение сжимает фроксели ближе к камере и размещает больше деталей ближе к камере.


Color volumetric_fog_emission = Color(0, 0, 0, 1) 🔗

  • void set_volumetric_fog_emission(value: Color)

  • Color get_volumetric_fog_emission()

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


float volumetric_fog_emission_energy = 1.0 🔗

  • void set_volumetric_fog_emission_energy(value: float)

  • float get_volumetric_fog_emission_energy()

Яркость света, излучаемого объемным туманом.


bool volumetric_fog_enabled = false 🔗

  • void set_volumetric_fog_enabled(value: bool)

  • bool is_volumetric_fog_enabled()

Включает эффект объемного тумана. Объемный туман использует выровненный по экрану буфер фрокселя для расчета точного объемного рассеивания на коротких и средних расстояниях. Объемный туман взаимодействует с FogVolume и источниками света для расчета локализованного и глобального тумана. Объемный туман использует модель одиночного рассеяния PBR, основанную на затухании, рассеивании и излучении, которую он представляет пользователям как плотность, альбедо и излучение.

Примечание: Объемный туман поддерживается только в методе рендеринга Forward+, а не в Mobile или Compatibility.


float volumetric_fog_gi_inject = 1.0 🔗

  • void set_volumetric_fog_gi_inject(value: float)

  • float get_volumetric_fog_gi_inject()

Масштабирует силу глобального освещения, используемого в цвете альбедо объемного тумана. Значение 0.0 означает, что глобальное освещение не повлияет на объемный туман. volumetric_fog_gi_inject имеет небольшие затраты производительности, если установлено выше 0.0.

Примечание: Это не имеет видимого эффекта, если volumetric_fog_density равно 0.0 или если volumetric_fog_albedo — полностью черный цвет.

Примечание: При использовании volumetric_fog_gi_inject учитываются только VoxelGI и SDFGI (sdfgi_enabled). Глобальное освещение от LightmapGI, ReflectionProbe и SSIL (см. ssil_enabled) будет игнорироваться объемным туманом.


float volumetric_fog_length = 64.0 🔗

  • void set_volumetric_fog_length(value: float)

  • float get_volumetric_fog_length()

Расстояние, на котором вычисляется объемный туман. Увеличьте, чтобы вычислить туман на большем расстоянии, уменьшите, чтобы добавить больше деталей, когда большой диапазон не нужен. Для наилучшего качества тумана держите это значение как можно ниже. См. также ProjectSettings.rendering/environment/volumetric_fog/volume_depth.


float volumetric_fog_sky_affect = 1.0 🔗

  • void set_volumetric_fog_sky_affect(value: float)

  • float get_volumetric_fog_sky_affect()

Коэффициент, используемый при воздействии на небо объемным туманом. 1.0 означает, что объемный туман может полностью скрыть небо. Более низкие значения уменьшают влияние объемного тумана на рендеринг неба, а 0.0 вообще не влияют на рендеринг неба.

Примечание: volumetric_fog_sky_affect также влияет на FogVolume, даже если volumetric_fog_density равен 0.0. Если вы заметили, что FogVolume исчезают при взгляде на небо, установите volumetric_fog_sky_affect на 1.0.


float volumetric_fog_temporal_reprojection_amount = 0.9 🔗

  • void set_volumetric_fog_temporal_reprojection_amount(value: float)

  • float get_volumetric_fog_temporal_reprojection_amount()

Величина, на которую смешивается последний кадр с текущим кадром. Большее число приводит к более плавному объемному туману, но значительно ухудшает "ореолы". Меньшее значение уменьшает ореолы, но может привести к тому, что временное дрожание кадра станет видимым.


bool volumetric_fog_temporal_reprojection_enabled = true 🔗

  • void set_volumetric_fog_temporal_reprojection_enabled(value: bool)

  • bool is_volumetric_fog_temporal_reprojection_enabled()

Включает временное перепроецирование в объемном тумане. Временное перепроецирование смешивает объемный туман текущего кадра с объемным туманом последнего кадра, чтобы сгладить неровные края. Затраты на производительность минимальны; однако это приводит к «ореолу» перемещения FogVolume и Light3D и оставлению за ними следа. Когда включено временное перепроецирование, старайтесь избегать слишком быстрого перемещения FogVolume или Light3D. Кратковременные динамические световые эффекты должны иметь Light3D.light_volumetric_fog_energy, установленный на 0.0, чтобы избежать ореола.


Описания метода

float get_glow_level(idx: int) const 🔗

Возвращает интенсивность уровня свечения idx.


void set_glow_level(idx: int, intensity: float) 🔗

Устанавливает интенсивность уровня свечения idx. Значение выше 0.0 включает уровень. Каждый уровень зависит от предыдущего уровня. Это означает, что включение более высоких уровней свечения замедлит рендеринг эффекта свечения, даже если предыдущие уровни не включены.