Struct VulkanBorrowedTextureDescriptor
- Namespace
- Maplibre.NativeFfi
- Assembly
- Maplibre.NativeFfi.dll
A ring of your Vulkan images, for
MapHandle.AttachVulkanBorrowedTexture().
public readonly record struct VulkanBorrowedTextureDescriptor : IEquatable<VulkanBorrowedTextureDescriptor>
- Implements
- Inherited Members
Remarks
logical_size sets the map's size. physical_width and
physical_height give the images' size in pixels, which is usually
logical_size times the map's scale factor. Each image must have that
size, format, and VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT, and belong to
the context's device. The ring holds up to
MaplibreNative.TextureRingMaxDepth distinct images.
The session uses the images until a replacement or release of the target completes, a detach or release of the session completes, or an abandon of it returns.
See mln_vulkan_borrowed_texture_descriptor in the C API reference.
Constructors
VulkanBorrowedTextureDescriptor(LogicalSize, uint, uint, VulkanContextDescriptor, ImmutableArray<VulkanBorrowedTexture>, uint, uint, VulkanImageOwner)
[SetsRequiredMembers]
public VulkanBorrowedTextureDescriptor(LogicalSize LogicalSize, uint PhysicalWidth, uint PhysicalHeight, VulkanContextDescriptor Context, ImmutableArray<VulkanBorrowedTexture> Textures, uint Format, uint FinalLayout, VulkanImageOwner Owner)
Parameters
LogicalSizeLogicalSizePhysicalWidthuintPhysicalHeightuintContextVulkanContextDescriptorTexturesImmutableArray<VulkanBorrowedTexture>FormatuintFinalLayoutuintOwnerVulkanImageOwner
Properties
Context
public required VulkanContextDescriptor Context { get; init; }
Property Value
FinalLayout
The VkImageLayout that each frame leaves its image in.
public required uint FinalLayout { get; init; }
Property Value
Format
The images' VkFormat.
public required uint Format { get; init; }
Property Value
LogicalSize
public required LogicalSize LogicalSize { get; init; }
Property Value
Owner
public VulkanImageOwner Owner { get; init; }
Property Value
PhysicalHeight
public required uint PhysicalHeight { get; init; }
Property Value
PhysicalWidth
public required uint PhysicalWidth { get; init; }
Property Value
Textures
public required ImmutableArray<VulkanBorrowedTexture> Textures { get; init; }