Enum three::FilterMethod
pub enum FilterMethod {
Scale,
Mipmap,
Bilinear,
Trilinear,
Anisotropic(u8),
}
Expand description
How to filter the texture when sampling. They correspond to increasing levels of quality, but also cost. Mipmap, trilinear and anisotropic filtering require mipmapping, but the other filtering methods do not.
These names are somewhat poor, in that “bilinear” is really just doing linear filtering on each axis, and it is only bilinear in the case of 2D textures. Similarly for trilinear, it is really Quadralinear(?) for 3D textures. Alas, these names are simple, and match certain intuitions ingrained by many years of public use of inaccurate terminology.
Variants
Scale
The dumbest filtering possible, nearest-neighbor interpolation.
Mipmap
Add simple mipmapping.
Bilinear
Sample multiple texels within a single mipmap level to increase quality.
Trilinear
Sample multiple texels across two mipmap levels to increase quality.
Anisotropic(u8)
Anisotropic filtering with a given “max”, must be between 1 and 16, inclusive.
Trait Implementations
impl Clone for FilterMethod
impl Clone for FilterMethod
fn clone(&self) -> FilterMethod
fn clone(&self) -> FilterMethod
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreimpl Debug for FilterMethod
impl Debug for FilterMethod
impl Hash for FilterMethod
impl Hash for FilterMethod
impl Ord for FilterMethod
impl Ord for FilterMethod
fn cmp(&self, other: &FilterMethod) -> Ordering
fn cmp(&self, other: &FilterMethod) -> Ordering
1.21.0 · sourcefn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
1.21.0 · sourcefn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Selfwhere
Self: Sized + PartialOrd<Self>,
fn clamp(self, min: Self, max: Self) -> Selfwhere
Self: Sized + PartialOrd<Self>,
impl PartialEq<FilterMethod> for FilterMethod
impl PartialEq<FilterMethod> for FilterMethod
fn eq(&self, other: &FilterMethod) -> bool
fn eq(&self, other: &FilterMethod) -> bool
impl PartialOrd<FilterMethod> for FilterMethod
impl PartialOrd<FilterMethod> for FilterMethod
fn partial_cmp(&self, other: &FilterMethod) -> Option<Ordering>
fn partial_cmp(&self, other: &FilterMethod) -> Option<Ordering>
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moreimpl Copy for FilterMethod
impl Eq for FilterMethod
impl StructuralEq for FilterMethod
impl StructuralPartialEq for FilterMethod
Auto Trait Implementations
impl RefUnwindSafe for FilterMethod
impl Send for FilterMethod
impl Sync for FilterMethod
impl Unpin for FilterMethod
impl UnwindSafe for FilterMethod
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<T> Pointable for T
impl<T> Pointable for T
impl<T> SetParameter for T
impl<T> SetParameter for T
fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Resultwhere
T: Parameter<Self>,
fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Resultwhere
T: Parameter<Self>,
value
as a parameter of self
.