Record Class SDL_GPUDepthStencilTargetInfo
- All Implemented Interfaces:
IPointer,ISDL_GPUDepthStencilTargetInfo
A structure specifying the parameters of a depth-stencil target used by a render pass.
The load_op field determines what is done with the depth contents of the texture at the beginning of the render pass.
- LOAD: Loads the depth values currently in the texture.
- CLEAR: Clears the texture to a single depth.
- DONT_CARE: The driver will do whatever it wants with the memory. This is a good option if you know that every single pixel will be touched in the render pass.
The store_op field determines what is done with the depth results of the render pass.
- STORE: Stores the depth results in the texture.
- DONT_CARE: The driver will do whatever it wants with the depth results. This is often a good option for depth/stencil textures that don't need to be reused again.
The stencil_load_op field determines what is done with the stencil contents of the texture at the beginning of the render pass.
- LOAD: Loads the stencil values currently in the texture.
- CLEAR: Clears the stencil values to a single value.
- DONT_CARE: The driver will do whatever it wants with the memory. This is a good option if you know that every single pixel will be touched in the render pass.
The stencil_store_op field determines what is done with the stencil results of the render pass.
- STORE: Stores the stencil results in the texture.
- DONT_CARE: The driver will do whatever it wants with the stencil results. This is often a good option for depth/stencil textures that don't need to be reused again.
Note that depth/stencil targets do not support multisample resolves.
Since: This struct is available since SDL 3.2.0.
See also:
SDL_BeginGPURenderPass
Structure
typedef struct SDL_GPUDepthStencilTargetInfo {
SDL_GPUTexture* texture;
float clear_depth;
SDL_GPULoadOp load_op;
SDL_GPUStoreOp store_op;
SDL_GPULoadOp stencil_load_op;
SDL_GPUStoreOp stencil_store_op;
bool cycle;
Uint8 clear_stencil;
Uint8 padding1;
Uint8 padding2;
} SDL_GPUDepthStencilTargetInfo;
Contracts
The property segment() should always be not-null
(segment != NULL && !segment.equals(MemorySegment.NULL)), and properly aligned to
LAYOUT.byteAlignment() bytes. To represent null pointer, you may use a Java
null instead. See the documentation of IPointer.segment() for more details.
The constructor of this class is marked as UnsafeConstructor, because it does not
perform any runtime check. The constructor can be useful for automatic code generators.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordRepresents a pointer to / an array of null structure(s) in native memory. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final longstatic final StructLayoutstatic final ValueLayout.OfFloatstatic final ValueLayout.OfBytestatic final ValueLayout.OfBooleanstatic final ValueLayout.OfIntstatic final ValueLayout.OfBytestatic final ValueLayout.OfBytestatic final ValueLayout.OfIntstatic final ValueLayout.OfIntstatic final ValueLayout.OfIntstatic final AddressLayoutstatic final longstatic final longstatic final longstatic final longstatic final longstatic final longstatic final longstatic final longstatic final longstatic final longstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final MemoryLayout.PathElementstatic final longstatic final longstatic final longstatic final longstatic final longstatic final longstatic final longstatic final longstatic final longstatic final long -
Constructor Summary
ConstructorsConstructorDescriptionSDL_GPUDepthStencilTargetInfo(@NotNull MemorySegment segment) Creates an instance of aSDL_GPUDepthStencilTargetInforecord class. -
Method Summary
Modifier and TypeMethodDescriptionfloatclear_depth(float value) byteclear_stencil(byte value) clone(Arena arena, SDL_GPUDepthStencilTargetInfo src) booleancycle()cycle(boolean value) final booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.intload_op()load_op(int value) bytepadding1()padding1(byte value) bytepadding2()padding2(byte value) @NotNull MemorySegmentsegment()Returns the value of thesegmentrecord component.intstencil_load_op(int value) intstencil_store_op(int value) intstore_op()store_op(int value) @Nullable SDL_GPUTexturetexture()texture(@Nullable SDL_GPUTexture value) final StringtoString()Returns a string representation of this record class.
-
Field Details
-
LAYOUT
-
BYTES
public static final long BYTES -
PATH$texture
-
PATH$clear_depth
-
PATH$load_op
-
PATH$store_op
-
PATH$stencil_load_op
-
PATH$stencil_store_op
-
PATH$cycle
-
PATH$clear_stencil
-
PATH$padding1
-
PATH$padding2
-
LAYOUT$texture
-
LAYOUT$clear_depth
-
LAYOUT$load_op
-
LAYOUT$store_op
-
LAYOUT$stencil_load_op
-
LAYOUT$stencil_store_op
-
LAYOUT$cycle
-
LAYOUT$clear_stencil
-
LAYOUT$padding1
-
LAYOUT$padding2
-
SIZE$texture
public static final long SIZE$texture -
SIZE$clear_depth
public static final long SIZE$clear_depth -
SIZE$load_op
public static final long SIZE$load_op -
SIZE$store_op
public static final long SIZE$store_op -
SIZE$stencil_load_op
public static final long SIZE$stencil_load_op -
SIZE$stencil_store_op
public static final long SIZE$stencil_store_op -
SIZE$cycle
public static final long SIZE$cycle -
SIZE$clear_stencil
public static final long SIZE$clear_stencil -
SIZE$padding1
public static final long SIZE$padding1 -
SIZE$padding2
public static final long SIZE$padding2 -
OFFSET$texture
public static final long OFFSET$texture -
OFFSET$clear_depth
public static final long OFFSET$clear_depth -
OFFSET$load_op
public static final long OFFSET$load_op -
OFFSET$store_op
public static final long OFFSET$store_op -
OFFSET$stencil_load_op
public static final long OFFSET$stencil_load_op -
OFFSET$stencil_store_op
public static final long OFFSET$stencil_store_op -
OFFSET$cycle
public static final long OFFSET$cycle -
OFFSET$clear_stencil
public static final long OFFSET$clear_stencil -
OFFSET$padding1
public static final long OFFSET$padding1 -
OFFSET$padding2
public static final long OFFSET$padding2
-
-
Constructor Details
-
SDL_GPUDepthStencilTargetInfo
Creates an instance of aSDL_GPUDepthStencilTargetInforecord class.- Parameters:
segment- the value for thesegmentrecord component
-
-
Method Details
-
allocate
-
allocate
-
clone
-
texture
-
texture
-
clear_depth
public float clear_depth() -
clear_depth
-
load_op
-
load_op
-
store_op
-
store_op
-
stencil_load_op
-
stencil_load_op
-
stencil_store_op
-
stencil_store_op
-
cycle
-
cycle
-
clear_stencil
-
clear_stencil
-
padding1
-
padding1
-
padding2
-
padding2
-
toString
-
hashCode
-
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared withObjects::equals(Object,Object). -
segment
Returns the value of thesegmentrecord component.
-