Struct wgpu::Device[][src]

pub struct Device { /* fields omitted */ }

Open connection to a graphics and/or compute device.

Responsible for the creation of most rendering and compute resources. These are then used in commands, which are submitted to a Queue.

A device may be requested from an adapter with Adapter::request_device.


impl Device[src]

pub fn poll(&self, maintain: Maintain)[src]

Check for resource cleanups and mapping callbacks.

no-op on the web, device is automatically polled.

pub fn features(&self) -> Features[src]

List all features that may be used with this device.

Functions may panic if you use unsupported features.

pub fn limits(&self) -> Limits[src]

List all limits that were requested of this device.

If any of these limits are exceeded, functions may panic.

pub fn create_shader_module(
    desc: &ShaderModuleDescriptor<'_>
) -> ShaderModule

Creates a shader module from either SPIR-V or WGSL source code.

pub fn create_command_encoder(
    desc: &CommandEncoderDescriptor<'_>
) -> CommandEncoder

Creates an empty CommandEncoder.

pub fn create_render_bundle_encoder(
    desc: &RenderBundleEncoderDescriptor<'_>
) -> RenderBundleEncoder<'_>

Creates an empty RenderBundleEncoder.

pub fn create_bind_group(&self, desc: &BindGroupDescriptor<'_>) -> BindGroup[src]

Creates a new BindGroup.

pub fn create_bind_group_layout(
    desc: &BindGroupLayoutDescriptor<'_>
) -> BindGroupLayout

Creates a BindGroupLayout.

pub fn create_pipeline_layout(
    desc: &PipelineLayoutDescriptor<'_>
) -> PipelineLayout

Creates a PipelineLayout.

pub fn create_render_pipeline(
    desc: &RenderPipelineDescriptor<'_>
) -> RenderPipeline

Creates a RenderPipeline.

pub fn create_compute_pipeline(
    desc: &ComputePipelineDescriptor<'_>
) -> ComputePipeline

Creates a ComputePipeline.

pub fn create_buffer(&self, desc: &BufferDescriptor<'_>) -> Buffer[src]

Creates a Buffer.

pub fn create_texture(&self, desc: &TextureDescriptor<'_>) -> Texture[src]

Creates a new Texture.

desc specifies the general format of the texture.

pub fn create_sampler(&self, desc: &SamplerDescriptor<'_>) -> Sampler[src]

Creates a new Sampler.

desc specifies the behavior of the sampler.

pub fn create_query_set(&self, desc: &QuerySetDescriptor) -> QuerySet[src]

Creates a new QuerySet.

pub fn create_swap_chain(
    surface: &Surface,
    desc: &SwapChainDescriptor
) -> SwapChain

Create a new SwapChain which targets surface.


  • A old SwapChainFrame is still alive referencing an old swapchain.
  • Texture format requested is unsupported on the swap chain.

pub fn on_uncaptured_error(&self, handler: impl UncapturedErrorHandler)[src]

Set a callback for errors that are not handled in error scopes.

pub fn start_capture(&self)[src]

Starts frame capture.

pub fn stop_capture(&self)[src]

Stops frame capture.

Trait Implementations

impl Debug for Device[src]

impl DeviceExt for Device[src]

impl Drop for Device[src]

Auto Trait Implementations

impl !RefUnwindSafe for Device

impl Send for Device

impl Sync for Device

impl Unpin for Device

impl !UnwindSafe for Device

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized

impl<T> Borrow<T> for T where
    T: ?Sized

impl<T> BorrowMut<T> for T where
    T: ?Sized

impl<T> Downcast<T> for T

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Upcast<T> for T