Top Description Inners Fields Constructors Methods
org.lwjgl.vulkan

public Class VkPipelineCoverageModulationStateCreateInfoNV

extends Struct<VkPipelineCoverageModulationStateCreateInfoNV>
implements NativeResource
Class Inheritance
All Implemented Interfaces
org.lwjgl.system.NativeResource, java.lang.AutoCloseable
Imports
javax.annotation.*, java.nio.*, org.lwjgl.*, org.lwjgl.system.*

Structure specifying parameters controlling coverage modulation.
Description

If coverageModulationTableEnable is FALSE, then for each color sample the associated bits of the pixel coverage are counted and divided by the number of associated bits to produce a modulation factor R in the range (0,1] (a value of zero would have been killed due to a color coverage of 0). Specifically:

If coverageModulationTableEnable is TRUE, the value R is computed using a programmable lookup table. The lookup table has N / M elements, and the element of the table is selected by:

Note that the table does not have an entry for popcount(associated coverage bits) = 0, because such samples would have been killed.

The values of pCoverageModulationTable may be rounded to an implementation-dependent precision, which is at least as fine as 1 / N, and clamped to [0,1].

For each color attachment with a floating point or normalized color format, each fragment output color value is replicated to M values which can each be modulated (multiplied) by that color sample’s associated value of R. Which components are modulated is controlled by coverageModulationMode.

If this structure is not included in the pNext chain, it is as if coverageModulationMode is COVERAGE_MODULATION_MODE_NONE_NV.

If the coverage reduction mode is COVERAGE_REDUCTION_MODE_TRUNCATE_NV, each color sample is associated with only a single coverage sample. In this case, it is as if coverageModulationMode is COVERAGE_MODULATION_MODE_NONE_NV.

Valid Usage
Valid Usage (Implicit)

Layout


struct VkPipelineCoverageModulationStateCreateInfoNV {
    VkStructureType sType;
    void const * pNext;
    VkPipelineCoverageModulationStateCreateFlagsNV flags;
    VkCoverageModulationModeNV coverageModulationMode;
    VkBool32 coverageModulationTableEnable;
    uint32_t coverageModulationTableCount;
    float const * pCoverageModulationTable;
}

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class

Field Summary

Modifier and TypeField and Description
public static final int
ALIGNOF

The struct alignment in bytes.

public static final int
COVERAGEMODULATIONMODE

The struct member offsets.

public static final int
COVERAGEMODULATIONTABLECOUNT

The struct member offsets.

public static final int
COVERAGEMODULATIONTABLEENABLE

The struct member offsets.

public static final int
FLAGS

The struct member offsets.

public static final int
PCOVERAGEMODULATIONTABLE

The struct member offsets.

public static final int
PNEXT

The struct member offsets.

public static final int
SIZEOF

The struct size in bytes.

public static final int
STYPE

The struct member offsets.

Inherited from org.lwjgl.system.Struct:
containerDEFAULT_ALIGN_ASDEFAULT_PACK_ALIGNMENT

Constructor Summary

AccessConstructor and Description
protected
public
VkPipelineCoverageModulationStateCreateInfoNV(ByteBuffer container)

Creates a VkPipelineCoverageModulationStateCreateInfoNV instance at the current position of the specified ByteBuffer container.

Method Summary

Modifier and TypeMethod and Description
public static VkPipelineCoverageModulationStateCreateInfoNV
calloc()

Returns a new VkPipelineCoverageModulationStateCreateInfoNV instance allocated with memCalloc.

public static VkPipelineCoverageModulationStateCreateInfoNV.Buffer
calloc(int
the buffer capacity
capacity
)

Returns a new VkPipelineCoverageModulationStateCreateInfoNV.Buffer instance allocated with memCalloc.

public static VkPipelineCoverageModulationStateCreateInfoNV
calloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new VkPipelineCoverageModulationStateCreateInfoNV instance allocated on the specified MemoryStack and initializes all its bits to zero.

public static VkPipelineCoverageModulationStateCreateInfoNV.Buffer
calloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new VkPipelineCoverageModulationStateCreateInfoNV.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.

public static VkPipelineCoverageModulationStateCreateInfoNV
callocStack()

