Package org.lwjgl.vulkan
Class VkPipelineDepthStencilStateCreateInfo
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkPipelineDepthStencilStateCreateInfo>
org.lwjgl.vulkan.VkPipelineDepthStencilStateCreateInfo
- All Implemented Interfaces:
AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkPipelineDepthStencilStateCreateInfo
extends org.lwjgl.system.Struct<VkPipelineDepthStencilStateCreateInfo>
implements org.lwjgl.system.NativeResource
Structure specifying parameters of a newly created pipeline depth stencil state.
Valid Usage
- If the
depthBoundsfeature is not enabled,depthBoundsTestEnablemust beFALSE - If the
VK_KHR_portability_subsetextension is enabled, andVkPhysicalDevicePortabilitySubsetFeaturesKHR::separateStencilMaskRefisFALSE, and the value ofVkPipelineDepthStencilStateCreateInfo::stencilTestEnableisTRUE, and the value ofVkPipelineRasterizationStateCreateInfo::cullModeisCULL_MODE_NONE, the value ofreferencein each of theVkStencilOpStatestructs infrontandbackmust be the same - If the
rasterizationOrderDepthAttachmentAccessfeature is not enabled,flagsmust not includePIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT - If the
rasterizationOrderStencilAttachmentAccessfeature is not enabled,flagsmust not includePIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFOpNextmust beNULLflagsmust be a valid combination ofVkPipelineDepthStencilStateCreateFlagBitsvaluesdepthCompareOpmust be a validVkCompareOpvaluefrontmust be a validVkStencilOpStatestructurebackmust be a validVkStencilOpStatestructure
See Also
VkGraphicsPipelineCreateInfo, VkStencilOpState
Layout
struct VkPipelineDepthStencilStateCreateInfo {
VkStructureType sType();
void const * pNext();
VkPipelineDepthStencilStateCreateFlags flags();
VkBool32 depthTestEnable();
VkBool32 depthWriteEnable();
VkCompareOp depthCompareOp();
VkBool32 depthBoundsTestEnable();
VkBool32 stencilTestEnable();
VkStencilOpState front();
VkStencilOpState back();
float minDepthBounds();
float maxDepthBounds();
}-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classAn array ofVkPipelineDepthStencilStateCreateInfostructs.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 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
ConstructorsConstructorDescriptionVkPipelineDepthStencilStateCreateInfo(ByteBuffer container) Creates aVkPipelineDepthStencilStateCreateInfoinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptionback()seefrontback(Consumer<VkStencilOpState> consumer) back(VkStencilOpState value) Copies the specifiedVkStencilOpStateto theback()field.calloc()Returns a newVkPipelineDepthStencilStateCreateInfoinstance allocated withmemCalloc.calloc(int capacity) Returns a newVkPipelineDepthStencilStateCreateInfo.Bufferinstance allocated withmemCalloc.calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPipelineDepthStencilStateCreateInfo.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.calloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPipelineDepthStencilStateCreateInfoinstance 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.create()Returns a newVkPipelineDepthStencilStateCreateInfoinstance allocated withBufferUtils.create(int capacity) Returns a newVkPipelineDepthStencilStateCreateInfo.Bufferinstance allocated withBufferUtils.create(long address) Returns a newVkPipelineDepthStencilStateCreateInfoinstance for the specified memory address.create(long address, int capacity) Create aVkPipelineDepthStencilStateCreateInfo.Bufferinstance at the specified memory.static @Nullable VkPipelineDepthStencilStateCreateInfocreateSafe(long address) static @Nullable VkPipelineDepthStencilStateCreateInfo.BuffercreateSafe(long address, int capacity) booleancontrols whether depth bounds testing is enabled.depthBoundsTestEnable(boolean value) Sets the specified value to thedepthBoundsTestEnable()field.intaVkCompareOpvalue specifying the comparison operator to use in the Depth Comparison step of the depth test.depthCompareOp(int value) Sets the specified value to thedepthCompareOp()field.booleancontrols whether depth testing is enabled.depthTestEnable(boolean value) Sets the specified value to thedepthTestEnable()field.booleandepthWriteEnable(boolean value) Sets the specified value to thedepthWriteEnable()field.intflags()a bitmask ofVkPipelineDepthStencilStateCreateFlagBitsspecifying additional depth/stencil state information.flags(int value) Sets the specified value to theflags()field.front()frontandbackareVkStencilOpStatevalues controlling the corresponding parameters of the stencil test.front(Consumer<VkStencilOpState> consumer) front(VkStencilOpState value) Copies the specifiedVkStencilOpStateto thefront()field.malloc()Returns a newVkPipelineDepthStencilStateCreateInfoinstance allocated withmemAlloc.malloc(int capacity) Returns a newVkPipelineDepthStencilStateCreateInfo.Bufferinstance allocated withmemAlloc.malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPipelineDepthStencilStateCreateInfo.Bufferinstance allocated on the specifiedMemoryStack.malloc(org.lwjgl.system.MemoryStack stack) Returns a newVkPipelineDepthStencilStateCreateInfoinstance 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.floatthe maximum depth bound used in the depth bounds test.maxDepthBounds(float value) Sets the specified value to themaxDepthBounds()field.floatthe minimum depth bound used in the depth bounds test.minDepthBounds(float value) Sets the specified value to theminDepthBounds()field.static VkStencilOpStatenback(long struct) Unsafe version ofback().static voidnback(long struct, VkStencilOpState value) Unsafe version ofback.static intndepthBoundsTestEnable(long struct) Unsafe version ofdepthBoundsTestEnable().static voidndepthBoundsTestEnable(long struct, int value) Unsafe version ofdepthBoundsTestEnable.static intndepthCompareOp(long struct) Unsafe version ofdepthCompareOp().static voidndepthCompareOp(long struct, int value) Unsafe version ofdepthCompareOp.static intndepthTestEnable(long struct) Unsafe version ofdepthTestEnable().static voidndepthTestEnable(long struct, int value) Unsafe version ofdepthTestEnable.static intndepthWriteEnable(long struct) Unsafe version ofdepthWriteEnable().static voidndepthWriteEnable(long struct, int value) Unsafe version ofdepthWriteEnable.static intnflags(long struct) Unsafe version offlags().static voidnflags(long struct, int value) Unsafe version offlags.static VkStencilOpStatenfront(long struct) Unsafe version offront().static voidnfront(long struct, VkStencilOpState value) Unsafe version offront.static floatnmaxDepthBounds(long struct) Unsafe version ofmaxDepthBounds().static voidnmaxDepthBounds(long struct, float value) Unsafe version ofmaxDepthBounds.static floatnminDepthBounds(long struct) Unsafe version ofminDepthBounds().static voidnminDepthBounds(long struct, float value) Unsafe version ofminDepthBounds.static longnpNext(long struct) Unsafe version ofpNext().static voidnpNext(long struct, long value) Unsafe version ofpNext.static intnstencilTestEnable(long struct) Unsafe version ofstencilTestEnable().static voidnstencilTestEnable(long struct, int value) Unsafe version ofstencilTestEnable.static intnsType(long struct) Unsafe version ofsType().static voidnsType(long struct, int value) Unsafe version ofsType.longpNext()NULLor a pointer to a structure extending this structure.pNext(long value) Sets the specified value to thepNext()field.set(int sType, long pNext, int flags, boolean depthTestEnable, boolean depthWriteEnable, int depthCompareOp, boolean depthBoundsTestEnable, boolean stencilTestEnable, VkStencilOpState front, VkStencilOpState back, float minDepthBounds, float maxDepthBounds) Initializes this struct with the specified values.Copies the specified struct data to this struct.intsizeof()booleancontrols whether stencil testing is enabled.stencilTestEnable(boolean value) Sets the specified value to thestencilTestEnable()field.intsType()aVkStructureTypevalue identifying this structure.sType(int value) Sets the specified value to thesType()field.Sets theSTRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFOvalue to thesType()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. -
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. -
DEPTHTESTENABLE
public static final int DEPTHTESTENABLEThe struct member offsets. -
DEPTHWRITEENABLE
public static final int DEPTHWRITEENABLEThe struct member offsets. -
DEPTHCOMPAREOP
public static final int DEPTHCOMPAREOPThe struct member offsets. -
DEPTHBOUNDSTESTENABLE
public static final int DEPTHBOUNDSTESTENABLEThe struct member offsets. -
STENCILTESTENABLE
public static final int STENCILTESTENABLEThe struct member offsets. -
FRONT
public static final int FRONTThe struct member offsets. -
BACK
public static final int BACKThe struct member offsets. -
MINDEPTHBOUNDS
public static final int MINDEPTHBOUNDSThe struct member offsets. -
MAXDEPTHBOUNDS
public static final int MAXDEPTHBOUNDSThe struct member offsets.
-
-
Constructor Details
-
VkPipelineDepthStencilStateCreateInfo
Creates aVkPipelineDepthStencilStateCreateInfoinstance 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<VkPipelineDepthStencilStateCreateInfo>
-
sType
public int sType()aVkStructureTypevalue identifying this structure. -
pNext
public long pNext()NULLor a pointer to a structure extending this structure. -
flags
public int flags()a bitmask ofVkPipelineDepthStencilStateCreateFlagBitsspecifying additional depth/stencil state information. -
depthTestEnable
public boolean depthTestEnable()controls whether depth testing is enabled. -
depthWriteEnable
public boolean depthWriteEnable()controls whether depth writes are enabled whendepthTestEnableisTRUE. Depth writes are always disabled whendepthTestEnableisFALSE. -
depthCompareOp
public int depthCompareOp()aVkCompareOpvalue specifying the comparison operator to use in the Depth Comparison step of the depth test. -
depthBoundsTestEnable
public boolean depthBoundsTestEnable()controls whether depth bounds testing is enabled. -
stencilTestEnable
public boolean stencilTestEnable()controls whether stencil testing is enabled. -
front
frontandbackareVkStencilOpStatevalues controlling the corresponding parameters of the stencil test. -
back
seefront -
minDepthBounds
public float minDepthBounds()the minimum depth bound used in the depth bounds test. -
maxDepthBounds
public float maxDepthBounds()the maximum depth bound used in the depth bounds test. -
sType
Sets the specified value to thesType()field. -
sType$Default
Sets theSTRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFOvalue to thesType()field. -
pNext
Sets the specified value to thepNext()field. -
flags
Sets the specified value to theflags()field. -
depthTestEnable
Sets the specified value to thedepthTestEnable()field. -
depthWriteEnable
Sets the specified value to thedepthWriteEnable()field. -
depthCompareOp
Sets the specified value to thedepthCompareOp()field. -
depthBoundsTestEnable
Sets the specified value to thedepthBoundsTestEnable()field. -
stencilTestEnable
Sets the specified value to thestencilTestEnable()field. -
front
Copies the specifiedVkStencilOpStateto thefront()field. -
front
-
back
Copies the specifiedVkStencilOpStateto theback()field. -
back
-
minDepthBounds
Sets the specified value to theminDepthBounds()field. -
maxDepthBounds
Sets the specified value to themaxDepthBounds()field. -
set
public VkPipelineDepthStencilStateCreateInfo set(int sType, long pNext, int flags, boolean depthTestEnable, boolean depthWriteEnable, int depthCompareOp, boolean depthBoundsTestEnable, boolean stencilTestEnable, VkStencilOpState front, VkStencilOpState back, float minDepthBounds, float maxDepthBounds) 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 newVkPipelineDepthStencilStateCreateInfoinstance allocated withmemAlloc. The instance must be explicitly freed. -
calloc
Returns a newVkPipelineDepthStencilStateCreateInfoinstance allocated withmemCalloc. The instance must be explicitly freed. -
create
Returns a newVkPipelineDepthStencilStateCreateInfoinstance allocated withBufferUtils. -
create
Returns a newVkPipelineDepthStencilStateCreateInfoinstance for the specified memory address. -
createSafe
-
malloc
Returns a newVkPipelineDepthStencilStateCreateInfo.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
Returns a newVkPipelineDepthStencilStateCreateInfo.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
Returns a newVkPipelineDepthStencilStateCreateInfo.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
Create aVkPipelineDepthStencilStateCreateInfo.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
public static @Nullable VkPipelineDepthStencilStateCreateInfo.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 VkPipelineDepthStencilStateCreateInfo mallocStack(org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usemalloc(MemoryStack)instead. -
callocStack
@Deprecated public static VkPipelineDepthStencilStateCreateInfo 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 VkPipelineDepthStencilStateCreateInfo.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 VkPipelineDepthStencilStateCreateInfo.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack) Deprecated.Deprecated for removal in 3.4.0. Usecalloc(int, MemoryStack)instead. -
malloc
Returns a newVkPipelineDepthStencilStateCreateInfoinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
calloc
Returns a newVkPipelineDepthStencilStateCreateInfoinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
malloc
public static VkPipelineDepthStencilStateCreateInfo.Buffer malloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPipelineDepthStencilStateCreateInfo.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
capacity- the buffer capacitystack- the stack from which to allocate
-
calloc
public static VkPipelineDepthStencilStateCreateInfo.Buffer calloc(int capacity, org.lwjgl.system.MemoryStack stack) Returns a newVkPipelineDepthStencilStateCreateInfo.Bufferinstance allocated on the specifiedMemoryStackand 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(). -
ndepthTestEnable
public static int ndepthTestEnable(long struct) Unsafe version ofdepthTestEnable(). -
ndepthWriteEnable
public static int ndepthWriteEnable(long struct) Unsafe version ofdepthWriteEnable(). -
ndepthCompareOp
public static int ndepthCompareOp(long struct) Unsafe version ofdepthCompareOp(). -
ndepthBoundsTestEnable
public static int ndepthBoundsTestEnable(long struct) Unsafe version ofdepthBoundsTestEnable(). -
nstencilTestEnable
public static int nstencilTestEnable(long struct) Unsafe version ofstencilTestEnable(). -
nfront
Unsafe version offront(). -
nback
Unsafe version ofback(). -
nminDepthBounds
public static float nminDepthBounds(long struct) Unsafe version ofminDepthBounds(). -
nmaxDepthBounds
public static float nmaxDepthBounds(long struct) Unsafe version ofmaxDepthBounds(). -
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. -
ndepthTestEnable
public static void ndepthTestEnable(long struct, int value) Unsafe version ofdepthTestEnable. -
ndepthWriteEnable
public static void ndepthWriteEnable(long struct, int value) Unsafe version ofdepthWriteEnable. -
ndepthCompareOp
public static void ndepthCompareOp(long struct, int value) Unsafe version ofdepthCompareOp. -
ndepthBoundsTestEnable
public static void ndepthBoundsTestEnable(long struct, int value) Unsafe version ofdepthBoundsTestEnable. -
nstencilTestEnable
public static void nstencilTestEnable(long struct, int value) Unsafe version ofstencilTestEnable. -
nfront
Unsafe version offront. -
nback
Unsafe version ofback. -
nminDepthBounds
public static void nminDepthBounds(long struct, float value) Unsafe version ofminDepthBounds. -
nmaxDepthBounds
public static void nmaxDepthBounds(long struct, float value) Unsafe version ofmaxDepthBounds.
-