Class GlRenderPass
java.lang.Object
com.mojang.blaze3d.opengl.GlRenderPass
- All Implemented Interfaces:
RenderPassBackend
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static final record -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final intprivate final ScissorStateprivate final GlDeviceprivate final GlCommandEncoderprivate final booleanprotected IndexTypeprotected @Nullable GlRenderPipelineprotected final HashMap<String, GlRenderPass.TextureViewAndSampler> private final ScissorStateprotected final HashMap<String, GpuBufferSlice> static final booleanprotected booleanprotected final @Nullable GpuBufferSlice[] -
Constructor Summary
ConstructorsConstructorDescriptionGlRenderPass(GlCommandEncoder encoder, GlDevice device, boolean hasDepthTexture, int colorAttachmentCount, ScissorState defaultScissorState) -
Method Summary
Modifier and TypeMethodDescriptionvoidbindTexture(String name, @Nullable GpuTextureView textureView, @Nullable GpuSampler sampler) voidvoiddraw(int vertexCount, int instanceCount, int firstVertex, int firstInstance) voiddrawIndexed(int indexCount, int instanceCount, int firstIndex, int vertexOffset, int firstInstance) voiddrawIndexedIndirect(GpuBufferSlice commands, int drawCount) voiddrawIndirect(GpuBufferSlice commands, int drawCount) <T> voiddrawMultipleIndexed(Collection<RenderPass.Draw<T>> draws, @Nullable GpuBuffer defaultIndexBuffer, @Nullable IndexType defaultIndexType, Collection<String> dynamicUniforms, T uniformArgument) voidenableScissor(int x, int y, int width, int height) intintintintbooleanbooleanvoidvoidvoidmultiDrawIndexed(IntBuffer drawParameters, int instanceCount, int firstInstance, int drawCount) voidmultiDrawIndexed(PointerBuffer firstIndexOffsets, IntBuffer indexCounts, IntBuffer vertexOffsets, int drawCount) voidvoidpushDebugGroup(Supplier<String> label) voidsetIndexBuffer(@Nullable GpuBuffer indexBuffer, IndexType indexType) voidsetPipeline(RenderPipeline pipeline) voidsetUniform(String name, GpuBuffer value) voidsetUniform(String name, GpuBufferSlice value) voidsetVertexBuffer(int slot, @Nullable GpuBufferSlice vertexBuffer) voidsetViewport(int x, int y, int width, int height) voidwriteTimestamp(GpuQueryPool pool, int index)
-
Field Details
-
VALIDATION
public static final boolean VALIDATION -
encoder
-
device
-
hasDepthTexture
private final boolean hasDepthTexture -
defaultScissorState
-
pipeline
-
vertexBuffers
-
vertexBufferDirty
protected boolean vertexBufferDirty -
indexBuffer
-
indexType
-
scissorState
-
uniforms
-
samplers
-
dirtyUniforms
-
colorAttachmentCount
protected final int colorAttachmentCount
-
-
Constructor Details
-
GlRenderPass
public GlRenderPass(GlCommandEncoder encoder, GlDevice device, boolean hasDepthTexture, int colorAttachmentCount, ScissorState defaultScissorState)
-
-
Method Details
-
hasDepthTexture
public boolean hasDepthTexture() -
pushDebugGroup
- Specified by:
pushDebugGroupin interfaceRenderPassBackend
-
popDebugGroup
public void popDebugGroup()- Specified by:
popDebugGroupin interfaceRenderPassBackend
-
setPipeline
- Specified by:
setPipelinein interfaceRenderPassBackend
-
bindTexture
public void bindTexture(String name, @Nullable GpuTextureView textureView, @Nullable GpuSampler sampler) - Specified by:
bindTexturein interfaceRenderPassBackend
-
setUniform
- Specified by:
setUniformin interfaceRenderPassBackend
-
setUniform
- Specified by:
setUniformin interfaceRenderPassBackend
-
setViewport
public void setViewport(int x, int y, int width, int height) - Specified by:
setViewportin interfaceRenderPassBackend
-
enableScissor
public void enableScissor(int x, int y, int width, int height) - Specified by:
enableScissorin interfaceRenderPassBackend
-
disableScissor
public void disableScissor()- Specified by:
disableScissorin interfaceRenderPassBackend
-
isScissorEnabled
public boolean isScissorEnabled() -
getScissorX
public int getScissorX() -
getScissorY
public int getScissorY() -
getScissorWidth
public int getScissorWidth() -
getScissorHeight
public int getScissorHeight() -
setVertexBuffer
- Specified by:
setVertexBufferin interfaceRenderPassBackend
-
setIndexBuffer
- Specified by:
setIndexBufferin interfaceRenderPassBackend
-
drawIndexed
public void drawIndexed(int indexCount, int instanceCount, int firstIndex, int vertexOffset, int firstInstance) - Specified by:
drawIndexedin interfaceRenderPassBackend
-
multiDrawIndexed
public void multiDrawIndexed(IntBuffer drawParameters, int instanceCount, int firstInstance, int drawCount) - Specified by:
multiDrawIndexedin interfaceRenderPassBackend
-
multiDrawIndexed
public void multiDrawIndexed(PointerBuffer firstIndexOffsets, IntBuffer indexCounts, IntBuffer vertexOffsets, int drawCount) - Specified by:
multiDrawIndexedin interfaceRenderPassBackend
-
drawIndexedIndirect
- Specified by:
drawIndexedIndirectin interfaceRenderPassBackend
-
drawMultipleIndexed
public <T> void drawMultipleIndexed(Collection<RenderPass.Draw<T>> draws, @Nullable GpuBuffer defaultIndexBuffer, @Nullable IndexType defaultIndexType, Collection<String> dynamicUniforms, T uniformArgument) - Specified by:
drawMultipleIndexedin interfaceRenderPassBackend
-
draw
public void draw(int vertexCount, int instanceCount, int firstVertex, int firstInstance) - Specified by:
drawin interfaceRenderPassBackend
-
multiDraw
public void multiDraw(IntBuffer drawParameters, int instanceCount, int firstInstance, int drawCount) - Specified by:
multiDrawin interfaceRenderPassBackend
-
multiDraw
- Specified by:
multiDrawin interfaceRenderPassBackend
-
drawIndirect
- Specified by:
drawIndirectin interfaceRenderPassBackend
-
writeTimestamp
- Specified by:
writeTimestampin interfaceRenderPassBackend
-