Class VkPipelineMultisampleStateCreateInfo

  • All Implemented Interfaces:
    java.lang.AutoCloseable, org.lwjgl.system.NativeResource, org.lwjgl.system.Pointer

    public class VkPipelineMultisampleStateCreateInfo
    extends org.lwjgl.system.Struct
    implements org.lwjgl.system.NativeResource
    Structure specifying parameters of a newly created pipeline multisample state.
    Valid Usage
    • If the sample rate shading feature is not enabled, sampleShadingEnable must be FALSE
    • If the alpha to one feature is not enabled, alphaToOneEnable must be FALSE
    • minSampleShading must be in the range [0,1]
    • If the VK_NV_framebuffer_mixed_samples extension is enabled, and if the subpass has any color attachments and rasterizationSamples is greater than the number of color samples, then sampleShadingEnable must be FALSE
    Valid Usage (Implicit)
    See Also

    VkGraphicsPipelineCreateInfo

    Member documentation

    • sType – the type of this structure.
    • pNextNULL or a pointer to an extension-specific structure.
    • flags – reserved for future use.
    • rasterizationSamples – a VkSampleCountFlagBits specifying the number of samples used in rasterization.
    • sampleShadingEnablecan be used to enable Sample Shading.
    • minSampleShading – specifies a minimum fraction of sample shading if sampleShadingEnable is set to TRUE.
    • pSampleMask – a bitmask of static coverage information that is ANDed with the coverage information generated during rasterization, as described in Sample Mask.
    • alphaToCoverageEnable – controls whether a temporary coverage value is generated based on the alpha component of the fragment’s first color output as specified in the Multisample Coverage section.
    • alphaToOneEnable – controls whether the alpha component of the fragment’s first color output is replaced with one as described in Multisample Coverage.

    Layout

    
     struct VkPipelineMultisampleStateCreateInfo {
         VkStructureType sType;
         void const * pNext;
         VkPipelineMultisampleStateCreateFlags flags;
         VkSampleCountFlagBits rasterizationSamples;
         VkBool32 sampleShadingEnable;
         float minSampleShading;
         VkSampleMask const * pSampleMask;
         VkBool32 alphaToCoverageEnable;
         VkBool32 alphaToOneEnable;
     }
    • Field Detail

      • SIZEOF

        The struct size in bytes.
      • ALIGNOF

        The struct alignment in bytes.
      • STYPE, PNEXT, FLAGS, RASTERIZATIONSAMPLES, SAMPLESHADINGENABLE, MINSAMPLESHADING, PSAMPLEMASK, ALPHATOCOVERAGEENABLE, ALPHATOONEENABLE

        The struct member offsets.
    • Constructor Detail

      • VkPipelineMultisampleStateCreateInfo

        public VkPipelineMultisampleStateCreateInfo​(java.nio.ByteBuffer container)
        Creates a VkPipelineMultisampleStateCreateInfo 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 Detail

      • sizeof

        public int sizeof()
        Specified by:
        sizeof in class org.lwjgl.system.Struct
      • sType

        public int sType()
        Returns the value of the sType field.
      • pNext

        public long pNext()
        Returns the value of the pNext field.
      • flags

        public int flags()
        Returns the value of the flags field.
      • rasterizationSamples

        public int rasterizationSamples()
        Returns the value of the rasterizationSamples field.
      • sampleShadingEnable

        public boolean sampleShadingEnable()
        Returns the value of the sampleShadingEnable field.
      • minSampleShading

        public float minSampleShading()
        Returns the value of the minSampleShading field.
      • pSampleMask

        @Nullable
        public java.nio.IntBuffer pSampleMask​(int capacity)
        Returns a IntBuffer view of the data pointed to by the pSampleMask field.
        Parameters:
        capacity - the number of elements in the returned buffer
      • alphaToCoverageEnable

        public boolean alphaToCoverageEnable()
        Returns the value of the alphaToCoverageEnable field.
      • alphaToOneEnable

        public boolean alphaToOneEnable()
        Returns the value of the alphaToOneEnable field.
      • pSampleMask

        public VkPipelineMultisampleStateCreateInfo pSampleMask​(@Nullable
                                                                java.nio.IntBuffer value)
        Sets the address of the specified IntBuffer to the pSampleMask field.
      • set

        public VkPipelineMultisampleStateCreateInfo set​(int sType,
                                                        long pNext,
                                                        int flags,
                                                        int rasterizationSamples,
                                                        boolean sampleShadingEnable,
                                                        float minSampleShading,
                                                        @Nullable
                                                        java.nio.IntBuffer pSampleMask,
                                                        boolean alphaToCoverageEnable,
                                                        boolean alphaToOneEnable)
        Initializes this struct with the specified values.
      • malloc

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

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

        public static VkPipelineMultisampleStateCreateInfo create​(long address)
        Returns a new VkPipelineMultisampleStateCreateInfo instance for the specified memory address.
      • mallocStack

        public static VkPipelineMultisampleStateCreateInfo mallocStack()
        Returns a new VkPipelineMultisampleStateCreateInfo instance allocated on the thread-local MemoryStack.
      • callocStack

        public static VkPipelineMultisampleStateCreateInfo callocStack()
        Returns a new VkPipelineMultisampleStateCreateInfo instance allocated on the thread-local MemoryStack and initializes all its bits to zero.
      • mallocStack

        public static VkPipelineMultisampleStateCreateInfo mallocStack​(org.lwjgl.system.MemoryStack stack)
        Returns a new VkPipelineMultisampleStateCreateInfo instance allocated on the specified MemoryStack.
        Parameters:
        stack - the stack from which to allocate
      • callocStack

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

        public static int nsType​(long struct)
        Unsafe version of sType().
      • npNext

        public static long npNext​(long struct)
        Unsafe version of pNext().
      • nflags

        public static int nflags​(long struct)
        Unsafe version of flags().
      • nrasterizationSamples

        public static int nrasterizationSamples​(long struct)
        Unsafe version of rasterizationSamples().
      • nsampleShadingEnable

        public static int nsampleShadingEnable​(long struct)
        Unsafe version of sampleShadingEnable().
      • nminSampleShading

        public static float nminSampleShading​(long struct)
        Unsafe version of minSampleShading().
      • npSampleMask

        @Nullable
        public static java.nio.IntBuffer npSampleMask​(long struct,
                                                      int capacity)
        Unsafe version of pSampleMask.
      • nalphaToCoverageEnable

        public static int nalphaToCoverageEnable​(long struct)
        Unsafe version of alphaToCoverageEnable().
      • nalphaToOneEnable

        public static int nalphaToOneEnable​(long struct)
        Unsafe version of alphaToOneEnable().
      • nsType

        public static void nsType​(long struct,
                                  int value)
        Unsafe version of sType.
      • npNext

        public static void npNext​(long struct,
                                  long value)
        Unsafe version of pNext.
      • nflags

        public static void nflags​(long struct,
                                  int value)
        Unsafe version of flags.
      • nrasterizationSamples

        public static void nrasterizationSamples​(long struct,
                                                 int value)
        Unsafe version of rasterizationSamples.
      • nsampleShadingEnable

        public static void nsampleShadingEnable​(long struct,
                                                int value)
        Unsafe version of sampleShadingEnable.
      • nminSampleShading

        public static void nminSampleShading​(long struct,
                                             float value)
        Unsafe version of minSampleShading.
      • npSampleMask

        public static void npSampleMask​(long struct,
                                        @Nullable
                                        java.nio.IntBuffer value)
        Unsafe version of pSampleMask.
      • nalphaToCoverageEnable

        public static void nalphaToCoverageEnable​(long struct,
                                                  int value)
        Unsafe version of alphaToCoverageEnable.
      • nalphaToOneEnable

        public static void nalphaToOneEnable​(long struct,
                                             int value)
        Unsafe version of alphaToOneEnable.