Class VkColorBlendAdvancedEXT

java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkColorBlendAdvancedEXT>
org.lwjgl.vulkan.VkColorBlendAdvancedEXT
All Implemented Interfaces:
AutoCloseable, org.lwjgl.system.NativeResource, org.lwjgl.system.Pointer

public class VkColorBlendAdvancedEXT extends org.lwjgl.system.Struct<VkColorBlendAdvancedEXT> implements org.lwjgl.system.NativeResource
Structure specifying the advanced blend operation parameters for an attachment.
Valid Usage
Valid Usage (Implicit)
  • advancedBlendOp must be a valid VkBlendOp value
  • blendOverlap must be a valid VkBlendOverlapEXT value
See Also

CmdSetColorBlendAdvancedEXT

Layout


 struct VkColorBlendAdvancedEXT {
     VkBlendOp advancedBlendOp();
     VkBool32 srcPremultiplied();
     VkBool32 dstPremultiplied();
     VkBlendOverlapEXT blendOverlap();
     VkBool32 clampResults();
 }
  • Field Details

    • SIZEOF

      public static final int SIZEOF
      The struct size in bytes.
    • ALIGNOF

      public static final int ALIGNOF
      The struct alignment in bytes.
    • ADVANCEDBLENDOP

      public static final int ADVANCEDBLENDOP
      The struct member offsets.
    • SRCPREMULTIPLIED

      public static final int SRCPREMULTIPLIED
      The struct member offsets.
    • DSTPREMULTIPLIED

      public static final int DSTPREMULTIPLIED
      The struct member offsets.
    • BLENDOVERLAP

      public static final int BLENDOVERLAP
      The struct member offsets.
    • CLAMPRESULTS

      public static final int CLAMPRESULTS
      The struct member offsets.
  • Constructor Details

    • VkColorBlendAdvancedEXT

      public VkColorBlendAdvancedEXT(ByteBuffer container)
      Creates a VkColorBlendAdvancedEXT 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.

  • Method Details

    • sizeof

      public int sizeof()
      Specified by:
      sizeof in class org.lwjgl.system.Struct<VkColorBlendAdvancedEXT>
    • advancedBlendOp

      public int advancedBlendOp()
      selects which blend operation is used to calculate the RGB values to write to the color attachment.
    • srcPremultiplied

      public boolean srcPremultiplied()
      specifies whether the source color of the blend operation is treated as premultiplied.
    • dstPremultiplied

      public boolean dstPremultiplied()
      specifies whether the destination color of the blend operation is treated as premultiplied.
    • blendOverlap

      public int blendOverlap()
      a VkBlendOverlapEXT value specifying how the source and destination sample’s coverage is correlated.
    • clampResults

      public boolean clampResults()
      specifies that results must be clamped to the [0,1] range before writing to the attachment, which is useful when the attachment format is not normalized fixed-point.
    • advancedBlendOp

      public VkColorBlendAdvancedEXT advancedBlendOp(int value)
      Sets the specified value to the advancedBlendOp() field.
    • srcPremultiplied

      public VkColorBlendAdvancedEXT srcPremultiplied(boolean value)
      Sets the specified value to the srcPremultiplied() field.
    • dstPremultiplied

      public VkColorBlendAdvancedEXT dstPremultiplied(boolean value)
      Sets the specified value to the dstPremultiplied() field.
    • blendOverlap

      public VkColorBlendAdvancedEXT blendOverlap(int value)
      Sets the specified value to the blendOverlap() field.
    • clampResults

      public VkColorBlendAdvancedEXT clampResults(boolean value)
      Sets the specified value to the clampResults() field.
    • set

      public VkColorBlendAdvancedEXT set(int advancedBlendOp, boolean srcPremultiplied, boolean dstPremultiplied, int blendOverlap, boolean clampResults)
      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

      public static VkColorBlendAdvancedEXT malloc()
      Returns a new VkColorBlendAdvancedEXT instance allocated with memAlloc. The instance must be explicitly freed.
    • calloc

      public static VkColorBlendAdvancedEXT calloc()
      Returns a new VkColorBlendAdvancedEXT instance allocated with memCalloc. The instance must be explicitly freed.
    • create

      public static VkColorBlendAdvancedEXT create()
      Returns a new VkColorBlendAdvancedEXT instance allocated with BufferUtils.
    • create

      public static VkColorBlendAdvancedEXT create(long address)
      Returns a new VkColorBlendAdvancedEXT instance for the specified memory address.
    • createSafe

      public static @Nullable VkColorBlendAdvancedEXT createSafe(long address)
      Like create, but returns null if address is NULL.
    • malloc

      public static VkColorBlendAdvancedEXT.Buffer malloc(int capacity)
      Returns a new VkColorBlendAdvancedEXT.Buffer instance allocated with memAlloc. The instance must be explicitly freed.
      Parameters:
      capacity - the buffer capacity
    • calloc

      public static VkColorBlendAdvancedEXT.Buffer calloc(int capacity)
      Returns a new VkColorBlendAdvancedEXT.Buffer instance allocated with memCalloc. The instance must be explicitly freed.
      Parameters:
      capacity - the buffer capacity
    • create

      public static VkColorBlendAdvancedEXT.Buffer create(int capacity)
      Returns a new VkColorBlendAdvancedEXT.Buffer instance allocated with BufferUtils.
      Parameters:
      capacity - the buffer capacity
    • create

      public static VkColorBlendAdvancedEXT.Buffer create(long address, int capacity)
      Create a VkColorBlendAdvancedEXT.Buffer instance at the specified memory.
      Parameters:
      address - the memory address
      capacity - the buffer capacity
    • createSafe

      public static @Nullable VkColorBlendAdvancedEXT.Buffer createSafe(long address, int capacity)
      Like create, but returns null if address is NULL.
    • malloc

      public static VkColorBlendAdvancedEXT malloc(org.lwjgl.system.MemoryStack stack)
      Returns a new VkColorBlendAdvancedEXT instance allocated on the specified MemoryStack.
      Parameters:
      stack - the stack from which to allocate
    • calloc

      public static VkColorBlendAdvancedEXT calloc(org.lwjgl.system.MemoryStack stack)
      Returns a new VkColorBlendAdvancedEXT instance allocated on the specified MemoryStack and initializes all its bits to zero.
      Parameters:
      stack - the stack from which to allocate
    • malloc

      public static VkColorBlendAdvancedEXT.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack)
      Returns a new VkColorBlendAdvancedEXT.Buffer instance allocated on the specified MemoryStack.
      Parameters:
      capacity - the buffer capacity
      stack - the stack from which to allocate
    • calloc

      public static VkColorBlendAdvancedEXT.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack)
      Returns a new VkColorBlendAdvancedEXT.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.
      Parameters:
      capacity - the buffer capacity
      stack - the stack from which to allocate
    • nadvancedBlendOp

      public static int nadvancedBlendOp(long struct)
      Unsafe version of advancedBlendOp().
    • nsrcPremultiplied

      public static int nsrcPremultiplied(long struct)
      Unsafe version of srcPremultiplied().
    • ndstPremultiplied

      public static int ndstPremultiplied(long struct)
      Unsafe version of dstPremultiplied().
    • nblendOverlap

      public static int nblendOverlap(long struct)
      Unsafe version of blendOverlap().
    • nclampResults

      public static int nclampResults(long struct)
      Unsafe version of clampResults().
    • nadvancedBlendOp

      public static void nadvancedBlendOp(long struct, int value)
      Unsafe version of advancedBlendOp.
    • nsrcPremultiplied

      public static void nsrcPremultiplied(long struct, int value)
      Unsafe version of srcPremultiplied.
    • ndstPremultiplied

      public static void ndstPremultiplied(long struct, int value)
      Unsafe version of dstPremultiplied.
    • nblendOverlap

      public static void nblendOverlap(long struct, int value)
      Unsafe version of blendOverlap.
    • nclampResults

      public static void nclampResults(long struct, int value)
      Unsafe version of clampResults.