Struct SwapchainBuilder

Source
pub struct SwapchainBuilder { /* private fields */ }

Implementations§

Source§

impl SwapchainBuilder

Source

pub fn new(instance: Arc<Instance>, device: Arc<Device>) -> Self

Source

pub fn desired_format(self, format: SurfaceFormat2KHR<'static>) -> Self

Source

pub fn desired_size(self, size: Extent2D) -> Self

Source

pub fn fallback_format(self, format: SurfaceFormat2KHR<'static>) -> Self

Source

pub fn use_default_format_selection(self) -> Self

Use the default swapchain formats. This is done if no formats are provided.

Default surface format is [ vk::Format::B8G8R8A8_SRGB, vk::ColorSpaceKHR::SRGB_NONLINEAR ]

Source

pub fn desired_present_mode(self, present_mode: PresentModeKHR) -> Self

Source

pub fn fallback_present_mode(self, present_mode: PresentModeKHR) -> Self

Source

pub fn use_default_present_modes(self) -> Self

Source

pub fn desired_min_image_count(self, min_image_count: u32) -> Self

Sets the desired minimum image count for the swapchain. Note that the presentation engine is always free to create more images than requested. You may pass one of the values specified in the BufferMode enum, or any integer value. For instance, if you pass DOUBLE_BUFFERING, the presentation engine is allowed to give you a double buffering setup, triple buffering, or more. This is up to the drivers.

Source

pub fn clipped(self, clipped: bool) -> Self

Set whether the Vulkan implementation is allowed to discard rendering operations that affect regions of the surface that are not visible. Default is true.

§Note:

Applications should use the default of true if:

  • They do not expect to read back the content of presentable images before presenting them or after reacquiring them
  • If their fragment shaders do not have any side effects that require them to run for all pixels in the presentable image.
Source

pub fn create_flags(self, flags: SwapchainCreateFlagsKHR) -> Self

Source

pub fn image_usage_flags(self, flags: ImageUsageFlags) -> Self

Set the bitmask of the image usage for acquired swapchain images. If the surface capabilities cannot allow it, building the swapchain will result in the SwapchainError::required_usage_not_supported error.

Source

pub fn add_image_usage_flags(self, flags: ImageUsageFlags) -> Self

Add a image usage to the bitmask for acquired swapchain images.

Source

pub fn allocation_callbacks( self, allocation_callbacks: AllocationCallbacks<'static>, ) -> Self

Source

pub fn set_old_swapchain(&self, swapchain: Swapchain)

This method should be called with previously created Swapchain.

§Note:

This method will mark old swapchain and destroy it when creating a new one.

Source

pub fn build(&self) -> Result<Swapchain>

Auto Trait Implementations§

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

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

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

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

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

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

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more