pub struct WgpuContext {
pub instance: Instance,
pub adapter: Adapter,
pub device: Arc<Device>,
pub queue: Arc<Queue>,
/* private fields */
}Expand description
wgpu GPU 上下文,包含设备、队列和适配器等信息
Fields§
§instance: Instance§adapter: Adapter§device: Arc<Device>§queue: Arc<Queue>Implementations§
Source§impl WgpuContext
impl WgpuContext
pub fn new( instance: Instance, surface: &Surface<'_>, compositor_gpu: Option<CompositorGpuHint>, ) -> Result<Self>
pub fn new_rejecting_software( instance: Instance, surface: &Surface<'_>, compositor_gpu: Option<CompositorGpuHint>, ) -> Result<Self>
pub fn instance(display: Box<dyn WgpuHasDisplayHandle>) -> Instance
Sourcepub fn check_compatible_with_surface(&self, surface: &Surface<'_>) -> Result<()>
pub fn check_compatible_with_surface(&self, surface: &Surface<'_>) -> Result<()>
检查适配器是否与表面兼容
Sourcepub fn supports_dual_source_blending(&self) -> bool
pub fn supports_dual_source_blending(&self) -> bool
检查是否支持双源混合
Sourcepub fn color_texture_format(&self) -> TextureFormat
pub fn color_texture_format(&self) -> TextureFormat
获取彩色纹理格式
Sourcepub fn device_lost(&self) -> bool
pub fn device_lost(&self) -> bool
返回 GPU 设备是否丢失(例如由于驱动崩溃、挂起/恢复)。 当返回 true 时,需要重新创建上下文。
Auto Trait Implementations§
impl !RefUnwindSafe for WgpuContext
impl !UnwindSafe for WgpuContext
impl Freeze for WgpuContext
impl Send for WgpuContext
impl Sync for WgpuContext
impl Unpin for WgpuContext
impl UnsafeUnpin for WgpuContext
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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>
Converts
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>
Converts
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