Deprecated
Deprecated for removal in 3.4.0.
public static VkPipelineCoverageModulationStateCreateInfoNV
callocStack(MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
public static VkPipelineCoverageModulationStateCreateInfoNV.Buffer
callocStack(int capacity)

Deprecated
Deprecated for removal in 3.4.0.
public static VkPipelineCoverageModulationStateCreateInfoNV.Buffer
callocStack(int capacity, MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
public int
coverageModulationMode()

a VkCoverageModulationModeNV value controlling which color components are modulated.

public VkPipelineCoverageModulationStateCreateInfoNV
coverageModulationMode(int value)

Sets the specified value to the coverageModulationMode field.

public int
coverageModulationTableCount()

the number of elements in pCoverageModulationTable.

public VkPipelineCoverageModulationStateCreateInfoNV
coverageModulationTableCount(int value)

Sets the specified value to the coverageModulationTableCount field.

public boolean
coverageModulationTableEnable()

controls whether the modulation factor is looked up from a table in pCoverageModulationTable.

public VkPipelineCoverageModulationStateCreateInfoNV
coverageModulationTableEnable(boolean value)

Sets the specified value to the coverageModulationTableEnable field.

protected VkPipelineCoverageModulationStateCreateInfoNV
create(long
the struct memory address
address
,
ByteBuffer
an optional container buffer, to be referenced strongly by the struct instance.
container
)

Implements abstract org.lwjgl.system.Struct.create.

Similar to the constructor, but returns the exact type of the Struct subclass.
public static VkPipelineCoverageModulationStateCreateInfoNV
create()

Returns a new VkPipelineCoverageModulationStateCreateInfoNV instance allocated with BufferUtils.

public static VkPipelineCoverageModulationStateCreateInfoNV
create(long address)

Returns a new VkPipelineCoverageModulationStateCreateInfoNV instance for the specified memory address.

public static VkPipelineCoverageModulationStateCreateInfoNV.Buffer
create(int
the buffer capacity
capacity
)

Returns a new VkPipelineCoverageModulationStateCreateInfoNV.Buffer instance allocated with BufferUtils.

public static VkPipelineCoverageModulationStateCreateInfoNV.Buffer
create(long
the memory address
address
,
int
the buffer capacity
capacity
)

Create a VkPipelineCoverageModulationStateCreateInfoNV.Buffer instance at the specified memory.

public static VkPipelineCoverageModulationStateCreateInfoNV
createSafe(long address)

Like create, but returns null if address is NULL.

public static VkPipelineCoverageModulationStateCreateInfoNV.Buffer
createSafe(long address, int capacity)

Like create, but returns null if address is NULL.

public int
flags()

reserved for future use.

public VkPipelineCoverageModulationStateCreateInfoNV
flags(int value)

Sets the specified value to the flags field.

public static VkPipelineCoverageModulationStateCreateInfoNV
malloc()

Returns a new VkPipelineCoverageModulationStateCreateInfoNV instance allocated with memAlloc.

public static VkPipelineCoverageModulationStateCreateInfoNV.Buffer
malloc(int
the buffer capacity
capacity
)

Returns a new VkPipelineCoverageModulationStateCreateInfoNV.Buffer instance allocated with memAlloc.

public static VkPipelineCoverageModulationStateCreateInfoNV
malloc(MemoryStack
the stack from which to allocate
stack
)

Returns a new VkPipelineCoverageModulationStateCreateInfoNV instance allocated on the specified MemoryStack.

public static VkPipelineCoverageModulationStateCreateInfoNV.Buffer
malloc(int
the buffer capacity
capacity
,
MemoryStack
the stack from which to allocate
stack
)

Returns a new VkPipelineCoverageModulationStateCreateInfoNV.Buffer instance allocated on the specified MemoryStack.

public static VkPipelineCoverageModulationStateCreateInfoNV
mallocStack()

Deprecated
Deprecated for removal in 3.4.0.
public static VkPipelineCoverageModulationStateCreateInfoNV
mallocStack(MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
public static VkPipelineCoverageModulationStateCreateInfoNV.Buffer
mallocStack(int capacity)

Deprecated
Deprecated for removal in 3.4.0.
public static VkPipelineCoverageModulationStateCreateInfoNV.Buffer
mallocStack(int capacity, MemoryStack stack)

Deprecated
Deprecated for removal in 3.4.0.
public static int
ncoverageModulationMode(long struct)

Unsafe version of coverageModulationMode.

public static void
ncoverageModulationMode(long struct, int value)

Unsafe version of coverageModulationMode.

public static int
public static void
ncoverageModulationTableCount(long struct, int value)

Sets the specified value to the coverageModulationTableCount field of the specified struct.

public static int
public static void
ncoverageModulationTableEnable(long struct, int value)

Unsafe version of coverageModulationTableEnable.

public static int
nflags(long struct)

Unsafe version of flags.

public static void
nflags(long struct, int value)

Unsafe version of flags.

public static FloatBuffer
npCoverageModulationTable(long struct)

Unsafe version of pCoverageModulationTable.

public static void
npCoverageModulationTable(long struct, FloatBuffer value)

Unsafe version of pCoverageModulationTable.

public static long
npNext(long struct)

Unsafe version of pNext.

public static void
npNext(long struct, long value)

Unsafe version of pNext.

public static int
nsType(long struct)

Unsafe version of sType.

public static void
nsType(long struct, int value)

Unsafe version of sType.

public FloatBuffer
pCoverageModulationTable()

a table of modulation factors containing a value for each number of covered samples.

public VkPipelineCoverageModulationStateCreateInfoNV
pCoverageModulationTable(FloatBuffer value)

Sets the address of the specified FloatBuffer to the pCoverageModulationTable field.

public long
pNext()

NULL or a pointer to a structure extending this structure.

public VkPipelineCoverageModulationStateCreateInfoNV
pNext(long value)

Sets the specified value to the pNext field.

public VkPipelineCoverageModulationStateCreateInfoNV
set(int sType, long pNext, int flags, int coverageModulationMode, boolean coverageModulationTableEnable, int coverageModulationTableCount, FloatBuffer pCoverageModulationTable)

Initializes this struct with the specified values.

public VkPipelineCoverageModulationStateCreateInfoNV

Returns:

this struct
set
(VkPipelineCoverageModulationStateCreateInfoNV
the source struct
src
)

Copies the specified struct data to this struct.

public int
sizeof()

Implements abstract org.lwjgl.system.Struct.sizeof.

Returns sizeof(struct).
public int
sType()

a VkStructureType value identifying this structure.

public VkPipelineCoverageModulationStateCreateInfoNV
sType(int value)

Sets the specified value to the sType field.

public VkPipelineCoverageModulationStateCreateInfoNV
Inherited from org.lwjgl.system.Struct:
__array__array__array__checkContainer__checkMalloc__create__getContainer__getContainer__member__member__member__padding__padding__struct__struct__union__unionclearfreeisNullvalidate