CameraAttributesPhysical

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

Настройки камеры на основе физики.

Описание

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

При использовании в WorldEnvironment он предоставляет настройки по умолчанию для экспозиции, автоэкспозиции и глубины резкости, которые будут использоваться всеми камерами без их собственных CameraAttributes, включая камеру редактора. При использовании в Camera3D он переопределит любые CameraAttributes, установленные в WorldEnvironment, и переопределит свойства Camera3D Camera3D.far, Camera3D.near, Camera3D.fov и Camera3D.keep_aspect. При использовании в VoxelGI или LightmapGI будут использоваться только настройки экспозиции.

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

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

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

Свойства

float

auto_exposure_max_exposure_value

10.0

float

auto_exposure_min_exposure_value

-8.0

float

exposure_aperture

16.0

float

exposure_shutter_speed

100.0

float

frustum_far

4000.0

float

frustum_focal_length

35.0

float

frustum_focus_distance

10.0

float

frustum_near

0.05

Методы

float

get_fov() const


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

float auto_exposure_max_exposure_value = 10.0 🔗

  • void set_auto_exposure_max_exposure_value(value: float)

  • float get_auto_exposure_max_exposure_value()

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


float auto_exposure_min_exposure_value = -8.0 🔗

  • void set_auto_exposure_min_exposure_value(value: float)

  • float get_auto_exposure_min_exposure_value()

Минимальная яркость (в EV100), используемая при расчете автоэкспозиции. При расчете средней яркости сцены цветовые значения будут ограничены по крайней мере этим значением. Это ограничивает автоэкспозицию от экспонирования выше определенной яркости, что приводит к точке отсечения, в которой сцена останется темной.


float exposure_aperture = 16.0 🔗

  • void set_aperture(value: float)

  • float get_aperture()

Размер апертуры камеры, измеряемый в f-ступенях. F-ступень — это безразмерное отношение фокусного расстояния камеры к диаметру апертуры. Высокая настройка апертуры приведет к меньшей апертуре, что приведет к более тусклому изображению и более четкому фокусу. Низкая настройка апертуры приведет к широкой апертуре, которая пропускает больше света, что приведет к более яркому, менее сфокусированному изображению. Значение по умолчанию подходит для наружного освещения в дневное время (т. е. для использования с DirectionalLight3D по умолчанию), для внутреннего освещения более подходящим является значение от 2 до 4.

Доступно только при включенном ProjectSettings.rendering/lights_and_shadows/use_physical_light_units.


float exposure_shutter_speed = 100.0 🔗

  • void set_shutter_speed(value: float)

  • float get_shutter_speed()

Время открытия и закрытия затвора, оцениваемое как 1 / shutter_speed секунд. Более высокое значение допускает меньше света (что приводит к более темному изображению), а более низкое значение допускает больше света (что приводит к более яркому изображению).

Доступно только при включенном ProjectSettings.rendering/lights_and_shadows/use_physical_light_units.


float frustum_far = 4000.0 🔗

Переопределить значение для Camera3D.far. Используется внутренне при расчете глубины резкости. При присоединении к Camera3D в качестве его Camera3D.attributes переопределит свойство Camera3D.far.


float frustum_focal_length = 35.0 🔗

  • void set_focal_length(value: float)

  • float get_focal_length()

Расстояние между объективом камеры и апертурой камеры, измеряется в миллиметрах. Управляет полем зрения и глубиной резкости. Большее фокусное расстояние приведет к меньшему полю зрения и меньшей глубине резкости, что означает, что меньше объектов будет в фокусе. Меньшее фокусное расстояние приведет к более широкому полю зрения и большей глубине резкости, что означает, что больше объектов будет в фокусе. При присоединении к Camera3D в качестве его Camera3D.attributes он переопределит свойство Camera3D.fov и свойство Camera3D.keep_aspect.


float frustum_focus_distance = 10.0 🔗

  • void set_focus_distance(value: float)

  • float get_focus_distance()

Расстояние от камеры до объекта, который будет в фокусе, измеряется в метрах. Внутренне это будет ограничено как минимум на 1 миллиметр больше, чем frustum_focal_length.


float frustum_near = 0.05 🔗

Переопределяет значение для Camera3D.near. Используется внутренне при расчете глубины резкости. При присоединении к Camera3D в качестве его Camera3D.attributes переопределяет свойство Camera3D.near.


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

float get_fov() const 🔗

Возвращает вертикальное поле зрения, которое соответствует frustum_focal_length. Это значение вычисляется внутренне всякий раз, когда изменяется frustum_focal_length.