Class VkFramebufferCreateInfo
- All Implemented Interfaces:
AutoCloseable
,NativeResource
,Pointer
Description
It is legal for a subpass to use no color or depth/stencil attachments, either because it has no attachment references or because all of them are ATTACHMENT_UNUSED
. This kind of subpass can use shader side effects such as image stores and atomics to produce an output. In this case, the subpass continues to use the width
, height
, and layers
of the framebuffer to define the dimensions of the rendering area, and the rasterizationSamples
from each pipeline’s VkPipelineMultisampleStateCreateInfo
to define the number of samples used in rasterization; however, if VkPhysicalDeviceFeatures
::variableMultisampleRate
is FALSE
, then all pipelines to be bound with the subpass must have the same value for VkPipelineMultisampleStateCreateInfo
::rasterizationSamples
. In all such cases, rasterizationSamples
must be a bit value that is set in VkPhysicalDeviceLimits
::framebufferNoAttachmentsSampleCounts
.
Valid Usage
attachmentCount
must be equal to the attachment count specified inrenderPass
- If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
andattachmentCount
is not 0,pAttachments
must be a valid pointer to an array ofattachmentCount
validVkImageView
handles - If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, each element ofpAttachments
that is used as a color attachment or resolve attachment byrenderPass
must have been created with ausage
value includingIMAGE_USAGE_COLOR_ATTACHMENT_BIT
- If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, each element ofpAttachments
that is used as a depth/stencil attachment byrenderPass
must have been created with ausage
value includingIMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
- If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, each element ofpAttachments
that is used as a depth/stencil resolve attachment byrenderPass
must have been created with ausage
value includingIMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
- If
renderpass
is notNULL_HANDLE
,flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, each element ofpAttachments
that is used as an input attachment byrenderPass
must have been created with ausage
value includingIMAGE_USAGE_INPUT_ATTACHMENT_BIT
- Each element of
pAttachments
that is used as a fragment density map attachment byrenderPass
must not have been created with aflags
value includingIMAGE_CREATE_SUBSAMPLED_BIT_EXT
- If
renderPass
has a fragment density map attachment and thefragmentDensityMapNonSubsampledImages
feature is not enabled, each element ofpAttachments
must have been created with aflags
value includingIMAGE_CREATE_SUBSAMPLED_BIT_EXT
unless that element is the fragment density map attachment - If
renderPass
was created with fragment density map offsets other than(0,0)
, each element ofpAttachments
must have been created with aflags
value includingIMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM
- If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, each element ofpAttachments
must have been created with aVkFormat
value that matches theVkFormat
specified by the correspondingVkAttachmentDescription
inrenderPass
- If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, each element ofpAttachments
must have been created with asamples
value that matches thesamples
value specified by the correspondingVkAttachmentDescription
inrenderPass
- If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, each element ofpAttachments
that is used as an input, color, resolve, or depth/stencil attachment byrenderPass
must have been created with aVkImageCreateInfo
::extent.width
greater than or equal towidth
- If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, each element ofpAttachments
that is used as an input, color, resolve, or depth/stencil attachment byrenderPass
must have been created with aVkImageCreateInfo
::extent.height
greater than or equal toheight
- If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, each element ofpAttachments
that is used as an input, color, resolve, or depth/stencil attachment byrenderPass
must have been created with aVkImageViewCreateInfo
::subresourceRange.layerCount
greater than or equal tolayers
- If
renderPass
was specified with non-zero view masks, each element ofpAttachments
that is used as an input, color, resolve, or depth/stencil attachment byrenderPass
must have alayerCount
greater than the index of the most significant bit set in any of those view masks - Each element of
pAttachments
that is referenced byfragmentDensityMapAttachment
must have alayerCount
equal to 1 or ifrenderPass
was specified with non-zero view masks, greater than the index of the most significant bit set in any of those view masks - If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, an element ofpAttachments
that is referenced byfragmentDensityMapAttachment
must have a width at least as large asceil(width / maxFragmentDensityTexelSizewidth)
- If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, an element ofpAttachments
that is referenced byfragmentDensityMapAttachment
must have a height at least as large asceil(height / maxFragmentDensityTexelSizeheight)
- If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, andrenderPass
was specified with non-zero view masks, each element ofpAttachments
that is used as a fragment shading rate attachment byrenderPass
must have alayerCount
that is either 1, or greater than the index of the most significant bit set in any of those view masks - If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, andrenderPass
was not specified with non-zero view masks, each element ofpAttachments
that is used as a fragment shading rate attachment byrenderPass
must have alayerCount
that is either 1, or greater thanlayers
- If
renderPass
was specified with non-zero view masks, each element ofpAttachments
that is used as a fragment shading rate attachment must have alayerCount
equal to 1 or greater than the index of the most significant bit set in any of those view masks - If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, an element ofpAttachments
that is used as a fragment shading rate attachment must have a width at least as large as⌈width / texelWidth⌉
, wheretexelWidth
is the largest value ofshadingRateAttachmentTexelSize.width
in aVkFragmentShadingRateAttachmentInfoKHR
which references that attachment - If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, an element ofpAttachments
that is used as a fragment shading rate attachment must have a height at least as large as⌈height / texelHeight⌉
, wheretexelHeight
is the largest value ofshadingRateAttachmentTexelSize.height
in aVkFragmentShadingRateAttachmentInfoKHR
which references that attachment - If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, each element ofpAttachments
must only specify a single mip level - If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, each element ofpAttachments
must have been created with the identity swizzle width
must be greater than 0width
must be less than or equal tomaxFramebufferWidth
height
must be greater than 0height
must be less than or equal tomaxFramebufferHeight
layers
must be greater than 0layers
must be less than or equal tomaxFramebufferLayers
- If
renderPass
was specified with non-zero view masks,layers
must be 1 - If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, each element ofpAttachments
that is a 2D or 2D array image view taken from a 3D image must not be a depth/stencil format - If the
imagelessFramebuffer
feature is not enabled,flags
must not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
- If
flags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, thepNext
chain must include aVkFramebufferAttachmentsCreateInfo
structure - If
flags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, theattachmentImageInfoCount
member of aVkFramebufferAttachmentsCreateInfo
structure in thepNext
chain must be equal to either zero orattachmentCount
- If
flags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, thewidth
member of any element of thepAttachmentImageInfos
member of aVkFramebufferAttachmentsCreateInfo
structure in thepNext
chain that is used as an input, color, resolve or depth/stencil attachment inrenderPass
must be greater than or equal towidth
- If
flags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, theheight
member of any element of thepAttachmentImageInfos
member of aVkFramebufferAttachmentsCreateInfo
structure in thepNext
chain that is used as an input, color, resolve or depth/stencil attachment inrenderPass
must be greater than or equal toheight
- If
flags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, thewidth
member of any element of thepAttachmentImageInfos
member of aVkFramebufferAttachmentsCreateInfo
structure in thepNext
chain that is referenced byVkRenderPassFragmentDensityMapCreateInfoEXT
::fragmentDensityMapAttachment
inrenderPass
must be greater than or equal toceil(width / maxFragmentDensityTexelSizewidth)
- If
flags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, theheight
member of any element of thepAttachmentImageInfos
member of aVkFramebufferAttachmentsCreateInfo
structure included in thepNext
chain that is referenced byVkRenderPassFragmentDensityMapCreateInfoEXT
::fragmentDensityMapAttachment
inrenderPass
must be greater than or equal toceil(height / maxFragmentDensityTexelSizeheight)
- If
flags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, thewidth
member of any element of thepAttachmentImageInfos
member of aVkFramebufferAttachmentsCreateInfo
structure in thepNext
chain that is used as a fragment shading rate attachment must be greater than or equal to⌈width / texelWidth⌉
, wheretexelWidth
is the largest value ofshadingRateAttachmentTexelSize.width
in aVkFragmentShadingRateAttachmentInfoKHR
which references that attachment - If
flags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, theheight
member of any element of thepAttachmentImageInfos
member of aVkFramebufferAttachmentsCreateInfo
structure in thepNext
chain that is used as a fragment shading rate attachment must be greater than or equal to⌈height / texelHeight⌉
, wheretexelHeight
is the largest value ofshadingRateAttachmentTexelSize.height
in aVkFragmentShadingRateAttachmentInfoKHR
which references that attachment - If
flags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, thelayerCount
member of any element of thepAttachmentImageInfos
member of aVkFramebufferAttachmentsCreateInfo
structure in thepNext
chain that is used as a fragment shading rate attachment must be either 1, or greater than or equal tolayers
- If
flags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
andrenderPass
was specified with non-zero view masks, each element ofpAttachments
that is used as a fragment shading rate attachment byrenderPass
must have alayerCount
that is either 1, or greater than the index of the most significant bit set in any of those view masks - If multiview is enabled for
renderPass
andflags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, thelayerCount
member of any element of thepAttachmentImageInfos
member of aVkFramebufferAttachmentsCreateInfo
structure included in thepNext
chain used as an input, color, resolve, or depth/stencil attachment inrenderPass
must be greater than the maximum bit index set in the view mask in the subpasses in which it is used inrenderPass
- If multiview is not enabled for
renderPass
andflags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, thelayerCount
member of any element of thepAttachmentImageInfos
member of aVkFramebufferAttachmentsCreateInfo
structure included in thepNext
chain used as an input, color, resolve, or depth/stencil attachment inrenderPass
must be greater than or equal tolayers
- If
flags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, theusage
member of any element of thepAttachmentImageInfos
member of aVkFramebufferAttachmentsCreateInfo
structure included in thepNext
chain that refers to an attachment used as a color attachment or resolve attachment byrenderPass
must includeIMAGE_USAGE_COLOR_ATTACHMENT_BIT
- If
flags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, theusage
member of any element of thepAttachmentImageInfos
member of aVkFramebufferAttachmentsCreateInfo
structure included in thepNext
chain that refers to an attachment used as a depth/stencil attachment byrenderPass
must includeIMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
- If
flags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, theusage
member of any element of thepAttachmentImageInfos
member of aVkFramebufferAttachmentsCreateInfo
structure included in thepNext
chain that refers to an attachment used as a depth/stencil resolve attachment byrenderPass
must includeIMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT
- If
flags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, theusage
member of any element of thepAttachmentImageInfos
member of aVkFramebufferAttachmentsCreateInfo
structure included in thepNext
chain that refers to an attachment used as an input attachment byrenderPass
must includeIMAGE_USAGE_INPUT_ATTACHMENT_BIT
- If
flags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, at least one element of thepViewFormats
member of any element of thepAttachmentImageInfos
member of aVkFramebufferAttachmentsCreateInfo
structure included in thepNext
chain must be equal to the corresponding value ofVkAttachmentDescription
::format
used to createrenderPass
- If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, each element ofpAttachments
must have been created withVkImageViewCreateInfo
::viewType
not equal toIMAGE_VIEW_TYPE_3D
- If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, each element ofpAttachments
that is used as a fragment shading rate attachment byrenderPass
must have been created with ausage
value includingIMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR
- If
flags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, theusage
member of any element of thepAttachmentImageInfos
member of aVkFramebufferAttachmentsCreateInfo
structure included in thepNext
chain that refers to an attachment used as a fragment shading rate attachment byrenderPass
must includeIMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR
- If multisampled-render-to-single-sampled is enabled for any subpass, all color, depth/stencil and input attachments used in that subpass which have
VkAttachmentDescription
::samples
orVkAttachmentDescription2
::samples
equal toSAMPLE_COUNT_1_BIT
must have been created withIMAGE_CREATE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT
in theirVkImageCreateInfo
::flags
- If multisampled-render-to-single-sampled is enabled for any subpass, all color, depth/stencil and input attachments used in that subpass which have
VkAttachmentDescription
::samples
orVkAttachmentDescription2
::samples
equal toSAMPLE_COUNT_1_BIT
must have a format that supports the sample count specified inVkMultisampledRenderToSingleSampledInfoEXT
::rasterizationSamples
- If the
nullColorAttachmentWithExternalFormatResolve
isFALSE
, andflags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, the format of the color attachment for each subpass inrenderPass
that includes an external format image as a resolve attachment must have a format equal to the value ofVkAndroidHardwareBufferFormatResolvePropertiesANDROID
::colorAttachmentFormat
as returned by a call toGetAndroidHardwareBufferPropertiesANDROID
for the Android hardware buffer that was used to create the image view use as its resolve attachment - If
flags
does not includeFRAMEBUFFER_CREATE_IMAGELESS_BIT
, then if an element ofpAttachments
has a format ofFORMAT_UNDEFINED
, it must have been created with aVkExternalFormatANDROID
::externalFormat
value identical to that provided in theVkExternalFormatANDROID
::externalFormat
specified by the correspondingVkAttachmentDescription2
inrenderPass
Valid Usage (Implicit)
sType
must beSTRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO
pNext
must beNULL
or a pointer to a valid instance ofVkFramebufferAttachmentsCreateInfo
- The
sType
value of each struct in thepNext
chain must be unique flags
must be a valid combination ofVkFramebufferCreateFlagBits
valuesrenderPass
must be a validVkRenderPass
handle- Both of
renderPass
, and the elements ofpAttachments
that are valid handles of non-ignored parameters must have been created, allocated, or retrieved from the sameVkDevice
See Also
Layout
struct VkFramebufferCreateInfo {
VkStructureType sType()
;
void const * pNext()
;
VkFramebufferCreateFlags flags()
;
VkRenderPass renderPass()
;
uint32_t attachmentCount()
;
VkImageView const * pAttachments()
;
uint32_t width()
;
uint32_t height()
;
uint32_t layers()
;
}
-
Nested Class Summary
Nested classes/interfaces inherited from class org.lwjgl.system.Struct
Struct.StructValidation
Nested classes/interfaces inherited from interface org.lwjgl.system.Pointer
Pointer.Default
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
The struct alignment in bytes.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct member offsets.static final int
The struct size in bytes.static final int
The struct member offsets.static final int
The struct member offsets.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE
-
Constructor Summary
ConstructorDescriptionVkFramebufferCreateInfo
(ByteBuffer container) Creates aVkFramebufferCreateInfo
instance at the current position of the specifiedByteBuffer
container. -
Method Summary
Modifier and TypeMethodDescriptionint
the number of attachments.attachmentCount
(int value) Sets the specified value to theattachmentCount()
field.static VkFramebufferCreateInfo
calloc()
Returns a newVkFramebufferCreateInfo
instance allocated withmemCalloc
.calloc
(int capacity) Returns a newVkFramebufferCreateInfo.Buffer
instance allocated withmemCalloc
.calloc
(int capacity, MemoryStack stack) Returns a newVkFramebufferCreateInfo.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkFramebufferCreateInfo
calloc
(MemoryStack stack) Returns a newVkFramebufferCreateInfo
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkFramebufferCreateInfo
Deprecated.callocStack
(int capacity) Deprecated.callocStack
(int capacity, MemoryStack stack) Deprecated.static VkFramebufferCreateInfo
callocStack
(MemoryStack stack) Deprecated.static VkFramebufferCreateInfo
create()
Returns a newVkFramebufferCreateInfo
instance allocated withBufferUtils
.create
(int capacity) Returns a newVkFramebufferCreateInfo.Buffer
instance allocated withBufferUtils
.static VkFramebufferCreateInfo
create
(long address) Returns a newVkFramebufferCreateInfo
instance for the specified memory address.create
(long address, int capacity) Create aVkFramebufferCreateInfo.Buffer
instance at the specified memory.static VkFramebufferCreateInfo
createSafe
(long address) createSafe
(long address, int capacity) int
flags()
a bitmask ofVkFramebufferCreateFlagBits
flags
(int value) Sets the specified value to theflags()
field.int
height()
seewidth
height
(int value) Sets the specified value to theheight()
field.int
layers()
seewidth
layers
(int value) Sets the specified value to thelayers()
field.static VkFramebufferCreateInfo
malloc()
Returns a newVkFramebufferCreateInfo
instance allocated withmemAlloc
.malloc
(int capacity) Returns a newVkFramebufferCreateInfo.Buffer
instance allocated withmemAlloc
.malloc
(int capacity, MemoryStack stack) Returns a newVkFramebufferCreateInfo.Buffer
instance allocated on the specifiedMemoryStack
.static VkFramebufferCreateInfo
malloc
(MemoryStack stack) Returns a newVkFramebufferCreateInfo
instance allocated on the specifiedMemoryStack
.static VkFramebufferCreateInfo
Deprecated.mallocStack
(int capacity) Deprecated.mallocStack
(int capacity, MemoryStack stack) Deprecated.static VkFramebufferCreateInfo
mallocStack
(MemoryStack stack) Deprecated.static int
nattachmentCount
(long struct) Unsafe version ofattachmentCount()
.static void
nattachmentCount
(long struct, int value) Sets the specified value to theattachmentCount
field of the specifiedstruct
.static int
nflags
(long struct) Unsafe version offlags()
.static void
nflags
(long struct, int value) Unsafe version offlags
.static int
nheight
(long struct) Unsafe version ofheight()
.static void
nheight
(long struct, int value) Unsafe version ofheight
.static int
nlayers
(long struct) Unsafe version oflayers()
.static void
nlayers
(long struct, int value) Unsafe version oflayers
.static LongBuffer
npAttachments
(long struct) Unsafe version ofpAttachments
.static void
npAttachments
(long struct, LongBuffer value) Unsafe version ofpAttachments
.static long
npNext
(long struct) Unsafe version ofpNext()
.static void
npNext
(long struct, long value) Unsafe version ofpNext
.static long
nrenderPass
(long struct) Unsafe version ofrenderPass()
.static void
nrenderPass
(long struct, long value) Unsafe version ofrenderPass
.static int
nsType
(long struct) Unsafe version ofsType()
.static void
nsType
(long struct, int value) Unsafe version ofsType
.static int
nwidth
(long struct) Unsafe version ofwidth()
.static void
nwidth
(long struct, int value) Unsafe version ofwidth
.a pointer to an array ofVkImageView
handles, each of which will be used as the corresponding attachment in a render pass instance.pAttachments
(LongBuffer value) Sets the address of the specifiedLongBuffer
to thepAttachments()
field.long
pNext()
NULL
or a pointer to a structure extending this structure.pNext
(long value) Sets the specified value to thepNext()
field.Prepends the specifiedVkFramebufferAttachmentsCreateInfo
value to thepNext
chain.Prepends the specifiedVkFramebufferAttachmentsCreateInfoKHR
value to thepNext
chain.long
a render pass defining what render passes the framebuffer will be compatible with.renderPass
(long value) Sets the specified value to therenderPass()
field.set
(int sType, long pNext, int flags, long renderPass, int attachmentCount, LongBuffer pAttachments, int width, int height, int layers) Initializes this struct with the specified values.Copies the specified struct data to this struct.int
sizeof()
Returnssizeof(struct)
.int
sType()
aVkStructureType
value identifying this structure.sType
(int value) Sets the specified value to thesType()
field.Sets theSTRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO
value to thesType()
field.int
width()
width
,height
andlayers
define the dimensions of the framebuffer.width
(int value) Sets the specified value to thewidth()
field.Methods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toString
Methods 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. -
FLAGS
public static final int FLAGSThe struct member offsets. -
RENDERPASS
public static final int RENDERPASSThe struct member offsets. -
ATTACHMENTCOUNT
public static final int ATTACHMENTCOUNTThe struct member offsets. -
PATTACHMENTS
public static final int PATTACHMENTSThe struct member offsets. -
WIDTH
public static final int WIDTHThe struct member offsets. -
HEIGHT
public static final int HEIGHTThe struct member offsets. -
LAYERS
public static final int LAYERSThe struct member offsets.
-
-
Constructor Details
-
VkFramebufferCreateInfo
Creates aVkFramebufferCreateInfo
instance at the current position of the specifiedByteBuffer
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
-
sizeof
public int sizeof()Description copied from class:Struct
Returnssizeof(struct)
.- Specified by:
sizeof
in classStruct<VkFramebufferCreateInfo>
-
sType
public int sType()aVkStructureType
value identifying this structure. -
pNext
public long pNext()NULL
or a pointer to a structure extending this structure. -
flags
public int flags()a bitmask ofVkFramebufferCreateFlagBits
-
renderPass
public long renderPass()a render pass defining what render passes the framebuffer will be compatible with. See Render Pass Compatibility for details. -
attachmentCount
public int attachmentCount()the number of attachments. -
pAttachments
a pointer to an array ofVkImageView
handles, each of which will be used as the corresponding attachment in a render pass instance. Ifflags
includesFRAMEBUFFER_CREATE_IMAGELESS_BIT
, this parameter is ignored. -
width
public int width()width
,height
andlayers
define the dimensions of the framebuffer. If the render pass uses multiview, thenlayers
must be one and each attachment requires a number of layers that is greater than the maximum bit index set in the view mask in the subpasses in which it is used. -
height
public int height()seewidth
-
layers
public int layers()seewidth
-
sType
Sets the specified value to thesType()
field. -
sType$Default
Sets theSTRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO
value to thesType()
field. -
pNext
Sets the specified value to thepNext()
field. -
pNext
Prepends the specifiedVkFramebufferAttachmentsCreateInfo
value to thepNext
chain. -
pNext
Prepends the specifiedVkFramebufferAttachmentsCreateInfoKHR
value to thepNext
chain. -
flags
Sets the specified value to theflags()
field. -
renderPass
Sets the specified value to therenderPass()
field. -
attachmentCount
Sets the specified value to theattachmentCount()
field. -
pAttachments
Sets the address of the specifiedLongBuffer
to thepAttachments()
field. -
width
Sets the specified value to thewidth()
field. -
height
Sets the specified value to theheight()
field. -
layers
Sets the specified value to thelayers()
field. -
set
public VkFramebufferCreateInfo set(int sType, long pNext, int flags, long renderPass, int attachmentCount, @Nullable LongBuffer pAttachments, int width, int height, int layers) 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 newVkFramebufferCreateInfo
instance allocated withmemAlloc
. The instance must be explicitly freed. -
calloc
Returns a newVkFramebufferCreateInfo
instance allocated withmemCalloc
. The instance must be explicitly freed. -
create
Returns a newVkFramebufferCreateInfo
instance allocated withBufferUtils
. -
create
Returns a newVkFramebufferCreateInfo
instance for the specified memory address. -
createSafe
-
malloc
Returns a newVkFramebufferCreateInfo.Buffer
instance allocated withmemAlloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
calloc
Returns a newVkFramebufferCreateInfo.Buffer
instance allocated withmemCalloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
create
Returns a newVkFramebufferCreateInfo.Buffer
instance allocated withBufferUtils
.- Parameters:
capacity
- the buffer capacity
-
create
Create aVkFramebufferCreateInfo.Buffer
instance at the specified memory.- Parameters:
address
- the memory addresscapacity
- the buffer capacity
-
createSafe
-
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.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)
instead. -
callocStack
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 VkFramebufferCreateInfo.Buffer mallocStack(int capacity, MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usemalloc(int, MemoryStack)
instead. -
callocStack
@Deprecated public static VkFramebufferCreateInfo.Buffer callocStack(int capacity, MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)
instead. -
malloc
Returns a newVkFramebufferCreateInfo
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocate
-
calloc
Returns a newVkFramebufferCreateInfo
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocate
-
malloc
Returns a newVkFramebufferCreateInfo.Buffer
instance allocated on the specifiedMemoryStack
.- Parameters:
capacity
- the buffer capacitystack
- the stack from which to allocate
-
calloc
Returns a newVkFramebufferCreateInfo.Buffer
instance allocated on the specifiedMemoryStack
and 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()
. -
nflags
public static int nflags(long struct) Unsafe version offlags()
. -
nrenderPass
public static long nrenderPass(long struct) Unsafe version ofrenderPass()
. -
nattachmentCount
public static int nattachmentCount(long struct) Unsafe version ofattachmentCount()
. -
npAttachments
Unsafe version ofpAttachments
. -
nwidth
public static int nwidth(long struct) Unsafe version ofwidth()
. -
nheight
public static int nheight(long struct) Unsafe version ofheight()
. -
nlayers
public static int nlayers(long struct) Unsafe version oflayers()
. -
nsType
public static void nsType(long struct, int value) Unsafe version ofsType
. -
npNext
public static void npNext(long struct, long value) Unsafe version ofpNext
. -
nflags
public static void nflags(long struct, int value) Unsafe version offlags
. -
nrenderPass
public static void nrenderPass(long struct, long value) Unsafe version ofrenderPass
. -
nattachmentCount
public static void nattachmentCount(long struct, int value) Sets the specified value to theattachmentCount
field of the specifiedstruct
. -
npAttachments
Unsafe version ofpAttachments
. -
nwidth
public static void nwidth(long struct, int value) Unsafe version ofwidth
. -
nheight
public static void nheight(long struct, int value) Unsafe version ofheight
. -
nlayers
public static void nlayers(long struct, int value) Unsafe version oflayers
.
-