Top Description Inners Fields Constructors Methods
org.lwjgl.vulkan

public Class VkRenderingAttachmentInfo

extends Struct<VkRenderingAttachmentInfo>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable
Known Direct Subclasses
org.lwjgl.vulkan.VkRenderingAttachmentInfoKHR
Imports
javax.annotation.*, java.nio.*, org.lwjgl.*, org.lwjgl.system.*

Structure specifying attachment information.
Description

Values in imageView are loaded and stored according to the values of loadOp and storeOp, within the render area for each device specified in VkRenderingInfo. If imageView is NULL_HANDLE, other members of this structure are ignored; writes to this attachment will be discarded, and no load, store, or multisample resolve operations will be performed.

If resolveMode is RESOLVE_MODE_NONE, then resolveImageView is ignored. If resolveMode is not RESOLVE_MODE_NONE, and resolveImageView is not NULL_HANDLE, a render pass multisample resolve operation is defined for the attachment subresource.

Note

The resolve mode and store operation are independent; it is valid to write both resolved and unresolved values, and equally valid to discard the unresolved values while writing the resolved ones.

Store and resolve operations are only performed at the end of a render pass instance that does not specify the RENDERING_SUSPENDING_BIT_KHR flag.

Load operations are only performed at the beginning of a render pass instance that does not specify the RENDERING_RESUMING_BIT_KHR flag.

Image contents at the end of a suspended render pass instance remain defined for access by a resuming render pass instance.

Valid Usage
Valid Usage (Implicit)
See Also

VkClearValue, VkRenderingInfo

Layout


struct VkRenderingAttachmentInfo {
    VkStructureType sType;
    void const * pNext;
    VkImageView imageView;
    VkImageLayout imageLayout;
    VkResolveModeFlagBits resolveMode;
    VkImageView resolveImageView;
    VkImageLayout resolveImageLayout;
    VkAttachmentLoadOp loadOp;
    VkAttachmentStoreOp storeOp;
    VkClearValue clearValue;
}

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class

Field Summary

Modifier and TypeField and Description
public static final int
ALIGNOF

The struct alignment in bytes.

public static final int
CLEARVALUE

The struct member offsets.

public static final int
IMAGELAYOUT

The struct member offsets.

public static final int
IMAGEVIEW

The struct member offsets.

public static final int
LOADOP

The struct member offsets.

public static final int
PNEXT

The struct member offsets.

public static final int
RESOLVEIMAGELAYOUT

The struct member offsets.

public static final int
RESOLVEIMAGEVIEW

The struct member offsets.

public static final int
RESOLVEMODE

The struct member offsets.

public static final int
SIZEOF

The struct size in bytes.

public static final int
STOREOP

The struct member offsets.

public static final int
STYPE

The struct member offsets.

Inherited from org.lwjgl.system.Struct:
containerDEFAULT_ALIGN_ASDEFAULT_PACK_ALIGNMENT

Constructor Summary

AccessConstructor and Description
protected
VkRenderingAttachmentInfo(long address, ByteBuffer container)

public
VkRenderingAttachmentInfo(ByteBuffer container)

Creates a VkRenderingAttachmentInfo instance at the current position of the specified ByteBuffer container.

Method Summary

Modifier and TypeMethod and Description
public static VkRenderingAttachmentInfo
calloc()

Returns a new VkRenderingAttachmentInfo instance allocated with memCalloc.

public static VkRenderingAttachmentInfo.Buffer
calloc(int
the buffer capacity
capacity
)

Returns a new VkRenderingAttachmentInfo.Buffer instance allocated with memCalloc.

public static VkRenderingAttachmentInfo
calloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new VkRenderingAttachmentInfo instance allocated on the specified MemoryStack and initializes all its bits to zero.

public static VkRenderingAttachmentInfo.Buffer
calloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new VkRenderingAttachmentInfo.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.

public VkClearValue
clearValue()

a VkClearValue structure defining values used to clear imageView when loadOp is ATTACHMENT_LOAD_OP_CLEAR.

public VkRenderingAttachmentInfo
clearValue(VkClearValue value)

Copies the specified VkClearValue to the clearValue field.

public VkRenderingAttachmentInfo
clearValue(Consumer<VkClearValue> consumer)

Passes the clearValue field to the specified Consumer.

protected VkRenderingAttachmentInfo
create(long
the struct memory address
address
,
ByteBuffer
an optional container buffer, to be referenced strongly by the struct instance.
container
)

Implements abstract org.lwjgl.system.Struct.create.

Similar to the constructor, but returns the exact type of the Struct subclass.
public static VkRenderingAttachmentInfo
create()

Returns a new VkRenderingAttachmentInfo instance allocated with BufferUtils.

public static VkRenderingAttachmentInfo
create(long address)

Returns a new VkRenderingAttachmentInfo instance for the specified memory address.

public static VkRenderingAttachmentInfo.Buffer
create(int
the buffer capacity
capacity
)

Returns a new VkRenderingAttachmentInfo.Buffer instance allocated with BufferUtils.

