RDSamplerState

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

Состояние сэмплера (используется RenderingDevice).

Описание

Этот объект используется RenderingDevice.

Свойства

float

anisotropy_max

1.0

SamplerBorderColor

border_color

2

CompareOperator

compare_op

7

bool

enable_compare

false

float

lod_bias

0.0

SamplerFilter

mag_filter

0

float

max_lod

1e+20

SamplerFilter

min_filter

0

float

min_lod

0.0

SamplerFilter

mip_filter

0

SamplerRepeatMode

repeat_u

2

SamplerRepeatMode

repeat_v

2

SamplerRepeatMode

repeat_w

2

bool

unnormalized_uvw

false

bool

use_anisotropy

false


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

float anisotropy_max = 1.0 🔗

  • void set_anisotropy_max(value: float)

  • float get_anisotropy_max()

Максимальная анизотропия, которая может использоваться при сэмплировании. Эффективно только если use_anisotropy равно true. Более высокие значения приводят к более резкому сэмплеру на косых углах за счет производительности (из-за пропускной способности памяти). Это значение может быть ограничено используемым графическим оборудованием. Большинство графических устройств поддерживают только значения до 16.0.

Если anisotropy_max равно 1.0, принудительно отключает анизотропию, даже если use_anisotropy равно true.


SamplerBorderColor border_color = 2 🔗

Цвет границы, который будет возвращен при выборке за пределами границ сэмплера, а также в режимах repeat_u, repeat_v или repeat_w повторение отключено.


CompareOperator compare_op = 7 🔗

Операция сравнения для использования. Действует только если enable_compare равно true.


bool enable_compare = false 🔗

  • void set_enable_compare(value: bool)

  • bool get_enable_compare()

Если true, возвращаемые значения будут основаны на операции сравнения, определенной в compare_op. Это аппаратный подход, поэтому он быстрее, чем выполнение этого вручную в шейдере. Например, операции сравнения используются для рендеринга карты теней путем сравнения значений глубины из сэмплера теней.


float lod_bias = 0.0 🔗

  • void set_lod_bias(value: float)

  • float get_lod_bias()

Смещение LOD mipmap для использования. Положительные значения сделают сэмплер более размытым на заданном расстоянии, а отрицательные значения сделают сэмплер более резким на заданном расстоянии (с риском выглядеть зернистым). Рекомендуемые значения находятся в диапазоне от -0.5 до 0.0. Эффективно только в том случае, если у сэмплера есть доступные mip-карты.


SamplerFilter mag_filter = 0 🔗

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


float max_lod = 1e+20 🔗

  • void set_max_lod(value: float)

  • float get_max_lod()

Максимальное смещение LOD mipmap для отображения (минимальное разрешение). Действует только в том случае, если у сэмплера есть доступные mipmaps.


SamplerFilter min_filter = 0 🔗

Фильтр минификации сэмплера. Это метод фильтрации, используемый при сэмплировании текселей, которые кажутся меньше пикселей на экране.


float min_lod = 0.0 🔗

  • void set_min_lod(value: float)

  • float get_min_lod()

Минимальное смещение LOD mipmap для отображения (максимальное разрешение). Действует только в том случае, если у сэмплера есть доступные mipmaps.


SamplerFilter mip_filter = 0 🔗

Метод фильтрации, используемый для MIP-текстур.


SamplerRepeatMode repeat_u = 2 🔗

Режим повтора для использования вдоль оси U координат UV. Это влияет на возвращаемые значения, если выборка выполняется за пределами границ UV.


SamplerRepeatMode repeat_v = 2 🔗

Режим повтора для использования вдоль оси V координат UV. Это влияет на возвращаемые значения, если выборка выполняется за пределами границ UV.


SamplerRepeatMode repeat_w = 2 🔗

Режим повтора для использования вдоль оси W координат UV. Это влияет на возвращаемые значения, если выборка происходит за пределами границ UV. Действует только для 3D-сэмплеров.


bool unnormalized_uvw = false 🔗

  • void set_unnormalized_uvw(value: bool)

  • bool get_unnormalized_uvw()

Если true, текстура будет сэмплироваться с координатами в диапазоне от 0 до разрешения текстуры. В противном случае координаты будут нормализованы и будут находиться в диапазоне от 0 до 1.


bool use_anisotropy = false 🔗

  • void set_use_anisotropy(value: bool)

  • bool get_use_anisotropy()

Если true, выполнить анизотропную выборку. См. anisotropy_max.