Package org.lwjgl.vulkan
Class VkPipelineColorBlendAttachmentState
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkPipelineColorBlendAttachmentState>
org.lwjgl.vulkan.VkPipelineColorBlendAttachmentState
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkPipelineColorBlendAttachmentState
extends org.lwjgl.system.Struct<VkPipelineColorBlendAttachmentState>
implements org.lwjgl.system.NativeResource
Structure specifying a pipeline color blend attachment state.
Valid Usage
- If the
dualSrcBlendfeature is not enabled,srcColorBlendFactormust not beBLEND_FACTOR_SRC1_COLOR,BLEND_FACTOR_ONE_MINUS_SRC1_COLOR,BLEND_FACTOR_SRC1_ALPHA, orBLEND_FACTOR_ONE_MINUS_SRC1_ALPHA - If the
dualSrcBlendfeature is not enabled,dstColorBlendFactormust not beBLEND_FACTOR_SRC1_COLOR,BLEND_FACTOR_ONE_MINUS_SRC1_COLOR,BLEND_FACTOR_SRC1_ALPHA, orBLEND_FACTOR_ONE_MINUS_SRC1_ALPHA - If the
dualSrcBlendfeature is not enabled,srcAlphaBlendFactormust not beBLEND_FACTOR_SRC1_COLOR,BLEND_FACTOR_ONE_MINUS_SRC1_COLOR,BLEND_FACTOR_SRC1_ALPHA, orBLEND_FACTOR_ONE_MINUS_SRC1_ALPHA - If the
dualSrcBlendfeature is not enabled,dstAlphaBlendFactormust not beBLEND_FACTOR_SRC1_COLOR,BLEND_FACTOR_ONE_MINUS_SRC1_COLOR,BLEND_FACTOR_SRC1_ALPHA, orBLEND_FACTOR_ONE_MINUS_SRC1_ALPHA - If either of
colorBlendOporalphaBlendOpis an advanced blend operation, thencolorBlendOpmust equalalphaBlendOp - If
VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT::advancedBlendIndependentBlendisFALSEandcolorBlendOpis an advanced blend operation, thencolorBlendOpmust be the same for all attachments - If
VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT::advancedBlendIndependentBlendisFALSEandalphaBlendOpis an advanced blend operation, thenalphaBlendOpmust be the same for all attachments - If
VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT::advancedBlendAllOperationsisFALSE, thencolorBlendOpmust not beBLEND_OP_ZERO_EXT,BLEND_OP_SRC_EXT,BLEND_OP_DST_EXT,BLEND_OP_SRC_OVER_EXT,BLEND_OP_DST_OVER_EXT,BLEND_OP_SRC_IN_EXT,BLEND_OP_DST_IN_EXT,BLEND_OP_SRC_OUT_EXT,BLEND_OP_DST_OUT_EXT,BLEND_OP_SRC_ATOP_EXT,BLEND_OP_DST_ATOP_EXT,BLEND_OP_XOR_EXT,BLEND_OP_INVERT_EXT,BLEND_OP_INVERT_RGB_EXT,BLEND_OP_LINEARDODGE_EXT,BLEND_OP_LINEARBURN_EXT,BLEND_OP_VIVIDLIGHT_EXT,BLEND_OP_LINEARLIGHT_EXT,BLEND_OP_PINLIGHT_EXT,BLEND_OP_HARDMIX_EXT,BLEND_OP_PLUS_EXT,BLEND_OP_PLUS_CLAMPED_EXT,BLEND_OP_PLUS_CLAMPED_ALPHA_EXT,BLEND_OP_PLUS_DARKER_EXT,BLEND_OP_MINUS_EXT,BLEND_OP_MINUS_CLAMPED_EXT,BLEND_OP_CONTRAST_EXT,BLEND_OP_INVERT_OVG_EXT,BLEND_OP_RED_EXT,BLEND_OP_GREEN_EXT, orBLEND_OP_BLUE_EXT - If
colorBlendOporalphaBlendOpis an advanced blend operation, thencolorAttachmentCountof the subpass this pipeline is compiled against must be less than or equal toVkPhysicalDeviceBlendOperationAdvancedPropertiesEXT::advancedBlendMaxColorAttachments - If the
VK_KHR_portability_subsetextension is enabled, andVkPhysicalDevicePortabilitySubsetFeaturesKHR::constantAlphaColorBlendFactorsisFALSE,srcColorBlendFactormust not beBLEND_FACTOR_CONSTANT_ALPHAorBLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA - If the
VK_KHR_portability_subsetextension is enabled, andVkPhysicalDevicePortabilitySubsetFeaturesKHR::constantAlphaColorBlendFactorsisFALSE,dstColorBlendFactormust not beBLEND_FACTOR_CONSTANT_ALPHAorBLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA
Valid Usage (Implicit)
srcColorBlendFactormust be a validVkBlendFactorvaluedstColorBlendFactormust be a validVkBlendFactorvaluecolorBlendOpmust be a validVkBlendOpvaluesrcAlphaBlendFactormust be a validVkBlendFactorvaluedstAlphaBlendFactormust be a validVkBlendFactorvaluealphaBlendOpmust be a validVkBlendOpvaluecolorWriteMaskmust be a valid combination ofVkColorComponentFlagBitsvalues
See Also
VkPipelineColorBlendStateCreateInfo
Layout
struct VkPipelineColorBlendAttachmentState {
VkBool32 blendEnable();
VkBlendFactor srcColorBlendFactor();
VkBlendFactor dstColorBlendFactor();
VkBlendOp colorBlendOp();
VkBlendFactor srcAlphaBlendFactor();
VkBlendFactor dstAlphaBlendFactor();
VkBlendOp alphaBlendOp();
VkColorComponentFlags colorWriteMask();
}-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAn array ofVkPipelineColorBlendAttachmentStatestructs.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 member offsets.static final intThe struct member offsets.static final intThe struct size in bytes.static final intThe struct member offsets.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
ConstructorsConstructorDescriptionVkPipelineColorBlendAttachmentState(ByteBuffer container) Creates aVkPipelineColorBlendAttachmentStateinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptionintselects which blend operation is used to calculate the alpha values to write to the color attachment.alphaBlendOp(int value) Sets the specified value to thealphaBlendOp()field.booleancontrols whether blending is enabled for the corresponding color attachment.blendEnable(boolean value) Sets the specified value to theblendEnable()field.calloc()Returns a newVkPipelineColorBlendAttachmentStateinstance allocated withmemCalloc.calloc(int capacity) Returns a newVkPipelineColorBlendAttachmentState.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPipelineColorBlendAttachmentState.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.calloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPipelineColorBlendAttachmentStateinstance 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.intselects which blend operation is used to calculate the RGB values to write to the color attachment.colorBlendOp(int value) Sets the specified value to thecolorBlendOp()field.inta bitmask ofVkColorComponentFlagBitsspecifying which of the R, G, B, and/or A components are enabled for writing, as described for the Color Write Mask.colorWriteMask(int value) Sets the specified value to thecolorWriteMask()field.create()Returns a newVkPipelineColorBlendAttachmentStateinstance allocated withBufferUtils.create(int capacity) Returns a newVkPipelineColorBlendAttachmentState.Bufferinstance allocated withBufferUtils.create(long address) Returns a newVkPipelineColorBlendAttachmentStateinstance for the specified memory address.create(long address, int capacity) Create aVkPipelineColorBlendAttachmentState.Bufferinstance at the specified memory.static @Nullable VkPipelineColorBlendAttachmentStatecreateSafe(long address) static @Nullable VkPipelineColorBlendAttachmentState.BuffercreateSafe(long address, int capacity) intselects which blend factor is used to determine the destination factorDa.dstAlphaBlendFactor(int value) Sets the specified value to thedstAlphaBlendFactor()field.intselects which blend factor is used to determine the destination factors(Dr,Dg,Db).dstColorBlendFactor(int value) Sets the specified value to thedstColorBlendFactor()field.malloc()Returns a newVkPipelineColorBlendAttachmentStateinstance allocated withmemAlloc.malloc(int capacity) Returns a newVkPipelineColorBlendAttachmentState.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPipelineColorBlendAttachmentState.Bufferinstance allocated on the specifiedMemoryStack.malloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPipelineColorBlendAttachmentStateinstance 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 intnalphaBlendOp(long struct) Unsafe version ofalphaBlendOp().static voidnalphaBlendOp(long struct, int value) Unsafe version ofalphaBlendOp.static intnblendEnable(long struct) Unsafe version ofblendEnable().static voidnblendEnable(long struct, int value) Unsafe version ofblendEnable.static intncolorBlendOp(long struct) Unsafe version ofcolorBlendOp().static voidncolorBlendOp(long struct, int value) Unsafe version ofcolorBlendOp.static intncolorWriteMask(long struct) Unsafe version ofcolorWriteMask().static voidncolorWriteMask(long struct, int value) Unsafe version ofcolorWriteMask.static intndstAlphaBlendFactor(long struct) Unsafe version ofdstAlphaBlendFactor().static voidndstAlphaBlendFactor(long struct, int value) Unsafe version ofdstAlphaBlendFactor.static intndstColorBlendFactor(long struct) Unsafe version ofdstColorBlendFactor().static voidndstColorBlendFactor(long struct, int value) Unsafe version ofdstColorBlendFactor.static intnsrcAlphaBlendFactor(long struct) Unsafe version ofsrcAlphaBlendFactor().static voidnsrcAlphaBlendFactor(long struct, int value) Unsafe version ofsrcAlphaBlendFactor.static intnsrcColorBlendFactor(long struct) Unsafe version ofsrcColorBlendFactor().static voidnsrcColorBlendFactor(long struct, int value) Unsafe version ofsrcColorBlendFactor.set(boolean blendEnable, int srcColorBlendFactor, int dstColorBlendFactor, int colorBlendOp, int srcAlphaBlendFactor, int dstAlphaBlendFactor, int alphaBlendOp, int colorWriteMask) Initializes this struct with the specified values.Copies the specified struct data to this struct.intsizeof()intselects which blend factor is used to determine the source factorSa.srcAlphaBlendFactor(int value) Sets the specified value to thesrcAlphaBlendFactor()field.intselects which blend factor is used to determine the source factors(Sr,Sg,Sb).srcColorBlendFactor(int value) Sets the specified value to thesrcColorBlendFactor()field.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. -
BLENDENABLE
public static final int BLENDENABLEThe struct member offsets. -
SRCCOLORBLENDFACTOR
public static final int SRCCOLORBLENDFACTORThe struct member offsets. -
DSTCOLORBLENDFACTOR
public static final int DSTCOLORBLENDFACTORThe struct member offsets. -
COLORBLENDOP
public static final int COLORBLENDOPThe struct member offsets. -
SRCALPHABLENDFACTOR
public static final int SRCALPHABLENDFACTORThe struct member offsets. -
DSTALPHABLENDFACTOR
public static final int DSTALPHABLENDFACTORThe struct member offsets. -
ALPHABLENDOP
public static final int ALPHABLENDOPThe struct member offsets. -
COLORWRITEMASK
public static final int COLORWRITEMASKThe struct member offsets.
-
-
Constructor Details
-
VkPipelineColorBlendAttachmentState
Creates aVkPipelineColorBlendAttachmentStateinstance 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<VkPipelineColorBlendAttachmentState>
-
blendEnable
public boolean blendEnable()controls whether blending is enabled for the corresponding color attachment. If blending is not enabled, the source fragment’s color for that attachment is passed through unmodified. -
srcColorBlendFactor
public int srcColorBlendFactor()selects which blend factor is used to determine the source factors(Sr,Sg,Sb). -
dstColorBlendFactor
public int dstColorBlendFactor()selects which blend factor is used to determine the destination factors(Dr,Dg,Db). -
colorBlendOp
public int colorBlendOp()selects which blend operation is used to calculate the RGB values to write to the color attachment. -
srcAlphaBlendFactor
public int srcAlphaBlendFactor()selects which blend factor is used to determine the source factorSa. -
dstAlphaBlendFactor
public int dstAlphaBlendFactor()selects which blend factor is used to determine the destination factorDa. -
alphaBlendOp
public int alphaBlendOp()selects which blend operation is used to calculate the alpha values to write to the color attachment. -
colorWriteMask
public int colorWriteMask()a bitmask ofVkColorComponentFlagBitsspecifying which of the R, G, B, and/or A components are enabled for writing, as described for the Color Write Mask. -
blendEnable
Sets the specified value to theblendEnable()field. -
srcColorBlendFactor
Sets the specified value to thesrcColorBlendFactor()field. -
dstColorBlendFactor
Sets the specified value to thedstColorBlendFactor()field. -
colorBlendOp
Sets the specified value to thecolorBlendOp()field. -
srcAlphaBlendFactor
Sets the specified value to thesrcAlphaBlendFactor()field. -
dstAlphaBlendFactor
Sets the specified value to thedstAlphaBlendFactor()field. -
alphaBlendOp
Sets the specified value to thealphaBlendOp()field. -
colorWriteMask
Sets the specified value to thecolorWriteMask()field. -
set
public VkPipelineColorBlendAttachmentState set(boolean blendEnable, int srcColorBlendFactor, int dstColorBlendFactor, int colorBlendOp, int srcAlphaBlendFactor, int dstAlphaBlendFactor, int alphaBlendOp, int colorWriteMask) 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 newVkPipelineColorBlendAttachmentStateinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkPipelineColorBlendAttachmentStateinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkPipelineColorBlendAttachmentStateinstance allocated withBufferUtils. -
create
Returns a newVkPipelineColorBlendAttachmentStateinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVkPipelineColorBlendAttachmentState.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkPipelineColorBlendAttachmentState.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkPipelineColorBlendAttachmentState.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aVkPipelineColorBlendAttachmentState.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
public static @Nullable VkPipelineColorBlendAttachmentState.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 VkPipelineColorBlendAttachmentState mallocStack(org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead. -
callocStack
@Deprecated public static VkPipelineColorBlendAttachmentState 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 VkPipelineColorBlendAttachmentState.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 VkPipelineColorBlendAttachmentState.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead. -
malloc
Returns a newVkPipelineColorBlendAttachmentStateinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newVkPipelineColorBlendAttachmentStateinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkPipelineColorBlendAttachmentState.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPipelineColorBlendAttachmentState.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static VkPipelineColorBlendAttachmentState.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPipelineColorBlendAttachmentState.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
nblendEnable
public static int nblendEnable(long struct) Unsafe version ofblendEnable(). -
nsrcColorBlendFactor
public static int nsrcColorBlendFactor(long struct) Unsafe version ofsrcColorBlendFactor(). -
ndstColorBlendFactor
public static int ndstColorBlendFactor(long struct) Unsafe version ofdstColorBlendFactor(). -
ncolorBlendOp
public static int ncolorBlendOp(long struct) Unsafe version ofcolorBlendOp(). -
nsrcAlphaBlendFactor
public static int nsrcAlphaBlendFactor(long struct) Unsafe version ofsrcAlphaBlendFactor(). -
ndstAlphaBlendFactor
public static int ndstAlphaBlendFactor(long struct) Unsafe version ofdstAlphaBlendFactor(). -
nalphaBlendOp
public static int nalphaBlendOp(long struct) Unsafe version ofalphaBlendOp(). -
ncolorWriteMask
public static int ncolorWriteMask(long struct) Unsafe version ofcolorWriteMask(). -
nblendEnable
public static void nblendEnable(long struct, int value) Unsafe version ofblendEnable. -
nsrcColorBlendFactor
public static void nsrcColorBlendFactor(long struct, int value) Unsafe version ofsrcColorBlendFactor. -
ndstColorBlendFactor
public static void ndstColorBlendFactor(long struct, int value) Unsafe version ofdstColorBlendFactor. -
ncolorBlendOp
public static void ncolorBlendOp(long struct, int value) Unsafe version ofcolorBlendOp. -
nsrcAlphaBlendFactor
public static void nsrcAlphaBlendFactor(long struct, int value) Unsafe version ofsrcAlphaBlendFactor. -
ndstAlphaBlendFactor
public static void ndstAlphaBlendFactor(long struct, int value) Unsafe version ofdstAlphaBlendFactor. -
nalphaBlendOp
public static void nalphaBlendOp(long struct, int value) Unsafe version ofalphaBlendOp. -
ncolorWriteMask
public static void ncolorWriteMask(long struct, int value) Unsafe version ofcolorWriteMask.
-