public class VkRenderPassBeginInfo
extends org.lwjgl.system.Struct
implements org.lwjgl.system.NativeResource
renderArea is the render area that is affected by the render pass instance. The effects of attachment load, store and multisample resolve operations are restricted to the pixels whose x and y coordinates fall within the render area on all attachments. The render area extends to all layers of framebuffer. The application must ensure (using scissor if necessary) that all rendering is contained within the render area. The render area must be contained within the framebuffer dimensions.
When multiview is enabled, the resolve operation at the end of a subpass applies to all views in the view mask.
There may be a performance cost for using a render area smaller than the framebuffer, unless it matches the render area granularity for the render pass.
clearValueCount must be greater than the largest attachment index in renderPass that specifies a loadOp (or stencilLoadOp, if the attachment has a depth/stencil format) of ATTACHMENT_LOAD_OP_CLEARrenderPass must be compatible with the renderPass member of the VkFramebufferCreateInfo structure specified when creating framebuffer.framebuffer was created with a VkFramebufferCreateInfo::flags value that did not include FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR, and the pNext chain includes a VkRenderPassAttachmentBeginInfoKHR structure, its attachmentCount must be zeroframebuffer was created with a VkFramebufferCreateInfo::flags value that included FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR, the attachmentCount of a VkRenderPassAttachmentBeginInfoKHR structure included in the pNext chain must be equal to the value of VkFramebufferAttachmentsCreateInfoKHR::attachmentImageInfoCount used to create framebufferframebuffer was created with a VkFramebufferCreateInfo::flags value that included FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR, each element of the pAttachments member of a VkRenderPassAttachmentBeginInfoKHR structure included in the pNext chain must have been created on the same VkDevice as framebuffer and renderPassframebuffer was created with a VkFramebufferCreateInfo::flags value that included FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR, each element of the pAttachments member of a VkRenderPassAttachmentBeginInfoKHR structure included in the pNext chain must be a VkImageView of an image created with a value of VkImageCreateInfo::flags equal to the flags member of the corresponding element of VkFramebufferAttachmentsCreateInfoKHR::pAttachments used to create framebufferframebuffer was created with a VkFramebufferCreateInfo::flags value that included FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR, each element of the pAttachments member of a VkRenderPassAttachmentBeginInfoKHR structure included in the pNext chain must be a VkImageView of an image created with a value of VkImageCreateInfo::usage equal to the usage member of the corresponding element of VkFramebufferAttachmentsCreateInfoKHR::pAttachments used to create framebufferframebuffer was created with a VkFramebufferCreateInfo::flags value that included FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR, each element of the pAttachments member of a VkRenderPassAttachmentBeginInfoKHR structure included in the pNext chain must be a VkImageView with a width equal to the width member of the corresponding element of VkFramebufferAttachmentsCreateInfoKHR::pAttachments used to create framebufferframebuffer was created with a VkFramebufferCreateInfo::flags value that included FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR, each element of the pAttachments member of a VkRenderPassAttachmentBeginInfoKHR structure included in the pNext chain must be a VkImageView with a height equal to the height member of the corresponding element of VkFramebufferAttachmentsCreateInfoKHR::pAttachments used to create framebufferframebuffer was created with a VkFramebufferCreateInfo::flags value that included FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR, each element of the pAttachments member of a VkRenderPassAttachmentBeginInfoKHR structure included in the pNext chain must be a VkImageView of an image created with a value of VkImageViewCreateInfo::subresourceRange.layerCount equal to the layerCount member of the corresponding element of VkFramebufferAttachmentsCreateInfoKHR::pAttachments used to create framebufferframebuffer was created with a VkFramebufferCreateInfo::flags value that included FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR, each element of the pAttachments member of a VkRenderPassAttachmentBeginInfoKHR structure included in the pNext chain must be a VkImageView of an image created with a value of VkImageFormatListCreateInfoKHR::viewFormatCount equal to the viewFormatCount member of the corresponding element of VkFramebufferAttachmentsCreateInfoKHR::pAttachments used to create framebufferframebuffer was created with a VkFramebufferCreateInfo::flags value that included FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR, each element of the pAttachments member of a VkRenderPassAttachmentBeginInfoKHR structure included in the pNext chain must be a VkImageView of an image created with a set of elements in VkImageFormatListCreateInfoKHR::pViewFormats equal to the set of elements in the pViewFormats member of the corresponding element of VkFramebufferAttachmentsCreateInfoKHR::pAttachments used to create framebufferframebuffer was created with a VkFramebufferCreateInfo::flags value that included FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR, each element of the pAttachments member of a VkRenderPassAttachmentBeginInfoKHR structure included in the pNext chain must be a VkImageView of an image created with a value of VkImageViewCreateInfo::format equal to the corresponding value of VkAttachmentDescription::format in renderPassframebuffer was created with a VkFramebufferCreateInfo::flags value that included FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR, each element of the pAttachments member of a VkRenderPassAttachmentBeginInfoKHR structure included in the pNext chain must be a VkImageView of an image created with a value of VkImageCreateInfo::samples equal to the corresponding value of VkAttachmentDescription::samples in renderPasssType must be STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFOpNext member of any structure (including this one) in the pNext chain must be either NULL or a pointer to a valid instance of VkDeviceGroupRenderPassBeginInfo, VkRenderPassAttachmentBeginInfoKHR, or VkRenderPassSampleLocationsBeginInfoEXTsType member in the pNext chain must be uniquerenderPass must be a valid VkRenderPass handleframebuffer must be a valid VkFramebuffer handleclearValueCount is not 0, pClearValues must be a valid pointer to an array of clearValueCount VkClearValue unionsframebuffer, and renderPass must have been created, allocated, or retrieved from the same VkDeviceVkClearValue, VkRect2D, CmdBeginRenderPass, CmdBeginRenderPass2KHR
sType – the type of this structure.pNext – NULL or a pointer to an extension-specific structure.renderPass – the render pass to begin an instance of.framebuffer – the framebuffer containing the attachments that are used with the render pass.renderArea – the render area that is affected by the render pass instance, and is described in more detail below.clearValueCount – the number of elements in pClearValues.pClearValues – a pointer to an array of clearValueCount VkClearValue structures that contains clear values for each attachment, if the attachment uses a loadOp value of ATTACHMENT_LOAD_OP_CLEAR or if the attachment has a depth/stencil format and uses a stencilLoadOp value of ATTACHMENT_LOAD_OP_CLEAR. The array is indexed by attachment number. Only elements corresponding to cleared attachments are used. Other elements of pClearValues are ignored.
struct VkRenderPassBeginInfo {
VkStructureType sType;
void const * pNext;
VkRenderPass renderPass;
VkFramebuffer framebuffer;
VkRect2D renderArea;
uint32_t clearValueCount;
VkClearValue const * pClearValues;
}| Modifier and Type | Class and Description |
|---|---|
static class |
VkRenderPassBeginInfo.Buffer
An array of
VkRenderPassBeginInfo structs. |
| Modifier and Type | Field and Description |
|---|---|
static int |
ALIGNOF
The struct alignment in bytes.
|
static int |
CLEARVALUECOUNT
The struct member offsets.
|
static int |
FRAMEBUFFER
The struct member offsets.
|
static int |
PCLEARVALUES
The struct member offsets.
|
static int |
PNEXT
The struct member offsets.
|
static int |
RENDERAREA
The struct member offsets.
|
static int |
RENDERPASS
The struct member offsets.
|
static int |
SIZEOF
The struct size in bytes.
|
static int |
STYPE
The struct member offsets.
|
| Constructor and Description |
|---|
VkRenderPassBeginInfo(java.nio.ByteBuffer container)
Creates a
VkRenderPassBeginInfo instance at the current position of the specified ByteBuffer container. |
| Modifier and Type | Method and Description |
|---|---|
static VkRenderPassBeginInfo |
calloc()
Returns a new
VkRenderPassBeginInfo instance allocated with memCalloc. |
static VkRenderPassBeginInfo.Buffer |
calloc(int capacity)
Returns a new
VkRenderPassBeginInfo.Buffer instance allocated with memCalloc. |
static VkRenderPassBeginInfo |
callocStack()
Returns a new
VkRenderPassBeginInfo instance allocated on the thread-local MemoryStack and initializes all its bits to zero. |
static VkRenderPassBeginInfo.Buffer |
callocStack(int capacity)
Returns a new
VkRenderPassBeginInfo.Buffer instance allocated on the thread-local MemoryStack and initializes all its bits to zero. |
static VkRenderPassBeginInfo.Buffer |
callocStack(int capacity,
org.lwjgl.system.MemoryStack stack)
Returns a new
VkRenderPassBeginInfo.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero. |
static VkRenderPassBeginInfo |
callocStack(org.lwjgl.system.MemoryStack stack)
Returns a new
VkRenderPassBeginInfo instance allocated on the specified MemoryStack and initializes all its bits to zero. |
int |
clearValueCount()
Returns the value of the
clearValueCount field. |
static VkRenderPassBeginInfo |
create()
Returns a new
VkRenderPassBeginInfo instance allocated with BufferUtils. |
static VkRenderPassBeginInfo.Buffer |
create(int capacity)
Returns a new
VkRenderPassBeginInfo.Buffer instance allocated with BufferUtils. |
static VkRenderPassBeginInfo |
create(long address)
Returns a new
VkRenderPassBeginInfo instance for the specified memory address. |
static VkRenderPassBeginInfo.Buffer |
create(long address,
int capacity)
Create a
VkRenderPassBeginInfo.Buffer instance at the specified memory. |
static VkRenderPassBeginInfo |
createSafe(long address)
|
static VkRenderPassBeginInfo.Buffer |
createSafe(long address,
int capacity)
|
long |
framebuffer()
Returns the value of the
framebuffer field. |
VkRenderPassBeginInfo |
framebuffer(long value)
Sets the specified value to the
framebuffer field. |
static VkRenderPassBeginInfo |
malloc()
Returns a new
VkRenderPassBeginInfo instance allocated with memAlloc. |
static VkRenderPassBeginInfo.Buffer |
malloc(int capacity)
Returns a new
VkRenderPassBeginInfo.Buffer instance allocated with memAlloc. |
static VkRenderPassBeginInfo |
mallocStack()
Returns a new
VkRenderPassBeginInfo instance allocated on the thread-local MemoryStack. |
static VkRenderPassBeginInfo.Buffer |
mallocStack(int capacity)
Returns a new
VkRenderPassBeginInfo.Buffer instance allocated on the thread-local MemoryStack. |
static VkRenderPassBeginInfo.Buffer |
mallocStack(int capacity,
org.lwjgl.system.MemoryStack stack)
Returns a new
VkRenderPassBeginInfo.Buffer instance allocated on the specified MemoryStack. |
static VkRenderPassBeginInfo |
mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a new
VkRenderPassBeginInfo instance allocated on the specified MemoryStack. |
static int |
nclearValueCount(long struct)
Unsafe version of
clearValueCount(). |
static void |
nclearValueCount(long struct,
int value)
Sets the specified value to the
clearValueCount field of the specified struct. |
static long |
nframebuffer(long struct)
Unsafe version of
framebuffer(). |
static void |
nframebuffer(long struct,
long value)
Unsafe version of
framebuffer. |
static VkClearValue.Buffer |
npClearValues(long struct)
Unsafe version of
pClearValues(). |
static void |
npClearValues(long struct,
VkClearValue.Buffer value)
Unsafe version of
pClearValues. |
static long |
npNext(long struct)
Unsafe version of
pNext(). |
static void |
npNext(long struct,
long value)
Unsafe version of
pNext. |
static VkRect2D |
nrenderArea(long struct)
Unsafe version of
renderArea(). |
static void |
nrenderArea(long struct,
VkRect2D value)
Unsafe version of
renderArea. |
static long |
nrenderPass(long struct)
Unsafe version of
renderPass(). |
static void |
nrenderPass(long struct,
long value)
Unsafe version of
renderPass. |
static int |
nsType(long struct)
Unsafe version of
sType(). |
static void |
nsType(long struct,
int value)
Unsafe version of
sType. |
VkClearValue.Buffer |
pClearValues()
Returns a
VkClearValue.Buffer view of the struct array pointed to by the pClearValues field. |
VkRenderPassBeginInfo |
pClearValues(VkClearValue.Buffer value)
Sets the address of the specified
VkClearValue.Buffer to the pClearValues field. |
long |
pNext()
Returns the value of the
pNext field. |
VkRenderPassBeginInfo |
pNext(long value)
Sets the specified value to the
pNext field. |
VkRect2D |
renderArea()
Returns a
VkRect2D view of the renderArea field. |
VkRenderPassBeginInfo |
renderArea(java.util.function.Consumer<VkRect2D> consumer)
Passes the
renderArea field to the specified Consumer. |
VkRenderPassBeginInfo |
renderArea(VkRect2D value)
Copies the specified
VkRect2D to the renderArea field. |
long |
renderPass()
Returns the value of the
renderPass field. |
VkRenderPassBeginInfo |
renderPass(long value)
Sets the specified value to the
renderPass field. |
VkRenderPassBeginInfo |
set(int sType,
long pNext,
long renderPass,
long framebuffer,
VkRect2D renderArea,
VkClearValue.Buffer pClearValues)
Initializes this struct with the specified values.
|
VkRenderPassBeginInfo |
set(VkRenderPassBeginInfo src)
Copies the specified struct data to this struct.
|
int |
sizeof() |
int |
sType()
Returns the value of the
sType field. |
VkRenderPassBeginInfo |
sType(int value)
Sets the specified value to the
sType 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 RENDERPASS
public static final int FRAMEBUFFER
public static final int RENDERAREA
public static final int CLEARVALUECOUNT
public static final int PCLEARVALUES
public VkRenderPassBeginInfo(java.nio.ByteBuffer container)
VkRenderPassBeginInfo 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 long renderPass()
renderPass field.public long framebuffer()
framebuffer field.public int clearValueCount()
clearValueCount field.@Nullable public VkClearValue.Buffer pClearValues()
VkClearValue.Buffer view of the struct array pointed to by the pClearValues field.public VkRenderPassBeginInfo sType(int value)
sType field.public VkRenderPassBeginInfo pNext(long value)
pNext field.public VkRenderPassBeginInfo renderPass(long value)
renderPass field.public VkRenderPassBeginInfo framebuffer(long value)
framebuffer field.public VkRenderPassBeginInfo renderArea(VkRect2D value)
VkRect2D to the renderArea field.public VkRenderPassBeginInfo renderArea(java.util.function.Consumer<VkRect2D> consumer)
renderArea field to the specified Consumer.public VkRenderPassBeginInfo pClearValues(@Nullable VkClearValue.Buffer value)
VkClearValue.Buffer to the pClearValues field.public VkRenderPassBeginInfo set(int sType, long pNext, long renderPass, long framebuffer, VkRect2D renderArea, @Nullable VkClearValue.Buffer pClearValues)
public VkRenderPassBeginInfo set(VkRenderPassBeginInfo src)
src - the source structpublic static VkRenderPassBeginInfo malloc()
VkRenderPassBeginInfo instance allocated with memAlloc. The instance must be explicitly freed.public static VkRenderPassBeginInfo calloc()
VkRenderPassBeginInfo instance allocated with memCalloc. The instance must be explicitly freed.public static VkRenderPassBeginInfo create()
VkRenderPassBeginInfo instance allocated with BufferUtils.public static VkRenderPassBeginInfo create(long address)
VkRenderPassBeginInfo instance for the specified memory address.@Nullable public static VkRenderPassBeginInfo createSafe(long address)
public static VkRenderPassBeginInfo.Buffer malloc(int capacity)
VkRenderPassBeginInfo.Buffer instance allocated with memAlloc. The instance must be explicitly freed.capacity - the buffer capacitypublic static VkRenderPassBeginInfo.Buffer calloc(int capacity)
VkRenderPassBeginInfo.Buffer instance allocated with memCalloc. The instance must be explicitly freed.capacity - the buffer capacitypublic static VkRenderPassBeginInfo.Buffer create(int capacity)
VkRenderPassBeginInfo.Buffer instance allocated with BufferUtils.capacity - the buffer capacitypublic static VkRenderPassBeginInfo.Buffer create(long address, int capacity)
VkRenderPassBeginInfo.Buffer instance at the specified memory.address - the memory addresscapacity - the buffer capacity@Nullable public static VkRenderPassBeginInfo.Buffer createSafe(long address, int capacity)
public static VkRenderPassBeginInfo mallocStack()
VkRenderPassBeginInfo instance allocated on the thread-local MemoryStack.public static VkRenderPassBeginInfo callocStack()
VkRenderPassBeginInfo instance allocated on the thread-local MemoryStack and initializes all its bits to zero.public static VkRenderPassBeginInfo mallocStack(org.lwjgl.system.MemoryStack stack)
VkRenderPassBeginInfo instance allocated on the specified MemoryStack.stack - the stack from which to allocatepublic static VkRenderPassBeginInfo callocStack(org.lwjgl.system.MemoryStack stack)
VkRenderPassBeginInfo instance allocated on the specified MemoryStack and initializes all its bits to zero.stack - the stack from which to allocatepublic static VkRenderPassBeginInfo.Buffer mallocStack(int capacity)
VkRenderPassBeginInfo.Buffer instance allocated on the thread-local MemoryStack.capacity - the buffer capacitypublic static VkRenderPassBeginInfo.Buffer callocStack(int capacity)
VkRenderPassBeginInfo.Buffer instance allocated on the thread-local MemoryStack and initializes all its bits to zero.capacity - the buffer capacitypublic static VkRenderPassBeginInfo.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
VkRenderPassBeginInfo.Buffer instance allocated on the specified MemoryStack.stack - the stack from which to allocatecapacity - the buffer capacitypublic static VkRenderPassBeginInfo.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
VkRenderPassBeginInfo.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 long nrenderPass(long struct)
renderPass().public static long nframebuffer(long struct)
framebuffer().public static VkRect2D nrenderArea(long struct)
renderArea().public static int nclearValueCount(long struct)
clearValueCount().@Nullable public static VkClearValue.Buffer npClearValues(long struct)
pClearValues().public static void nsType(long struct,
int value)
sType.public static void npNext(long struct,
long value)
pNext.public static void nrenderPass(long struct,
long value)
renderPass.public static void nframebuffer(long struct,
long value)
framebuffer.public static void nrenderArea(long struct,
VkRect2D value)
renderArea.public static void nclearValueCount(long struct,
int value)
clearValueCount field of the specified struct.public static void npClearValues(long struct,
@Nullable
VkClearValue.Buffer value)
pClearValues.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.