Class VkRenderingAttachmentLocationInfo

java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkRenderingAttachmentLocationInfo>
org.lwjgl.vulkan.VkRenderingAttachmentLocationInfo
All Implemented Interfaces:
AutoCloseable, org.lwjgl.system.NativeResource, org.lwjgl.system.Pointer
Direct Known Subclasses:
VkRenderingAttachmentLocationInfoKHR

public class VkRenderingAttachmentLocationInfo extends org.lwjgl.system.Struct<VkRenderingAttachmentLocationInfo> implements org.lwjgl.system.NativeResource
Structure specifying attachment locations.
Description

This structure allows applications to remap the locations of color attachments to different fragment shader output locations.

Each element of pColorAttachmentLocations set to ATTACHMENT_UNUSED will be inaccessible to this pipeline as a color attachment; no location will map to it. Each element of pColorAttachmentLocations set to any other value will map the specified location value to the color attachment specified in the render pass at the corresponding index in the pColorAttachmentLocations array. Any writes to a fragment output location that is not mapped to an attachment must be discarded.

If pColorAttachmentLocations is NULL, it is equivalent to setting each element to its index within the array.

This structure can be included in the pNext chain of a VkGraphicsPipelineCreateInfo structure to set this state for a pipeline. If this structure is not included in the pNext chain of VkGraphicsPipelineCreateInfo, it is equivalent to specifying this structure with the following properties:

This structure can be included in the pNext chain of a VkCommandBufferInheritanceInfo structure to specify inherited state from the primary command buffer. If VkCommandBufferInheritanceInfo::renderPass is not NULL_HANDLE, or COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT is not specified in VkCommandBufferBeginInfo::flags, members of this structure are ignored. If this structure is not included in the pNext chain of VkCommandBufferInheritanceInfo, it is equivalent to specifying this structure with the following properties:

Valid Usage
  • If the dynamicRenderingLocalRead feature is not enabled, and pColorAttachmentLocations is not NULL, each element must be the value of its index within the array
  • Elements of pColorAttachmentLocations that are not ATTACHMENT_UNUSED must each be unique
  • colorAttachmentCount must be less than or equal to maxColorAttachments
  • Each element of pColorAttachmentLocations must be less than maxColorAttachments
Valid Usage (Implicit)
See Also

CmdSetRenderingAttachmentLocations, CmdSetRenderingAttachmentLocationsKHR

Layout


 struct VkRenderingAttachmentLocationInfo {
     VkStructureType sType();
     void const * pNext();
     uint32_t colorAttachmentCount();
     uint32_t const * pColorAttachmentLocations();
 }
  • Field Details

    • SIZEOF

      public static final int SIZEOF
      The struct size in bytes.
    • ALIGNOF

      public static final int ALIGNOF
      The struct alignment in bytes.
    • STYPE

      public static final int STYPE
      The struct member offsets.
    • PNEXT

      public static final int PNEXT
      The struct member offsets.
    • COLORATTACHMENTCOUNT

      public static final int COLORATTACHMENTCOUNT
      The struct member offsets.
    • PCOLORATTACHMENTLOCATIONS

      public static final int PCOLORATTACHMENTLOCATIONS
      The struct member offsets.
  • Constructor Details

    • VkRenderingAttachmentLocationInfo

      public VkRenderingAttachmentLocationInfo(ByteBuffer container)
      Creates a VkRenderingAttachmentLocationInfo instance at the current position of the specified ByteBuffer container. Changes to the buffer's content will be visible to the struct instance and vice versa.

      The created instance holds a strong reference to the container object.

  • Method Details