public static VkRenderingAttachmentInfo.Buffer
create(long
the memory address
address
,
int
the buffer capacity
capacity
)

Create a VkRenderingAttachmentInfo.Buffer instance at the specified memory.

public static VkRenderingAttachmentInfo
createSafe(long address)

Like create, but returns null if address is NULL.

public static VkRenderingAttachmentInfo.Buffer
createSafe(long address, int capacity)

Like create, but returns null if address is NULL.

public int
imageLayout()

the layout that imageView will be in during rendering.

public VkRenderingAttachmentInfo
imageLayout(int value)

Sets the specified value to the imageLayout field.

public long
imageView()

the image view that will be used for rendering.

public VkRenderingAttachmentInfo
imageView(long value)

Sets the specified value to the imageView field.

public int
loadOp()

a VkAttachmentLoadOp value defining the load operation for the attachment.

public VkRenderingAttachmentInfo
loadOp(int value)

Sets the specified value to the loadOp field.

public static VkRenderingAttachmentInfo
malloc()

Returns a new VkRenderingAttachmentInfo instance allocated with memAlloc.

public static VkRenderingAttachmentInfo.Buffer
malloc(int
the buffer capacity
capacity
)

Returns a new VkRenderingAttachmentInfo.Buffer instance allocated with memAlloc.

public static VkRenderingAttachmentInfo
malloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new VkRenderingAttachmentInfo instance allocated on the specified MemoryStack.

public static VkRenderingAttachmentInfo.Buffer
malloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new VkRenderingAttachmentInfo.Buffer instance allocated on the specified MemoryStack.

public static VkClearValue
nclearValue(long struct)

Unsafe version of clearValue.

public static void
nclearValue(long struct, VkClearValue value)

Unsafe version of clearValue.

public static int
nimageLayout(long struct)

Unsafe version of imageLayout.

public static void
nimageLayout(long struct, int value)

Unsafe version of imageLayout.

public static long
nimageView(long struct)

Unsafe version of imageView.

public static void
nimageView(long struct, long value)

Unsafe version of imageView.

public static int
nloadOp(long struct)

Unsafe version of loadOp.

public static void
nloadOp(long struct, int value)

Unsafe version of loadOp.

public static long
npNext(long struct)

Unsafe version of pNext.

public static void
npNext(long struct, long value)

Unsafe version of pNext.

public static int
nresolveImageLayout(long struct)

Unsafe version of resolveImageLayout.

public static void
nresolveImageLayout(long struct, int value)

Unsafe version of resolveImageLayout.

public static long
nresolveImageView(long struct)

Unsafe version of resolveImageView.

public static void
nresolveImageView(long struct, long value)

Unsafe version of resolveImageView.

public static int
nresolveMode(long struct)

Unsafe version of resolveMode.

public static void
nresolveMode(long struct, int value)

Unsafe version of resolveMode.

public static int
nstoreOp(long struct)

Unsafe version of storeOp.

public static void
nstoreOp(long struct, int value)

Unsafe version of storeOp.

public static int
nsType(long struct)

Unsafe version of sType.

public static void
nsType(long struct, int value)

Unsafe version of sType.

public long
pNext()

NULL or a pointer to a structure extending this structure.

public VkRenderingAttachmentInfo
pNext(long value)

Sets the specified value to the pNext field.

public int
resolveImageLayout()

the layout that resolveImageView will be in during rendering.

public VkRenderingAttachmentInfo
resolveImageLayout(int value)

Sets the specified value to the resolveImageLayout field.

public long
resolveImageView()

an image view used to write resolved multisample data at the end of rendering.

public VkRenderingAttachmentInfo
resolveImageView(long value)

Sets the specified value to the resolveImageView field.

public int
resolveMode()

a VkResolveModeFlagBits value defining how multisampled data written to imageView will be resolved.

public VkRenderingAttachmentInfo
resolveMode(int value)

Sets the specified value to the resolveMode field.

public VkRenderingAttachmentInfo
set(int sType, long pNext, long imageView, int imageLayout, int resolveMode, long resolveImageView, int resolveImageLayout, int loadOp, int storeOp, VkClearValue clearValue)

Initializes this struct with the specified values.

public VkRenderingAttachmentInfo

Returns:

this struct
set
(VkRenderingAttachmentInfo
the source struct
src
)

Copies the specified struct data to this struct.

public int
sizeof()

Implements abstract org.lwjgl.system.Struct.sizeof.

Returns sizeof(struct).
public int
storeOp()

a VkAttachmentStoreOp value defining the store operation for the attachment.

public VkRenderingAttachmentInfo
storeOp(int value)

Sets the specified value to the storeOp field.

public int
sType()

a VkStructureType value identifying this structure.

public VkRenderingAttachmentInfo
sType(int value)

Sets the specified value to the sType field.

public VkRenderingAttachmentInfo
Inherited from org.lwjgl.system.Struct:
__array__array__array__checkContainer__checkMalloc__create__getContainer__getContainer__member__member__member__padding__padding__struct__struct__union__unionclearfreeisNullvalidate