pub struct SurfaceTexture {
pub texture: Texture,
pub suboptimal: bool,
/* private fields */
}unstable-wgpu-27 only.Expand description
Surface texture that can be rendered to.
Result of a successful call to Surface::get_current_texture.
This type is unique to the Rust API of wgpu. In the WebGPU specification,
the GPUCanvasContext provides
a texture without any additional information.
Fields§
§texture: TextureAccessible view of the frame.
suboptimal: booltrue if the acquired buffer can still be used for rendering,
but should be recreated for maximum performance.
Implementations§
Source§impl SurfaceTexture
impl SurfaceTexture
Sourcepub fn present(self)
pub fn present(self)
Schedule this texture to be presented on the owning surface.
Needs to be called after any work on the texture is scheduled via Queue::submit.
§Platform dependent behavior
On Wayland, present will attach a wl_buffer to the underlying wl_surface and commit the new surface
state. If it is desired to do things such as request a frame callback, scale the surface using the viewporter
or synchronize other double buffered state, then these operations should be done before the call to present.
Trait Implementations§
Source§impl Clone for SurfaceTexture
impl Clone for SurfaceTexture
Source§fn clone(&self) -> SurfaceTexture
fn clone(&self) -> SurfaceTexture
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SurfaceTexture
impl Debug for SurfaceTexture
Source§impl Drop for SurfaceTexture
impl Drop for SurfaceTexture
Source§impl Hash for SurfaceTexture
impl Hash for SurfaceTexture
Source§impl Ord for SurfaceTexture
impl Ord for SurfaceTexture
Source§fn cmp(&self, other: &SurfaceTexture) -> Ordering
fn cmp(&self, other: &SurfaceTexture) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for SurfaceTexture
impl PartialEq for SurfaceTexture
Source§impl PartialOrd for SurfaceTexture
impl PartialOrd for SurfaceTexture
impl Eq for SurfaceTexture
Auto Trait Implementations§
impl Freeze for SurfaceTexture
impl !RefUnwindSafe for SurfaceTexture
impl Send for SurfaceTexture
impl Sync for SurfaceTexture
impl Unpin for SurfaceTexture
impl !UnwindSafe for SurfaceTexture
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> Pointable for T
impl<T> Pointable for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.