public class VkRenderPassCreateInfo
extends org.lwjgl.system.Struct
implements org.lwjgl.system.NativeResource
Care should be taken to avoid a data race here; if any subpasses access attachments with overlapping memory locations, and one of those accesses is a write, a subpass dependency needs to be included between them.
attachment member of any element of pInputAttachments, pColorAttachments, pResolveAttachments or pDepthStencilAttachment, or any element of pPreserveAttachments in any element of pSubpasses is not ATTACHMENT_UNUSED, it must be less than attachmentCountpAttachments with a loadOp equal to ATTACHMENT_LOAD_OP_CLEAR, the first use of that attachment must not specify a layout equal to IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL or IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL.pAttachments with a stencilLoadOp equal to ATTACHMENT_LOAD_OP_CLEAR, the first use of that attachment must not specify a layout equal to IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL or IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL.pAttachments with a loadOp equal to ATTACHMENT_LOAD_OP_CLEAR, the first use of that attachment must not specify a layout equal to IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL.pAttachments with a stencilLoadOp equal to ATTACHMENT_LOAD_OP_CLEAR, the first use of that attachment must not specify a layout equal to IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL.pNext chain includes a VkRenderPassInputAttachmentAspectCreateInfo structure, the subpass member of each element of its pAspectReferences member must be less than subpassCountpNext chain includes a VkRenderPassInputAttachmentAspectCreateInfo structure, the inputAttachmentIndex member of each element of its pAspectReferences member must be less than the value of inputAttachmentCount in the member of pSubpasses identified by its subpass memberpNext chain includes a VkRenderPassInputAttachmentAspectCreateInfo structure, for any element of the pInputAttachments member of any element of pSubpasses where the attachment member is not ATTACHMENT_UNUSED, the aspectMask member of the corresponding element of VkRenderPassInputAttachmentAspectCreateInfo::pAspectReferences must only include aspects that are present in images of the format specified by the element of pAttachments at attachmentpNext chain includes a VkRenderPassMultiviewCreateInfo structure, and its subpassCount member is not zero, that member must be equal to the value of subpassCountpNext chain includes a VkRenderPassMultiviewCreateInfo structure, if its dependencyCount member is not zero, it must be equal to dependencyCountpNext chain includes a VkRenderPassMultiviewCreateInfo structure, for each non-zero element of pViewOffsets, the srcSubpass and dstSubpass members of pDependencies at the same index must not be equalpNext chain includes a VkRenderPassMultiviewCreateInfo structure, for any element of pDependencies with a dependencyFlags member that does not include DEPENDENCY_VIEW_LOCAL_BIT, the corresponding element of the pViewOffsets member of that VkRenderPassMultiviewCreateInfo instance must be 0pNext chain includes a VkRenderPassMultiviewCreateInfo structure, elements of its pViewMasks member must either all be 0, or all not be 0pNext chain includes a VkRenderPassMultiviewCreateInfo structure, and each element of its pViewMasks member is 0, the dependencyFlags member of each element of pDependencies must not include DEPENDENCY_VIEW_LOCAL_BITpNext chain includes a VkRenderPassMultiviewCreateInfo structure, and each element of its pViewMasks member is 0, correlatedViewMaskCount must be 0pNext chain includes a VkRenderPassMultiviewCreateInfo structure, each element of its pViewMask member must not have a bit set at an index greater than or equal to VkPhysicalDeviceLimits::maxFramebufferLayerspDependencies, if the srcSubpass is not SUBPASS_EXTERNAL, all stage flags included in the srcStageMask member of that dependency must be a pipeline stage supported by the pipeline identified by the pipelineBindPoint member of the source subpasspDependencies, if the dstSubpass is not SUBPASS_EXTERNAL, all stage flags included in the dstStageMask member of that dependency must be a pipeline stage supported by the pipeline identified by the pipelineBindPoint member of the destination subpasssrcSubpass member of each element of pDependencies must be less than subpassCountdstSubpass member of each element of pDependencies must be less than subpassCountsType must be STRUCTURE_TYPE_RENDER_PASS_CREATE_INFOpNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkRenderPassFragmentDensityMapCreateInfoEXT, VkRenderPassInputAttachmentAspectCreateInfo, or VkRenderPassMultiviewCreateInfosType member in the pNext chain must be uniqueflags must be 0attachmentCount is not 0, pAttachments must be a valid pointer to an array of attachmentCount valid VkAttachmentDescription structurespSubpasses must be a valid pointer to an array of subpassCount valid VkSubpassDescription structuresdependencyCount is not 0, pDependencies must be a valid pointer to an array of dependencyCount valid VkSubpassDependency structuressubpassCount must be greater than 0VkAttachmentDescription, VkSubpassDependency, VkSubpassDescription, CreateRenderPass
sType – the type of this structure.pNext – NULL or a pointer to an extension-specific structure.flags – reserved for future use.attachmentCount – the number of attachments used by this render pass.pAttachments – a pointer to an array of attachmentCount VkAttachmentDescription structures describing the attachments used by the render pass.subpassCount – the number of subpasses to create.pSubpasses – a pointer to an array of subpassCount VkSubpassDescription structures describing each subpass.dependencyCount – the number of memory dependencies between pairs of subpasses.pDependencies – a pointer to an array of dependencyCount VkSubpassDependency structures describing dependencies between pairs of subpasses.
struct VkRenderPassCreateInfo {
VkStructureType sType;
void const * pNext;
VkRenderPassCreateFlags flags;
uint32_t attachmentCount;
VkAttachmentDescription const * pAttachments;
uint32_t subpassCount;
VkSubpassDescription const * pSubpasses;
uint32_t dependencyCount;
VkSubpassDependency const * pDependencies;
}| Modifier and Type | Class and Description |
|---|---|
static class |
VkRenderPassCreateInfo.Buffer
An array of
VkRenderPassCreateInfo structs. |
| Modifier and Type | Field and Description |
|---|---|
static int |
ALIGNOF
The struct alignment in bytes.
|
static int |
ATTACHMENTCOUNT
The struct member offsets.
|
static int |
DEPENDENCYCOUNT
The struct member offsets.
|
static int |
FLAGS
The struct member offsets.
|
static int |
PATTACHMENTS
The struct member offsets.
|
static int |
PDEPENDENCIES
The struct member offsets.
|
static int |
PNEXT
The struct member offsets.
|
static int |
PSUBPASSES
The struct member offsets.
|
static int |
SIZEOF
The struct size in bytes.
|
static int |
STYPE
The struct member offsets.
|
static int |
SUBPASSCOUNT
The struct member offsets.
|
| Constructor and Description |
|---|
VkRenderPassCreateInfo(java.nio.ByteBuffer container)
Creates a
VkRenderPassCreateInfo instance at the current position of the specified ByteBuffer container. |
| Modifier and Type | Method and Description |
|---|---|
int |
attachmentCount()
Returns the value of the
attachmentCount field. |
static VkRenderPassCreateInfo |
calloc()
Returns a new
VkRenderPassCreateInfo instance allocated with memCalloc. |
static VkRenderPassCreateInfo.Buffer |
calloc(int capacity)
Returns a new
VkRenderPassCreateInfo.Buffer instance allocated with memCalloc. |
static VkRenderPassCreateInfo |
callocStack()
Returns a new
VkRenderPassCreateInfo instance allocated on the thread-local MemoryStack and initializes all its bits to zero. |
static VkRenderPassCreateInfo.Buffer |
callocStack(int capacity)
Returns a new
VkRenderPassCreateInfo.Buffer instance allocated on the thread-local MemoryStack and initializes all its bits to zero. |
static VkRenderPassCreateInfo.Buffer |
callocStack(int capacity,
org.lwjgl.system.MemoryStack stack)
Returns a new
VkRenderPassCreateInfo.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero. |
static VkRenderPassCreateInfo |
callocStack(org.lwjgl.system.MemoryStack stack)
Returns a new
VkRenderPassCreateInfo instance allocated on the specified MemoryStack and initializes all its bits to zero. |
static VkRenderPassCreateInfo |
create()
Returns a new
VkRenderPassCreateInfo instance allocated with BufferUtils. |
static VkRenderPassCreateInfo.Buffer |
create(int capacity)
Returns a new
VkRenderPassCreateInfo.Buffer instance allocated with BufferUtils. |
static VkRenderPassCreateInfo |
create(long address)
Returns a new
VkRenderPassCreateInfo instance for the specified memory address. |
static VkRenderPassCreateInfo.Buffer |
create(long address,
int capacity)
Create a
VkRenderPassCreateInfo.Buffer instance at the specified memory. |
static VkRenderPassCreateInfo |
createSafe(long address)
|
static VkRenderPassCreateInfo.Buffer |
createSafe(long address,
int capacity)
|
int |
dependencyCount()
Returns the value of the
dependencyCount field. |
int |
flags()
Returns the value of the
flags field. |
VkRenderPassCreateInfo |
flags(int value)
Sets the specified value to the
flags field. |
static VkRenderPassCreateInfo |
malloc()
Returns a new
VkRenderPassCreateInfo instance allocated with memAlloc. |
static VkRenderPassCreateInfo.Buffer |
malloc(int capacity)
Returns a new
VkRenderPassCreateInfo.Buffer instance allocated with memAlloc. |
static VkRenderPassCreateInfo |
mallocStack()
Returns a new
VkRenderPassCreateInfo instance allocated on the thread-local MemoryStack. |
static VkRenderPassCreateInfo.Buffer |
mallocStack(int capacity)
Returns a new
VkRenderPassCreateInfo.Buffer instance allocated on the thread-local MemoryStack. |
static VkRenderPassCreateInfo.Buffer |
mallocStack(int capacity,
org.lwjgl.system.MemoryStack stack)
Returns a new
VkRenderPassCreateInfo.Buffer instance allocated on the specified MemoryStack. |
static VkRenderPassCreateInfo |
mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a new
VkRenderPassCreateInfo instance allocated on the specified MemoryStack. |
static int |
nattachmentCount(long struct)
Unsafe version of
attachmentCount(). |
static void |
nattachmentCount(long struct,
int value)
Sets the specified value to the
attachmentCount field of the specified struct. |
static int |
ndependencyCount(long struct)
Unsafe version of
dependencyCount(). |
static void |
ndependencyCount(long struct,
int value)
Sets the specified value to the
dependencyCount field of the specified struct. |
static int |
nflags(long struct)
Unsafe version of
flags(). |
static void |
nflags(long struct,
int value)
Unsafe version of
flags. |
static VkAttachmentDescription.Buffer |
npAttachments(long struct)
Unsafe version of
pAttachments(). |
static void |
npAttachments(long struct,
VkAttachmentDescription.Buffer value)
Unsafe version of
pAttachments. |
static VkSubpassDependency.Buffer |
npDependencies(long struct)
Unsafe version of
pDependencies(). |
static void |
npDependencies(long struct,
VkSubpassDependency.Buffer value)
Unsafe version of
pDependencies. |
static long |
npNext(long struct)
Unsafe version of
pNext(). |
static void |
npNext(long struct,
long value)
Unsafe version of
pNext. |
static VkSubpassDescription.Buffer |
npSubpasses(long struct)
Unsafe version of
pSubpasses(). |
static void |
npSubpasses(long struct,
VkSubpassDescription.Buffer value)
Unsafe version of
pSubpasses. |
static int |
nsType(long struct)
Unsafe version of
sType(). |
static void |
nsType(long struct,
int value)
Unsafe version of
sType. |
static int |
nsubpassCount(long struct)
Unsafe version of
subpassCount(). |
static void |
nsubpassCount(long struct,
int value)
Sets the specified value to the
subpassCount field of the specified struct. |
VkAttachmentDescription.Buffer |
pAttachments()
Returns a
VkAttachmentDescription.Buffer view of the struct array pointed to by the pAttachments field. |
VkRenderPassCreateInfo |
pAttachments(VkAttachmentDescription.Buffer value)
Sets the address of the specified
VkAttachmentDescription.Buffer to the pAttachments field. |
VkSubpassDependency.Buffer |
pDependencies()
Returns a
VkSubpassDependency.Buffer view of the struct array pointed to by the pDependencies field. |
VkRenderPassCreateInfo |
pDependencies(VkSubpassDependency.Buffer value)
Sets the address of the specified
VkSubpassDependency.Buffer to the pDependencies field. |
long |
pNext()
Returns the value of the
pNext field. |
VkRenderPassCreateInfo |
pNext(long value)
Sets the specified value to the
pNext field. |
VkSubpassDescription.Buffer |
pSubpasses()
Returns a
VkSubpassDescription.Buffer view of the struct array pointed to by the pSubpasses field. |
VkRenderPassCreateInfo |
pSubpasses(VkSubpassDescription.Buffer value)
Sets the address of the specified
VkSubpassDescription.Buffer to the pSubpasses field. |
VkRenderPassCreateInfo |
set(int sType,
long pNext,
int flags,
VkAttachmentDescription.Buffer pAttachments,
VkSubpassDescription.Buffer pSubpasses,
VkSubpassDependency.Buffer pDependencies)
Initializes this struct with the specified values.
|
VkRenderPassCreateInfo |
set(VkRenderPassCreateInfo src)
Copies the specified struct data to this struct.
|
int |
sizeof() |
int |
sType()
Returns the value of the
sType field. |
VkRenderPassCreateInfo |
sType(int value)
Sets the specified value to the
sType field. |
int |
subpassCount()
Returns the value of the
subpassCount field. |
static void |
validate(long struct)
Validates pointer members that should not be
NULL. |
static void |
validate(long array,
int count)
Calls
validate(long) for each struct contained in the specified struct array. |
public static final int SIZEOF
public static final int ALIGNOF
public static final int STYPE
public static final int PNEXT
public static final int FLAGS
public static final int ATTACHMENTCOUNT
public static final int PATTACHMENTS
public static final int SUBPASSCOUNT
public static final int PSUBPASSES
public static final int DEPENDENCYCOUNT
public static final int PDEPENDENCIES
public VkRenderPassCreateInfo(java.nio.ByteBuffer container)
VkRenderPassCreateInfo 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.
public int sizeof()
sizeof in class org.lwjgl.system.Structpublic int sType()
sType field.public long pNext()
pNext field.public int flags()
flags field.public int attachmentCount()
attachmentCount field.@Nullable public VkAttachmentDescription.Buffer pAttachments()
VkAttachmentDescription.Buffer view of the struct array pointed to by the pAttachments field.public int subpassCount()
subpassCount field.public VkSubpassDescription.Buffer pSubpasses()
VkSubpassDescription.Buffer view of the struct array pointed to by the pSubpasses field.public int dependencyCount()
dependencyCount field.@Nullable public VkSubpassDependency.Buffer pDependencies()
VkSubpassDependency.Buffer view of the struct array pointed to by the pDependencies field.public VkRenderPassCreateInfo sType(int value)
sType field.public VkRenderPassCreateInfo pNext(long value)
pNext field.public VkRenderPassCreateInfo flags(int value)
flags field.public VkRenderPassCreateInfo pAttachments(@Nullable VkAttachmentDescription.Buffer value)
VkAttachmentDescription.Buffer to the pAttachments field.public VkRenderPassCreateInfo pSubpasses(VkSubpassDescription.Buffer value)
VkSubpassDescription.Buffer to the pSubpasses field.public VkRenderPassCreateInfo pDependencies(@Nullable VkSubpassDependency.Buffer value)
VkSubpassDependency.Buffer to the pDependencies field.public VkRenderPassCreateInfo set(int sType, long pNext, int flags, @Nullable VkAttachmentDescription.Buffer pAttachments, VkSubpassDescription.Buffer pSubpasses, @Nullable VkSubpassDependency.Buffer pDependencies)
public VkRenderPassCreateInfo set(VkRenderPassCreateInfo src)
src - the source structpublic static VkRenderPassCreateInfo malloc()
VkRenderPassCreateInfo instance allocated with memAlloc. The instance must be explicitly freed.public static VkRenderPassCreateInfo calloc()
VkRenderPassCreateInfo instance allocated with memCalloc. The instance must be explicitly freed.public static VkRenderPassCreateInfo create()
VkRenderPassCreateInfo instance allocated with BufferUtils.public static VkRenderPassCreateInfo create(long address)
VkRenderPassCreateInfo instance for the specified memory address.@Nullable public static VkRenderPassCreateInfo createSafe(long address)
public static VkRenderPassCreateInfo.Buffer malloc(int capacity)
VkRenderPassCreateInfo.Buffer instance allocated with memAlloc. The instance must be explicitly freed.capacity - the buffer capacitypublic static VkRenderPassCreateInfo.Buffer calloc(int capacity)
VkRenderPassCreateInfo.Buffer instance allocated with memCalloc. The instance must be explicitly freed.capacity - the buffer capacitypublic static VkRenderPassCreateInfo.Buffer create(int capacity)
VkRenderPassCreateInfo.Buffer instance allocated with BufferUtils.capacity - the buffer capacitypublic static VkRenderPassCreateInfo.Buffer create(long address, int capacity)
VkRenderPassCreateInfo.Buffer instance at the specified memory.address - the memory addresscapacity - the buffer capacity@Nullable public static VkRenderPassCreateInfo.Buffer createSafe(long address, int capacity)
public static VkRenderPassCreateInfo mallocStack()
VkRenderPassCreateInfo instance allocated on the thread-local MemoryStack.public static VkRenderPassCreateInfo callocStack()
VkRenderPassCreateInfo instance allocated on the thread-local MemoryStack and initializes all its bits to zero.public static VkRenderPassCreateInfo mallocStack(org.lwjgl.system.MemoryStack stack)
VkRenderPassCreateInfo instance allocated on the specified MemoryStack.stack - the stack from which to allocatepublic static VkRenderPassCreateInfo callocStack(org.lwjgl.system.MemoryStack stack)
VkRenderPassCreateInfo instance allocated on the specified MemoryStack and initializes all its bits to zero.stack - the stack from which to allocatepublic static VkRenderPassCreateInfo.Buffer mallocStack(int capacity)
VkRenderPassCreateInfo.Buffer instance allocated on the thread-local MemoryStack.capacity - the buffer capacitypublic static VkRenderPassCreateInfo.Buffer callocStack(int capacity)
VkRenderPassCreateInfo.Buffer instance allocated on the thread-local MemoryStack and initializes all its bits to zero.capacity - the buffer capacitypublic static VkRenderPassCreateInfo.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
VkRenderPassCreateInfo.Buffer instance allocated on the specified MemoryStack.stack - the stack from which to allocatecapacity - the buffer capacitypublic static VkRenderPassCreateInfo.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
VkRenderPassCreateInfo.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.stack - the stack from which to allocatecapacity - the buffer capacitypublic static int nsType(long struct)
sType().public static long npNext(long struct)
pNext().public static int nflags(long struct)
flags().public static int nattachmentCount(long struct)
attachmentCount().@Nullable public static VkAttachmentDescription.Buffer npAttachments(long struct)
pAttachments().public static int nsubpassCount(long struct)
subpassCount().public static VkSubpassDescription.Buffer npSubpasses(long struct)
pSubpasses().public static int ndependencyCount(long struct)
dependencyCount().@Nullable public static VkSubpassDependency.Buffer npDependencies(long struct)
pDependencies().public static void nsType(long struct,
int value)
sType.public static void npNext(long struct,
long value)
pNext.public static void nflags(long struct,
int value)
flags.public static void nattachmentCount(long struct,
int value)
attachmentCount field of the specified struct.public static void npAttachments(long struct,
@Nullable
VkAttachmentDescription.Buffer value)
pAttachments.public static void nsubpassCount(long struct,
int value)
subpassCount field of the specified struct.public static void npSubpasses(long struct,
VkSubpassDescription.Buffer value)
pSubpasses.public static void ndependencyCount(long struct,
int value)
dependencyCount field of the specified struct.public static void npDependencies(long struct,
@Nullable
VkSubpassDependency.Buffer value)
pDependencies.public static void validate(long struct)
NULL.struct - the struct to validatepublic static void validate(long array,
int count)
validate(long) for each struct contained in the specified struct array.array - the struct array to validatecount - the number of structs in arrayCopyright LWJGL. All Rights Reserved. License terms.