RDSamplerState
Filtering, addressing and LOD for a RenderingDevice sampler.
RDSamplerState describes how a texture is read: filtering, addressing, mip LOD, anisotropy and depth comparison. Holds no pixels and creates no GPU sampler automatically. Pass the descriptor to RenderingDevice.SamplerCreate and retain the returned RID. Later descriptor edits do not reconfigure that sampler: create another and free the old one after use completes.
All three filters default to Nearest, RepeatU/V/W to ClampToEdge, coordinates to normalized, LodBias=MinLod=0 and MaxLod≈1e20. UseAnisotropy and EnableCompare are off; AnisotropyMax=1, CompareOp=Always and BorderColor=FloatOpaqueBlack. ClampToEdge does not use BorderColor: it reads an edge texel. MinLod/MaxLod bound the level; LodBias offsets its calculation. None creates mip images. Set dimensions and levels through RDTextureFormat.
This executed preset targets ordinary RGBA8: linear filtering, edge clamping and the base mip level only. It checks linear-filter support for that specific format and enables neither anisotropy nor comparison:
using System;
using Reckfell;
public static class SamplerPresets
{
// Base-level RGBA8, normalized UV, linear filtering and edge clamping.
// Caller owns the RID; use the supplied device's valid thread context.
public static Rid LinearClamp(RenderingDevice device)
{
ArgumentNullException.ThrowIfNull(device);
if (!device.SamplerIsFormatSupportedForFilter(
RenderingDevice.DataFormat.R8G8B8A8Unorm,
RenderingDevice.SamplerFilter.Linear))
throw new NotSupportedException("RGBA8 linear filtering is unavailable.");
using var state = new RDSamplerState
{
MagFilter = RenderingDevice.SamplerFilter.Linear,
MinFilter = RenderingDevice.SamplerFilter.Linear,
MipFilter = RenderingDevice.SamplerFilter.Nearest,
RepeatU = RenderingDevice.SamplerRepeatMode.ClampToEdge,
RepeatV = RenderingDevice.SamplerRepeatMode.ClampToEdge,
RepeatW = RenderingDevice.SamplerRepeatMode.ClampToEdge,
MinLod = 0, MaxLod = 0, LodBias = 0,
UseAnisotropy = false, EnableCompare = false, UnnormalizedUvw = false
};
Rid sampler = device.SamplerCreate(state);
if (!sampler.IsValid) throw new InvalidOperationException("GPU sampler creation failed.");
return sampler;
}
}Supply a real RenderingDevice and use its valid call context. The main device from RenderingServer.GetRenderingDevice is borrowed: do not Dispose or Free it; use CallOnRenderThread for related work. A local device created by your code has its own RIDs and queue. The example was tested on a separate local device. The caller owns the returned sampler RID: free it through FreeRid on the same device after work completes. Disposing the descriptor does not free the sampler. For a combined RDUniform binding with UniformType.SamplerWithTexture, add the sampler RID first, then the texture RID. The sampler itself assigns no material and starts no draw/dispatch.
UnnormalizedUvw=true needs a special configuration. For Vulkan: MinFilter=MagFilter, MipFilter=Nearest, MinLod=MaxLod=0, RepeatU/V set to ClampToEdge or ClampToBorder, anisotropy and comparison off. Image and shader-instruction restrictions also apply. Check the complete VkSamplerCreateInfo contract. Engine setters do not validate full-configuration compatibility.
For blurry textures, distinguish MagFilter, MinFilter and MipFilter and check the actual mip chain first. For black edges, inspect ClampToBorder, BorderColor and transparent texels before changing lighting. If anisotropy is invisible, UseAnisotropy alone is insufficient: device support, a suitable AnisotropyMax and a relevant scene are required. Avoid recreating a sampler every frame without need.
Installed Windows/Vulkan Forward+ checks covered the exact helper, linear/nearest through compute textureLod, ClampToEdge, Repeat, a white ClampToBorder border, LOD bounds and unchanged created samplers after descriptor edits. The Vulkan loader warning remains. Raster derivatives, min/mag choice by pixel footprint, mip blending, anisotropy, depth comparison, unnormalized sampling, other GPUs/drivers, image quality and FPS were not tested.
Declarations checked against C# SDK 1.0.0. Expand a name to see declarations and documentation.
Constructors1
RDSamplerStateConstructor
public RDSamplerState();Creates a sampler descriptor with nearest filters, ClampToEdge on all axes, LodBias=MinLod=0, MaxLod≈1e20, anisotropy and comparison false, AnisotropyMax=1, CompareOp=Always, BorderColor=FloatOpaqueBlack and normalized coordinates. No GPU sampler exists yet.
Properties15
AnisotropyMaxProperty
public float AnisotropyMax { get; set; }Requested maximum anisotropy, initially 1. Relevant to UseAnisotropy; not an MSAA level. Vulkan forwards the value to the driver, so do not assume arbitrary values are automatically clamped. A universal maximum of 16 is not guaranteed.
BorderColorProperty
public RenderingDevice.SamplerBorderColor BorderColor { get; set; }Outside-texture color for SamplerRepeatMode.ClampToBorder, initially SamplerBorderColor.FloatOpaqueBlack. ClampToEdge uses an edge texel instead. Selects predefined enum colors, not an arbitrary Color; writes no color into the texture.
CompareOpProperty
public RenderingDevice.CompareOperator CompareOp { get; set; }Comparison-sampler operation, initially CompareOperator.Always. Relevant with EnableCompare=true and a compatible instruction/texture. Not the geometry depth test; changes no draw-call ordering.
EnableCompareProperty
public bool EnableCompare { get; set; }Enables comparison sampling, initially false. For a depth/shadow sampler, CompareOp and the sampling instruction reference value determine the comparison result. Creates no shadow map, light or depth data; this is not ordinary color filtering.
LodBiasProperty
public float LodBias { get; set; }Offset in mip LOD calculation, initially 0. In ordinary sampling a positive bias favors a coarser level and a negative bias a finer one. Changes no mip data and does not replace MinLod/MaxLod; the result depends on the sampling instruction and available levels.
MagFilterProperty
public RenderingDevice.SamplerFilter MagFilter { get; set; }Filter when texels are magnified on screen, initially SamplerFilter.Nearest. Linear interpolates neighboring texels; Nearest selects the nearest one. Does not select a mip-level count. Check the filter/format combination with SamplerIsFormatSupportedForFilter.
MaxLodProperty
public float MaxLod { get; set; }Upper bound for selected mip LOD, initially about 1e20. A large value creates no levels. MinLod=MaxLod=0 restricts reads to the base level, including in the executed textureLod example. This is not an LOD bias.
MinFilterProperty
public RenderingDevice.SamplerFilter MinFilter { get; set; }Filter within a selected mip level during minification, initially SamplerFilter.Nearest. Linear does not replace MipFilter, which controls transitions between levels. Filter support depends on the texture format.
MinLodProperty
public float MinLod { get; set; }Lower bound for selected mip LOD, initially 0 for the base level. This is a level bound, not LodBias. Raising it restricts access to more detailed levels; the texture must contain the required levels.
MipFilterProperty
public RenderingDevice.SamplerFilter MipFilter { get; set; }Selection between mip levels, initially SamplerFilter.Nearest. Linear permits blending neighboring levels. The texture must actually contain created and initialized levels; this field generates none and changes no RDTextureFormat.Mipmaps.
RepeatUProperty
public RenderingDevice.SamplerRepeatMode RepeatU { get; set; }Addressing mode for axis U, initially SamplerRepeatMode.ClampToEdge. Repeat tiles, MirroredRepeat alternates reflection, ClampToEdge uses an edge texel, and ClampToBorder uses BorderColor. Changes neither stored pixels nor geometry UVs.
RepeatVProperty
public RenderingDevice.SamplerRepeatMode RepeatV { get; set; }Addressing mode for axis V, initially SamplerRepeatMode.ClampToEdge. Repeat tiles, MirroredRepeat alternates reflection, ClampToEdge uses an edge texel, and ClampToBorder uses BorderColor. Changes neither stored pixels nor geometry UVs.
RepeatWProperty
public RenderingDevice.SamplerRepeatMode RepeatW { get; set; }Addressing mode for axis W, initially SamplerRepeatMode.ClampToEdge. Repeat tiles, MirroredRepeat alternates reflection, ClampToEdge uses an edge texel, and ClampToBorder uses BorderColor. For 3D this is the third spatial coordinate, not an array-layer index.
UnnormalizedUvwProperty
public bool UnnormalizedUvw { get; set; }Unnormalized sampling coordinates, initially false. With false, coordinates are relative to texture dimensions; true uses texel coordinates. A special mode constrained by the backend and sampling instruction, not an unrestricted UV replacement. See the introduction for Vulkan requirements.
UseAnisotropyProperty
public bool UseAnisotropy { get; set; }Anisotropic-filtering request, initially false. Vulkan enables it only when the device supports samplerAnisotropy; true alone guarantees no result. Typically used for oblique surfaces; assessing quality and cost requires a target scene.
Methods30
GetAnisotropyMaxfloat
public float GetAnisotropyMax();Returns this descriptor’s stored AnisotropyMax, not a GPU query. Requested maximum anisotropy, initially 1. Relevant to UseAnisotropy; not an MSAA level. Vulkan forwards the value to the driver, so do not assume arbitrary values are automatically clamped. A universal maximum of 16 is not guaranteed.
floatStored AnisotropyMax value; this getter does not measure actual sampling output.
GetBorderColorRenderingDevice.SamplerBorderColor
public RenderingDevice.SamplerBorderColor GetBorderColor();Returns this descriptor’s stored BorderColor, not a GPU query. Outside-texture color for SamplerRepeatMode.ClampToBorder, initially SamplerBorderColor.FloatOpaqueBlack. ClampToEdge uses an edge texel instead. Selects predefined enum colors, not an arbitrary Color; writes no color into the texture.
RenderingDevice.SamplerBorderColorStored BorderColor value; this getter does not measure actual sampling output.
GetCompareOpRenderingDevice.CompareOperator
public RenderingDevice.CompareOperator GetCompareOp();Returns this descriptor’s stored CompareOp, not a GPU query. Comparison-sampler operation, initially CompareOperator.Always. Relevant with EnableCompare=true and a compatible instruction/texture. Not the geometry depth test; changes no draw-call ordering.
RenderingDevice.CompareOperatorStored CompareOp value; this getter does not measure actual sampling output.
GetEnableComparebool
public bool GetEnableCompare();Returns this descriptor’s stored EnableCompare, not a GPU query. Enables comparison sampling, initially false. For a depth/shadow sampler, CompareOp and the sampling instruction reference value determine the comparison result. Creates no shadow map, light or depth data; this is not ordinary color filtering.
boolStored EnableCompare value; this getter does not measure actual sampling output.
GetLodBiasfloat
public float GetLodBias();Returns this descriptor’s stored LodBias, not a GPU query. Offset in mip LOD calculation, initially 0. In ordinary sampling a positive bias favors a coarser level and a negative bias a finer one. Changes no mip data and does not replace MinLod/MaxLod; the result depends on the sampling instruction and available levels.
floatStored LodBias value; this getter does not measure actual sampling output.
GetMagFilterRenderingDevice.SamplerFilter
public RenderingDevice.SamplerFilter GetMagFilter();Returns this descriptor’s stored MagFilter, not a GPU query. Filter when texels are magnified on screen, initially SamplerFilter.Nearest. Linear interpolates neighboring texels; Nearest selects the nearest one. Does not select a mip-level count. Check the filter/format combination with SamplerIsFormatSupportedForFilter.
RenderingDevice.SamplerFilterStored MagFilter value; this getter does not measure actual sampling output.
GetMaxLodfloat
public float GetMaxLod();Returns this descriptor’s stored MaxLod, not a GPU query. Upper bound for selected mip LOD, initially about 1e20. A large value creates no levels. MinLod=MaxLod=0 restricts reads to the base level, including in the executed textureLod example. This is not an LOD bias.
floatStored MaxLod value; this getter does not measure actual sampling output.
GetMinFilterRenderingDevice.SamplerFilter
public RenderingDevice.SamplerFilter GetMinFilter();Returns this descriptor’s stored MinFilter, not a GPU query. Filter within a selected mip level during minification, initially SamplerFilter.Nearest. Linear does not replace MipFilter, which controls transitions between levels. Filter support depends on the texture format.
RenderingDevice.SamplerFilterStored MinFilter value; this getter does not measure actual sampling output.
GetMinLodfloat
public float GetMinLod();Returns this descriptor’s stored MinLod, not a GPU query. Lower bound for selected mip LOD, initially 0 for the base level. This is a level bound, not LodBias. Raising it restricts access to more detailed levels; the texture must contain the required levels.
floatStored MinLod value; this getter does not measure actual sampling output.
GetMipFilterRenderingDevice.SamplerFilter
public RenderingDevice.SamplerFilter GetMipFilter();Returns this descriptor’s stored MipFilter, not a GPU query. Selection between mip levels, initially SamplerFilter.Nearest. Linear permits blending neighboring levels. The texture must actually contain created and initialized levels; this field generates none and changes no RDTextureFormat.Mipmaps.
RenderingDevice.SamplerFilterStored MipFilter value; this getter does not measure actual sampling output.
GetRepeatURenderingDevice.SamplerRepeatMode
public RenderingDevice.SamplerRepeatMode GetRepeatU();Returns this descriptor’s stored RepeatU, not a GPU query. Addressing mode for axis U, initially SamplerRepeatMode.ClampToEdge. Repeat tiles, MirroredRepeat alternates reflection, ClampToEdge uses an edge texel, and ClampToBorder uses BorderColor. Changes neither stored pixels nor geometry UVs.
RenderingDevice.SamplerRepeatModeStored RepeatU value; this getter does not measure actual sampling output.
GetRepeatVRenderingDevice.SamplerRepeatMode
public RenderingDevice.SamplerRepeatMode GetRepeatV();Returns this descriptor’s stored RepeatV, not a GPU query. Addressing mode for axis V, initially SamplerRepeatMode.ClampToEdge. Repeat tiles, MirroredRepeat alternates reflection, ClampToEdge uses an edge texel, and ClampToBorder uses BorderColor. Changes neither stored pixels nor geometry UVs.
RenderingDevice.SamplerRepeatModeStored RepeatV value; this getter does not measure actual sampling output.
GetRepeatWRenderingDevice.SamplerRepeatMode
public RenderingDevice.SamplerRepeatMode GetRepeatW();Returns this descriptor’s stored RepeatW, not a GPU query. Addressing mode for axis W, initially SamplerRepeatMode.ClampToEdge. Repeat tiles, MirroredRepeat alternates reflection, ClampToEdge uses an edge texel, and ClampToBorder uses BorderColor. For 3D this is the third spatial coordinate, not an array-layer index.
RenderingDevice.SamplerRepeatModeStored RepeatW value; this getter does not measure actual sampling output.
GetUnnormalizedUvwbool
public bool GetUnnormalizedUvw();Returns this descriptor’s stored UnnormalizedUvw, not a GPU query. Unnormalized sampling coordinates, initially false. With false, coordinates are relative to texture dimensions; true uses texel coordinates. A special mode constrained by the backend and sampling instruction, not an unrestricted UV replacement. See the introduction for Vulkan requirements.
boolStored UnnormalizedUvw value; this getter does not measure actual sampling output.
GetUseAnisotropybool
public bool GetUseAnisotropy();Returns this descriptor’s stored UseAnisotropy, not a GPU query. Anisotropic-filtering request, initially false. Vulkan enables it only when the device supports samplerAnisotropy; true alone guarantees no result. Typically used for oblique surfaces; assessing quality and cost requires a target scene.
boolStored UseAnisotropy value; this getter does not measure actual sampling output.
SetAnisotropyMaxvoid
public void SetAnisotropyMax(float pMember);Stores AnisotropyMax in the descriptor without changing existing samplers. Requested maximum anisotropy, initially 1. Relevant to UseAnisotropy; not an MSAA level. Vulkan forwards the value to the driver, so do not assume arbitrary values are automatically clamped. A universal maximum of 16 is not guaranteed.
| Name | Type | Default |
|---|---|---|
pMember | float | — |
pMemberRequested maximum anisotropy, initially 1. Relevant to UseAnisotropy; not an MSAA level. Vulkan forwards the value to the driver, so do not assume arbitrary values are automatically clamped. A universal maximum of 16 is not guaranteed.
SetBorderColorvoid
public void SetBorderColor(RenderingDevice.SamplerBorderColor pMember);Stores BorderColor in the descriptor without changing existing samplers. Outside-texture color for SamplerRepeatMode.ClampToBorder, initially SamplerBorderColor.FloatOpaqueBlack. ClampToEdge uses an edge texel instead. Selects predefined enum colors, not an arbitrary Color; writes no color into the texture.
| Name | Type | Default |
|---|---|---|
pMember | RenderingDevice.SamplerBorderColor | — |
pMemberOutside-texture color for SamplerRepeatMode.ClampToBorder, initially SamplerBorderColor.FloatOpaqueBlack. ClampToEdge uses an edge texel instead. Selects predefined enum colors, not an arbitrary Color; writes no color into the texture.
SetCompareOpvoid
public void SetCompareOp(RenderingDevice.CompareOperator pMember);Stores CompareOp in the descriptor without changing existing samplers. Comparison-sampler operation, initially CompareOperator.Always. Relevant with EnableCompare=true and a compatible instruction/texture. Not the geometry depth test; changes no draw-call ordering.
| Name | Type | Default |
|---|---|---|
pMember | RenderingDevice.CompareOperator | — |
pMemberComparison-sampler operation, initially CompareOperator.Always. Relevant with EnableCompare=true and a compatible instruction/texture. Not the geometry depth test; changes no draw-call ordering.
SetEnableComparevoid
public void SetEnableCompare(bool pMember);Stores EnableCompare in the descriptor without changing existing samplers. Enables comparison sampling, initially false. For a depth/shadow sampler, CompareOp and the sampling instruction reference value determine the comparison result. Creates no shadow map, light or depth data; this is not ordinary color filtering.
| Name | Type | Default |
|---|---|---|
pMember | bool | — |
pMemberEnables comparison sampling, initially false. For a depth/shadow sampler, CompareOp and the sampling instruction reference value determine the comparison result. Creates no shadow map, light or depth data; this is not ordinary color filtering.
SetLodBiasvoid
public void SetLodBias(float pMember);Stores LodBias in the descriptor without changing existing samplers. Offset in mip LOD calculation, initially 0. In ordinary sampling a positive bias favors a coarser level and a negative bias a finer one. Changes no mip data and does not replace MinLod/MaxLod; the result depends on the sampling instruction and available levels.
| Name | Type | Default |
|---|---|---|
pMember | float | — |
pMemberOffset in mip LOD calculation, initially 0. In ordinary sampling a positive bias favors a coarser level and a negative bias a finer one. Changes no mip data and does not replace MinLod/MaxLod; the result depends on the sampling instruction and available levels.
SetMagFiltervoid
public void SetMagFilter(RenderingDevice.SamplerFilter pMember);Stores MagFilter in the descriptor without changing existing samplers. Filter when texels are magnified on screen, initially SamplerFilter.Nearest. Linear interpolates neighboring texels; Nearest selects the nearest one. Does not select a mip-level count. Check the filter/format combination with SamplerIsFormatSupportedForFilter.
| Name | Type | Default |
|---|---|---|
pMember | RenderingDevice.SamplerFilter | — |
pMemberFilter when texels are magnified on screen, initially SamplerFilter.Nearest. Linear interpolates neighboring texels; Nearest selects the nearest one. Does not select a mip-level count. Check the filter/format combination with SamplerIsFormatSupportedForFilter.
SetMaxLodvoid
public void SetMaxLod(float pMember);Stores MaxLod in the descriptor without changing existing samplers. Upper bound for selected mip LOD, initially about 1e20. A large value creates no levels. MinLod=MaxLod=0 restricts reads to the base level, including in the executed textureLod example. This is not an LOD bias.
| Name | Type | Default |
|---|---|---|
pMember | float | — |
pMemberUpper bound for selected mip LOD, initially about 1e20. A large value creates no levels. MinLod=MaxLod=0 restricts reads to the base level, including in the executed textureLod example. This is not an LOD bias.
SetMinFiltervoid
public void SetMinFilter(RenderingDevice.SamplerFilter pMember);Stores MinFilter in the descriptor without changing existing samplers. Filter within a selected mip level during minification, initially SamplerFilter.Nearest. Linear does not replace MipFilter, which controls transitions between levels. Filter support depends on the texture format.
| Name | Type | Default |
|---|---|---|
pMember | RenderingDevice.SamplerFilter | — |
pMemberFilter within a selected mip level during minification, initially SamplerFilter.Nearest. Linear does not replace MipFilter, which controls transitions between levels. Filter support depends on the texture format.
SetMinLodvoid
public void SetMinLod(float pMember);Stores MinLod in the descriptor without changing existing samplers. Lower bound for selected mip LOD, initially 0 for the base level. This is a level bound, not LodBias. Raising it restricts access to more detailed levels; the texture must contain the required levels.
| Name | Type | Default |
|---|---|---|
pMember | float | — |
pMemberLower bound for selected mip LOD, initially 0 for the base level. This is a level bound, not LodBias. Raising it restricts access to more detailed levels; the texture must contain the required levels.
SetMipFiltervoid
public void SetMipFilter(RenderingDevice.SamplerFilter pMember);Stores MipFilter in the descriptor without changing existing samplers. Selection between mip levels, initially SamplerFilter.Nearest. Linear permits blending neighboring levels. The texture must actually contain created and initialized levels; this field generates none and changes no RDTextureFormat.Mipmaps.
| Name | Type | Default |
|---|---|---|
pMember | RenderingDevice.SamplerFilter | — |
pMemberSelection between mip levels, initially SamplerFilter.Nearest. Linear permits blending neighboring levels. The texture must actually contain created and initialized levels; this field generates none and changes no RDTextureFormat.Mipmaps.
SetRepeatUvoid
public void SetRepeatU(RenderingDevice.SamplerRepeatMode pMember);Stores RepeatU in the descriptor without changing existing samplers. Addressing mode for axis U, initially SamplerRepeatMode.ClampToEdge. Repeat tiles, MirroredRepeat alternates reflection, ClampToEdge uses an edge texel, and ClampToBorder uses BorderColor. Changes neither stored pixels nor geometry UVs.
| Name | Type | Default |
|---|---|---|
pMember | RenderingDevice.SamplerRepeatMode | — |
pMemberAddressing mode for axis U, initially SamplerRepeatMode.ClampToEdge. Repeat tiles, MirroredRepeat alternates reflection, ClampToEdge uses an edge texel, and ClampToBorder uses BorderColor. Changes neither stored pixels nor geometry UVs.
SetRepeatVvoid
public void SetRepeatV(RenderingDevice.SamplerRepeatMode pMember);Stores RepeatV in the descriptor without changing existing samplers. Addressing mode for axis V, initially SamplerRepeatMode.ClampToEdge. Repeat tiles, MirroredRepeat alternates reflection, ClampToEdge uses an edge texel, and ClampToBorder uses BorderColor. Changes neither stored pixels nor geometry UVs.
| Name | Type | Default |
|---|---|---|
pMember | RenderingDevice.SamplerRepeatMode | — |
pMemberAddressing mode for axis V, initially SamplerRepeatMode.ClampToEdge. Repeat tiles, MirroredRepeat alternates reflection, ClampToEdge uses an edge texel, and ClampToBorder uses BorderColor. Changes neither stored pixels nor geometry UVs.
SetRepeatWvoid
public void SetRepeatW(RenderingDevice.SamplerRepeatMode pMember);Stores RepeatW in the descriptor without changing existing samplers. Addressing mode for axis W, initially SamplerRepeatMode.ClampToEdge. Repeat tiles, MirroredRepeat alternates reflection, ClampToEdge uses an edge texel, and ClampToBorder uses BorderColor. For 3D this is the third spatial coordinate, not an array-layer index.
| Name | Type | Default |
|---|---|---|
pMember | RenderingDevice.SamplerRepeatMode | — |
pMemberAddressing mode for axis W, initially SamplerRepeatMode.ClampToEdge. Repeat tiles, MirroredRepeat alternates reflection, ClampToEdge uses an edge texel, and ClampToBorder uses BorderColor. For 3D this is the third spatial coordinate, not an array-layer index.
SetUnnormalizedUvwvoid
public void SetUnnormalizedUvw(bool pMember);Stores UnnormalizedUvw in the descriptor without changing existing samplers. Unnormalized sampling coordinates, initially false. With false, coordinates are relative to texture dimensions; true uses texel coordinates. A special mode constrained by the backend and sampling instruction, not an unrestricted UV replacement. See the introduction for Vulkan requirements.
| Name | Type | Default |
|---|---|---|
pMember | bool | — |
pMemberUnnormalized sampling coordinates, initially false. With false, coordinates are relative to texture dimensions; true uses texel coordinates. A special mode constrained by the backend and sampling instruction, not an unrestricted UV replacement. See the introduction for Vulkan requirements.
SetUseAnisotropyvoid
public void SetUseAnisotropy(bool pMember);Stores UseAnisotropy in the descriptor without changing existing samplers. Anisotropic-filtering request, initially false. Vulkan enables it only when the device supports samplerAnisotropy; true alone guarantees no result. Typically used for oblique surfaces; assessing quality and cost requires a target scene.
| Name | Type | Default |
|---|---|---|
pMember | bool | — |
pMemberAnisotropic-filtering request, initially false. Vulkan enables it only when the device supports samplerAnisotropy; true alone guarantees no result. Typically used for oblique surfaces; assessing quality and cost requires a target scene.