RDSamplerState
继承: RefCounted < Object
采样器状态(由 RenderingDevice 使用)。
描述
这个对象由 RenderingDevice 使用。
属性
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
| ||
|
属性说明
采样时能够使用的最大各向异性。仅在 use_anisotropy 为 true
时有效。值越高,倾斜角度下得到的采样越锐利,但性能开销也越大(由于显存带宽的原因)。这个值可能受到使用的图形硬件的限制。大多数图形硬件最多仅支持 16.0
。
如果 anisotropy_max 为 1.0
,则会强制禁用各向异性,即便 use_anisotropy 为 true
。
SamplerBorderColor border_color = 2
🔗
void set_border_color(value: SamplerBorderColor)
SamplerBorderColor get_border_color()
对采样器范围外进行采样,并且 repeat_u、repeat_v 或 repeat_w 的模式禁用了重复时,返回的边框颜色。
CompareOperator compare_op = 7
🔗
void set_compare_op(value: CompareOperator)
CompareOperator get_compare_op()
要使用的比较运算。仅在 enable_compare 为 true
时有效。
如果为 true
,则返回值基于 compare_op 定义的比较运算。这种做法基于硬件,因此比手动在着色器中执行要快。例如,渲染阴影贴图时就会对阴影采样器的深度值进行比较运算。
要使用的 mipmap LOD 偏置。正值会让采样器在给定距离处更模糊,而负值会让采样器在给定距离处更锐利(有可能看上去会很颗粒化)。推荐值在 -0.5
到 0.0
之间。仅在采样器的 mipmap 可用时有效。
SamplerFilter mag_filter = 0
🔗
void set_mag_filter(value: SamplerFilter)
SamplerFilter get_mag_filter()
采样器的放大过滤器。如果采样的纹素比屏幕像素显示得大,就会使用这个过滤方法。
用于显示的最大 mipmap LOD 偏置(最低分辨率)。仅在采样器有 mipmap 可用时有效。
SamplerFilter min_filter = 0
🔗
void set_min_filter(value: SamplerFilter)
SamplerFilter get_min_filter()
采样器的缩小过滤器。如果采样的纹素比屏幕像素显示得小,就会使用这个过滤方法。
用于显示的最小 mipmap LOD 偏置(最高分辨率)。仅在采样器有 mipmap 可用时有效。
SamplerFilter mip_filter = 0
🔗
void set_mip_filter(value: SamplerFilter)
SamplerFilter get_mip_filter()
Mipmap 使用的过滤方法。
SamplerRepeatMode repeat_u = 2
🔗
void set_repeat_u(value: SamplerRepeatMode)
SamplerRepeatMode get_repeat_u()
沿着 UV 坐标 U 轴的重复模式。影响采样超出 UV 边界时的返回值。
SamplerRepeatMode repeat_v = 2
🔗
void set_repeat_v(value: SamplerRepeatMode)
SamplerRepeatMode get_repeat_v()
沿着 UV 坐标 V 轴的重复模式。影响采样超出 UV 边界时的返回值。
SamplerRepeatMode repeat_w = 2
🔗
void set_repeat_w(value: SamplerRepeatMode)
SamplerRepeatMode get_repeat_w()
沿着 UV 坐标 W 轴的重复模式。影响采样超出 UV 边界时的返回值。仅对 3D 采样器有效。
bool unnormalized_uvw = false
🔗
如果为 true
,则纹理将使用范围从 0 到纹理分辨率的坐标进行采样。否则,坐标将被归一化,范围从 0 到 1。
如果为 true
,则执行各向异性采样。