#[non_exhaustive]
pub enum FeatureID {
Show 25 variants
OglFeatureIdTextureNpotBasic,
OglFeatureIdTextureNpotMipmap,
OglFeatureIdTextureNpotRepeat,
OglFeatureIdTextureNpot,
OglFeatureIdTextureRectangle,
OglFeatureIdTexture3d,
OglFeatureIdGlsl,
OglFeatureIdArbfp,
OglFeatureIdOffscreen,
OglFeatureIdOffscreenMultisample,
OglFeatureIdOnscreenMultiple,
OglFeatureIdUnsignedIntIndices,
OglFeatureIdDepthRange,
OglFeatureIdPointSprite,
OglFeatureIdMapBufferForRead,
OglFeatureIdMapBufferForWrite,
OglFeatureIdMirroredRepeat,
OglFeatureIdSwapBuffersEvent,
OglFeatureIdGles2Context,
OglFeatureIdDepthTexture,
OglFeatureIdPresentationTime,
OglFeatureIdFence,
OglFeatureIdPerVertexPointSize,
OglFeatureIdTextureRg,
OglFeatureIdBufferAge,
}
Expand description
All the capabilities that can vary between different GPUs supported.
Applications that depend on any of these features should explicitly
check for them using has_feature
or has_features
.
Variants (Non-exhaustive)
This enum is marked as non-exhaustive
OglFeatureIdTextureNpotBasic
The hardware supports non power
of two textures, but you also need to check the
FeatureID::OglFeatureIdTextureNpotMipmap
and FeatureID::OglFeatureIdTextureNpotRepeat
features to know if the hardware supports npot texture mipmaps
or repeat modes other than
PipelineWrapMode::ClampToEdge
respectively.
OglFeatureIdTextureNpotMipmap
Mipmapping is supported in conjuntion with non power of two textures.
OglFeatureIdTextureNpotRepeat
Repeat modes other than
PipelineWrapMode::ClampToEdge
are supported by the
hardware.
OglFeatureIdTextureNpot
Non power of two textures are supported
by the hardware. This is a equivalent to the
FeatureID::OglFeatureIdTextureNpotBasic
, FeatureID::OglFeatureIdTextureNpotMipmap
and FeatureID::OglFeatureIdTextureNpotRepeat
features combined.
OglFeatureIdTextureRectangle
Support for rectangular textures with non-normalized texture coordinates.
OglFeatureIdTexture3d
3D texture support
OglFeatureIdGlsl
GLSL support
OglFeatureIdArbfp
ARBFP support
OglFeatureIdOffscreen
Offscreen rendering support
OglFeatureIdOffscreenMultisample
Multisample support for offscreen framebuffers
OglFeatureIdOnscreenMultiple
Multiple onscreen framebuffers supported.
OglFeatureIdUnsignedIntIndices
Set if
IndicesType::Int
is supported in
Indices::new
.
OglFeatureIdDepthRange
pipeline_set_depth_range
support
OglFeatureIdPointSprite
Whether
Pipeline::set_layer_point_sprite_coords_enabled
is supported.
OglFeatureIdMapBufferForRead
Whether buffer_map
is
supported with BufferAccess including read support.
OglFeatureIdMapBufferForWrite
Whether buffer_map
is
supported with BufferAccess including write support.
OglFeatureIdMirroredRepeat
Whether
PipelineWrapMode::MirroredRepeat
is supported.
OglFeatureIdSwapBuffersEvent
Available if the window system supports reporting an event for swap buffer completions.
OglFeatureIdGles2Context
Whether creating new GLES2 contexts is suported.
OglFeatureIdDepthTexture
Whether Framebuffer
support rendering
the depth buffer to a texture.
OglFeatureIdPresentationTime
Whether frame presentation
time stamps will be recorded in FrameInfo
objects.
OglFeatureIdFence
OglFeatureIdPerVertexPointSize
Whether point_size_in can be used as an attribute to set a per-vertex point size.
OglFeatureIdTextureRg
Support for
TextureComponents::Rg
as the internal components of a
texture.
OglFeatureIdBufferAge
Available if the age of Onscreen
back
buffers are tracked and so Onscreen::get_buffer_age
can be
expected to return age values other than 0.
Trait Implementations
sourceimpl Ord for FeatureID
impl Ord for FeatureID
sourceimpl PartialOrd<FeatureID> for FeatureID
impl PartialOrd<FeatureID> for FeatureID
sourcefn partial_cmp(&self, other: &FeatureID) -> Option<Ordering>
fn partial_cmp(&self, other: &FeatureID) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl Copy for FeatureID
impl Eq for FeatureID
impl StructuralEq for FeatureID
impl StructuralPartialEq for FeatureID
Auto Trait Implementations
impl RefUnwindSafe for FeatureID
impl Send for FeatureID
impl Sync for FeatureID
impl Unpin for FeatureID
impl UnwindSafe for FeatureID
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> Clamp<T> for T where
T: PartialOrd<T>,
impl<T> Clamp<T> for T where
T: PartialOrd<T>,
fn clamped(self, min: T, max: T) -> T
impl<'a, T, C, M> Inspect<'a, C, &'a C, M> for T
impl<'a, T, C, M> Inspect<'a, C, &'a C, M> for T
impl<'a, T, C, M> Inspect<'a, C, &'a mut C, M> for T
impl<'a, T, C, M> Inspect<'a, C, &'a mut C, M> for T
impl<Fr, To> IntoColor<To> for Fr where
To: FromColor<Fr>,
impl<Fr, To> IntoColor<To> for Fr where
To: FromColor<Fr>,
fn into_color(self) -> To
fn into_color(self) -> To
Convert into color
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>>::Result where
T: Parameter<Self>,
fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
T: Parameter<Self>,
Sets value
as a parameter of self
.