Class VkDeviceGroupRenderPassBeginInfo
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
- Direct Known Subclasses:
VkDeviceGroupRenderPassBeginInfoKHR
Description
The deviceMask serves several purposes. It is an upper bound on the set of physical devices that can be used during the render pass instance, and the initial device mask when the render pass instance begins. In addition, commands transitioning to the next subpass in a render pass instance and commands ending the render pass instance, and, accordingly render pass load, store, and multisample resolve operations and subpass dependencies corresponding to the render pass instance, are executed on the physical devices included in the device mask provided here.
If deviceRenderAreaCount is not zero, then the elements of pDeviceRenderAreas override the value of VkRenderPassBeginInfo::renderArea, and provide a render area specific to each physical device. These render areas serve the same purpose as VkRenderPassBeginInfo::renderArea, including controlling the region of attachments that are cleared by ATTACHMENT_LOAD_OP_CLEAR and that are resolved into resolve attachments.
If this structure is not present, the render pass instance’s device mask is the value of VkDeviceGroupCommandBufferBeginInfo::deviceMask. If this structure is not present or if deviceRenderAreaCount is zero, VkRenderPassBeginInfo::renderArea is used for all physical devices.
Valid Usage
deviceMaskmust be a valid device mask valuedeviceMaskmust not be zerodeviceMaskmust be a subset of the command buffer’s initial device maskdeviceRenderAreaCountmust either be zero or equal to the number of physical devices in the logical device- The
offset.xmember of any element ofpDeviceRenderAreasmust be greater than or equal to 0 - The
offset.ymember of any element ofpDeviceRenderAreasmust be greater than or equal to 0 - The sum of the
offset.xandextent.widthmembers of any element ofpDeviceRenderAreasmust be less than or equal tomaxFramebufferWidth - The sum of the
offset.yandextent.heightmembers of any element ofpDeviceRenderAreasmust be less than or equal tomaxFramebufferHeight - The
extent.widthmember of any element ofpDeviceRenderAreasmust be greater than 0 - The
extent.heightmember of any element ofpDeviceRenderAreasmust be greater than 0
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO- If
deviceRenderAreaCountis not 0,pDeviceRenderAreasmust be a valid pointer to an array ofdeviceRenderAreaCountVkRect2Dstructures
See Also
Layout
struct VkDeviceGroupRenderPassBeginInfo {
VkStructureType sType();
void const * pNext();
uint32_t deviceMask();
uint32_t deviceRenderAreaCount();
VkRect2D const * pDeviceRenderAreas();
}-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAn array ofVkDeviceGroupRenderPassBeginInfostructs.Nested classes/interfaces inherited from class org.lwjgl.system.Struct
org.lwjgl.system.Struct.StructValidationNested classes/interfaces inherited from interface org.lwjgl.system.Pointer
org.lwjgl.system.Pointer.Default -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intThe struct alignment in bytes.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct size in bytes.static final intThe struct member offsets.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionVkDeviceGroupRenderPassBeginInfo(ByteBuffer container) Creates aVkDeviceGroupRenderPassBeginInfoinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptioncalloc()Returns a newVkDeviceGroupRenderPassBeginInfoinstance allocated withmemCalloc.calloc(int capacity) Returns a newVkDeviceGroupRenderPassBeginInfo.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkDeviceGroupRenderPassBeginInfo.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.calloc(org.lwjgl.system.MemoryStack stack) Returns a newVkDeviceGroupRenderPassBeginInfoinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.Deprecated.callocStack(int capacity) Deprecated.callocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.callocStack(org.lwjgl.system.MemoryStack stack) Deprecated.create()Returns a newVkDeviceGroupRenderPassBeginInfoinstance allocated withBufferUtils.create(int capacity) Returns a newVkDeviceGroupRenderPassBeginInfo.Bufferinstance allocated withBufferUtils.create(long address) Returns a newVkDeviceGroupRenderPassBeginInfoinstance for the specified memory address.create(long address, int capacity) Create aVkDeviceGroupRenderPassBeginInfo.Bufferinstance at the specified memory.static @Nullable VkDeviceGroupRenderPassBeginInfocreateSafe(long address) static @Nullable VkDeviceGroupRenderPassBeginInfo.BuffercreateSafe(long address, int capacity) intthe device mask for the render pass instance.deviceMask(int value) Sets the specified value to thedeviceMask()field.intthe number of elements in thepDeviceRenderAreasarray.malloc()Returns a newVkDeviceGroupRenderPassBeginInfoinstance allocated withmemAlloc.malloc(int capacity) Returns a newVkDeviceGroupRenderPassBeginInfo.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkDeviceGroupRenderPassBeginInfo.Bufferinstance allocated on the specifiedMemoryStack.malloc(org.lwjgl.system.MemoryStack stack) Returns a newVkDeviceGroupRenderPassBeginInfoinstance allocated on the specifiedMemoryStack.Deprecated.mallocStack(int capacity) Deprecated.mallocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.mallocStack(org.lwjgl.system.MemoryStack stack) Deprecated.static intndeviceMask(long struct) Unsafe version ofdeviceMask().static voidndeviceMask(long struct, int value) Unsafe version ofdeviceMask.static intndeviceRenderAreaCount(long struct) Unsafe version ofdeviceRenderAreaCount().static voidndeviceRenderAreaCount(long struct, int value) Sets the specified value to thedeviceRenderAreaCountfield of the specifiedstruct.static @Nullable VkRect2D.BuffernpDeviceRenderAreas(long struct) Unsafe version ofpDeviceRenderAreas().static voidnpDeviceRenderAreas(long struct, @Nullable VkRect2D.Buffer value) Unsafe version ofpDeviceRenderAreas.static longnpNext(long struct) Unsafe version ofpNext().static voidnpNext(long struct, long value) Unsafe version ofpNext.static intnsType(long struct) Unsafe version ofsType().static voidnsType(long struct, int value) Unsafe version ofsType.@Nullable VkRect2D.Buffera pointer to an array ofVkRect2Dstructures defining the render area for each physical device.pDeviceRenderAreas(@Nullable VkRect2D.Buffer value) Sets the address of the specifiedVkRect2D.Bufferto thepDeviceRenderAreas()field.longpNext()NULLor a pointer to a structure extending this structure.pNext(long value) Sets the specified value to thepNext()field.set(int sType, long pNext, int deviceMask, @Nullable VkRect2D.Buffer pDeviceRenderAreas) Initializes this struct with the specified values.Copies the specified struct data to this struct.intsizeof()intsType()aVkStructureTypevalue identifying this structure.sType(int value) Sets the specified value to thesType()field.Sets theSTRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFOvalue to thesType()field.static voidvalidate(long struct) Validates pointer members that should not beNULL.Methods inherited from class org.lwjgl.system.Struct
clear, free, isNull, validate, validateMethods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toStringMethods inherited from interface org.lwjgl.system.NativeResource
close, free
-
Field Details
-
SIZEOF
public static final int SIZEOFThe struct size in bytes. -
ALIGNOF
public static final int ALIGNOFThe struct alignment in bytes. -
STYPE
public static final int STYPEThe struct member offsets. -
PNEXT
public static final int PNEXTThe struct member offsets. -
DEVICEMASK
public static final int DEVICEMASKThe struct member offsets. -
DEVICERENDERAREACOUNT
public static final int DEVICERENDERAREACOUNTThe struct member offsets. -
PDEVICERENDERAREAS
public static final int PDEVICERENDERAREASThe struct member offsets.
-
-
Constructor Details
-
VkDeviceGroupRenderPassBeginInfo
Creates aVkDeviceGroupRenderPassBeginInfoinstance at the current position of the specifiedByteBuffercontainer. 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
-
sizeof
public int sizeof()- Specified by:
sizeofin classorg.lwjgl.system.Struct<VkDeviceGroupRenderPassBeginInfo>
-
sType
public int sType()aVkStructureTypevalue identifying this structure. -
pNext
public long pNext()NULLor a pointer to a structure extending this structure. -
deviceMask
public int deviceMask()the device mask for the render pass instance. -
deviceRenderAreaCount
public int deviceRenderAreaCount()the number of elements in thepDeviceRenderAreasarray. -
pDeviceRenderAreas
a pointer to an array ofVkRect2Dstructures defining the render area for each physical device. -
sType
Sets the specified value to thesType()field. -
sType$Default
Sets theSTRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFOvalue to thesType()field. -
pNext
Sets the specified value to thepNext()field. -
deviceMask
Sets the specified value to thedeviceMask()field. -
pDeviceRenderAreas
Sets the address of the specifiedVkRect2D.Bufferto thepDeviceRenderAreas()field. -
set
public VkDeviceGroupRenderPassBeginInfo set(int sType, long pNext, int deviceMask, @Nullable VkRect2D.Buffer pDeviceRenderAreas) Initializes this struct with the specified values. -
set
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
Returns a newVkDeviceGroupRenderPassBeginInfoinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkDeviceGroupRenderPassBeginInfoinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkDeviceGroupRenderPassBeginInfoinstance allocated withBufferUtils. -
create
Returns a newVkDeviceGroupRenderPassBeginInfoinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVkDeviceGroupRenderPassBeginInfo.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkDeviceGroupRenderPassBeginInfo.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkDeviceGroupRenderPassBeginInfo.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aVkDeviceGroupRenderPassBeginInfo.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
public static @Nullable VkDeviceGroupRenderPassBeginInfo.Buffer createSafe(long address, int capacity) -
mallocStack
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead. -
callocStack
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)instead. -
mallocStack
@Deprecated public static VkDeviceGroupRenderPassBeginInfo mallocStack(org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead. -
callocStack
@Deprecated public static VkDeviceGroupRenderPassBeginInfo callocStack(org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usecalloc(MemoryStack)instead. -
mallocStack
Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)instead. -
callocStack
Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead. -
mallocStack
@Deprecated public static VkDeviceGroupRenderPassBeginInfo.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)instead. -
callocStack
@Deprecated public static VkDeviceGroupRenderPassBeginInfo.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead. -
malloc
Returns a newVkDeviceGroupRenderPassBeginInfoinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newVkDeviceGroupRenderPassBeginInfoinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkDeviceGroupRenderPassBeginInfo.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkDeviceGroupRenderPassBeginInfo.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static VkDeviceGroupRenderPassBeginInfo.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkDeviceGroupRenderPassBeginInfo.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
nsType
public static int nsType(long struct) Unsafe version ofsType(). -
npNext
public static long npNext(long struct) Unsafe version ofpNext(). -
ndeviceMask
public static int ndeviceMask(long struct) Unsafe version ofdeviceMask(). -
ndeviceRenderAreaCount
public static int ndeviceRenderAreaCount(long struct) Unsafe version ofdeviceRenderAreaCount(). -
npDeviceRenderAreas
Unsafe version ofpDeviceRenderAreas(). -
nsType
public static void nsType(long struct, int value) Unsafe version ofsType. -
npNext
public static void npNext(long struct, long value) Unsafe version ofpNext. -
ndeviceMask
public static void ndeviceMask(long struct, int value) Unsafe version ofdeviceMask. -
ndeviceRenderAreaCount
public static void ndeviceRenderAreaCount(long struct, int value) Sets the specified value to thedeviceRenderAreaCountfield of the specifiedstruct. -
npDeviceRenderAreas
Unsafe version ofpDeviceRenderAreas. -
validate
public static void validate(long struct) Validates pointer members that should not beNULL.- Parameters:
struct- the struct to validate
-