RenderSceneBuffersRD
Наследует: RenderSceneBuffers < RefCounted < Object
Реализация буфера рендеринга сцены для рендереров на основе RenderingDevice.
Описание
Этот объект управляет всеми буферами 3D-рендеринга для рендереров на основе устройств рендеринга. Экземпляр этого объекта создается для каждого окна просмотра, в котором включен 3D-рендеринг.
Все буферы организованы в контексты. Контекст по умолчанию называется render_buffers и может содержать, среди прочего, буфер цвета, буфер глубины, буферы скорости, карту плотности VRS и варианты MSAA этих буферов.
Буферы гарантированно существуют только во время рендеринга окна просмотра.
Примечание: Это внутренний объект сервера рендеринга, не создавайте его из скрипта.
Методы
Описания метода
void clear_context(context: StringName) 🔗
Освобождает все буферы, связанные с этим контекстом.
RID create_texture(context: StringName, name: StringName, data_format: DataFormat, usage_bits: int, texture_samples: TextureSamples, size: Vector2i, layers: int, mipmaps: int, unique: bool, discardable: bool) 🔗
Создать новую текстуру с заданным определением и кэшировать ее под заданным именем. Возвращает существующую текстуру, если она уже существует.
RID create_texture_from_format(context: StringName, name: StringName, format: RDTextureFormat, view: RDTextureView, unique: bool) 🔗
Создать новую текстуру, используя заданный формат, просмотреть и кэшировать ее под заданным именем. Возвращает существующую текстуру, если она уже существует.
RID create_texture_view(context: StringName, name: StringName, view_name: StringName, view: RDTextureView) 🔗
Создать новый вид текстуры для существующей текстуры и кэшировать его под заданным view_name. Возвращает существующий вид текстуры, если он уже существует. Выдает ошибку, если исходная текстура не существует.
RID get_color_layer(layer: int, msaa: bool = false) 🔗
Возвращает указанный слой из цветовой текстуры, в которую мы визуализируем 3D-контент.
Если msaa равен true и включен MSAA, возвращается вариант MSAA буфера.
RID get_color_texture(msaa: bool = false) 🔗
Возвращает цветовую текстуру, в которую мы визуализируем 3D-контент. Если используется multiview, это будет массив текстур со всеми представлениями.
Если msaa равен true и включен MSAA, возвращается вариант MSAA буфера.
RID get_depth_layer(layer: int, msaa: bool = false) 🔗
Возвращает указанный слой из текстуры глубины, в которую мы визуализируем 3D-контент.
Если msaa равен true и включен MSAA, возвращается вариант MSAA буфера.
RID get_depth_texture(msaa: bool = false) 🔗
Возвращает текстуру глубины, в которую мы визуализируем 3D-контент. Если используется multiview, это будет массив текстур со всеми представлениями.
Если msaa равен true и включен MSAA, возвращается вариант MSAA буфера.
float get_fsr_sharpness() const 🔗
Возвращает значение резкости FSR, используемое при рендеринге 3D-контента (если get_scaling_3d_mode() является режимом FSR).
Vector2i get_internal_size() const 🔗
Возвращает внутренний размер буфера рендеринга (размер до масштабирования), с которым по умолчанию создаются текстуры.
ViewportMSAA get_msaa_3d() const 🔗
Возвращает примененный режим 3D MSAA для данного окна просмотра.
RID get_render_target() const 🔗
Возвращает цель рендеринга, связанную с этим объектом буферов.
ViewportScaling3DMode get_scaling_3d_mode() const 🔗
Возвращает режим масштабирования, используемый для масштабирования.
ViewportScreenSpaceAA get_screen_space_aa() const 🔗
Возвращает примененный метод сглаживания экранного пространства.
Vector2i get_target_size() const 🔗
Возвращает целевой размер буфера рендеринга (размер после масштабирования).
RID get_texture(context: StringName, name: StringName) const 🔗
Возвращает кэшированную текстуру с этим именем.
RDTextureFormat get_texture_format(context: StringName, name: StringName) const 🔗
Возвращает информацию о формате текстуры, с помощью которой была создана кэшированная текстура.
TextureSamples get_texture_samples() const 🔗
Возвращает количество использованных выборок MSAA.
RID get_texture_slice(context: StringName, name: StringName, layer: int, mipmap: int, layers: int, mipmaps: int) 🔗
Возвращает определенный фрагмент (слой или MIP-карту) для кэшированной текстуры.
Vector2i get_texture_slice_size(context: StringName, name: StringName, mipmap: int) 🔗
Возвращает размер текстуры заданного фрагмента кэшированной текстуры.
RID get_texture_slice_view(context: StringName, name: StringName, layer: int, mipmap: int, layers: int, mipmaps: int, view: RDTextureView) 🔗
Возвращает определенный вид среза (слоя или MIP-карты) для кэшированной текстуры.
bool get_use_debanding() const 🔗
Возвращает true, если отключение полос включено.
Возвращает true, если TAA включен.
RID get_velocity_layer(layer: int, msaa: bool = false) 🔗
Возвращает указанный слой из текстуры скорости, в которую мы визуализируем 3D-контент.
RID get_velocity_texture(msaa: bool = false) 🔗
Возвращает текстуру скорости, в которую мы визуализируем 3D-контент. Если используется multiview, это будет массив текстур со всеми представлениями.
Если msaa равен true и включен MSAA, возвращается вариант MSAA буфера.
Возвращает количество просмотров для соответствующего окна просмотра.
bool has_texture(context: StringName, name: StringName) const 🔗
Возвращает true, если для этого имени существует кэшированная текстура.