pub struct SwapchainBuilder { /* private fields */ }
Implementations§
Source§impl SwapchainBuilder
impl SwapchainBuilder
pub fn new(instance: Arc<Instance>, device: Arc<Device>) -> Self
pub fn desired_format(self, format: SurfaceFormat2KHR<'static>) -> Self
pub fn desired_size(self, size: Extent2D) -> Self
pub fn fallback_format(self, format: SurfaceFormat2KHR<'static>) -> Self
Sourcepub fn use_default_format_selection(self) -> Self
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
]
pub fn desired_present_mode(self, present_mode: PresentModeKHR) -> Self
pub fn fallback_present_mode(self, present_mode: PresentModeKHR) -> Self
pub fn use_default_present_modes(self) -> Self
Sourcepub fn desired_min_image_count(self, min_image_count: u32) -> Self
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.
Sourcepub fn clipped(self, clipped: bool) -> Self
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.
pub fn create_flags(self, flags: SwapchainCreateFlagsKHR) -> Self
Sourcepub fn image_usage_flags(self, flags: ImageUsageFlags) -> Self
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.
Sourcepub fn add_image_usage_flags(self, flags: ImageUsageFlags) -> Self
pub fn add_image_usage_flags(self, flags: ImageUsageFlags) -> Self
Add a image usage to the bitmask for acquired swapchain images.