com.mojang.blaze3d.systems

public class RenderPassImpl

implements RenderPass, RenderPass$UniformUploader

com.mojang.renderpearl.frontend.FrontendRenderPass
net.minecraft.class_1_1227
com.mojang.blaze3d.systems.RenderPassImpl

Field summary

Modifier and TypeField
private final RenderPassBackend
backend
field_1_8520
backend
private final GpuBackend
device
field_1_8523
gpuBackend
private final GpuFeatures
deviceFeatures
field_1_8522
features
private final GpuDeviceLimits
deviceLimits
field_1_8524
limits
private final Runnable
onFinish
field_1_8526
onFinish
private final RenderPass$RenderArea
renderArea
field_1_8528
renderArea
private final List<RenderPassDescription$Attachment<Optional<org.joml.Vector4fc>>>
colorAttachments
field_1_8521
colorAttachments
private final boolean
hasDepthAttachment
field_1_9441
hasDepth
private boolean
isClosed
field_1_8525
closed
private int
pushedDebugGroups
field_1_8527
numPushedDebugGroups
private CompiledRenderPipelineImpl
boundPipeline
field_1_9440
pipeline
private final GpuBufferSlice[]
vertexBuffers
field_1_9444
vertexBuffersBySlot
protected GpuBuffer
indexBuffer
field_1_9442
indexBuffer
protected final HashMap<String, Object>
uniforms
field_1_9443
uniformsByName
private boolean
constantsPushed
field_1_9568
pushConstantsProvided
static final boolean
$assertionsDisabled
field_1_9439
field_1_9439

Constructor summary

ModifierConstructor
public (RenderPassBackend backend, GpuBackend device, List<RenderPassDescription$Attachment<Optional<org.joml.Vector4fc>>> colorAttachments, boolean hasDepth, Runnable onFinish, RenderPass$RenderArea renderArea)

Method summary

Modifier and TypeMethod
public void
pushDebugGroup(Supplier<String> label)
method_1_7805(Supplier<String> arg0)
pushDebugGroup(Supplier<String> arg0)
public void
popDebugGroup()
method_1_7804()
popDebugGroup()
public void
writeTimestamp(GpuQueryPool pool, int index)
method_1_7811(class_1_685 arg0, int arg1)
writeTimestamp(TimestampQueryPool arg0, int arg1)
public void
setPipeline(CompiledRenderPipeline pipeline)
method_1_7807(class_1_1285 arg0)
setPipeline(CompiledRenderPipeline arg0)
public void
setUniform(String name, GpuTextureView textureView, GpuSampler sampler)
method_1_7792(String arg0, class_1_1330 arg1, class_12137 arg2)
bindTexture(String arg0, GpuTextureView arg1, GpuSampler arg2)
public void
setUniform(String name, GpuBuffer value)
method_1_7808(String arg0, class_1_1211 arg1)
setUniform(String arg0, GpuBuffer arg1)
public void
setUniform(String name, GpuBufferSlice value)
method_1_7809(String arg0, class_1_1254 arg1)
setUniform(String arg0, GpuBufferSlice arg1)
private void
setUniform(String name, Object value)
method_1_9096(String arg0, Object arg1)
setUniform(String name, Object value)
public void
pushConstants(ByteBuffer value)
method_1_9202(ByteBuffer arg0)
pushConstants(ByteBuffer arg0)
public void
enableScissor(int x, int y, int width, int height)
method_1_7799(int arg0, int arg1, int arg2, int arg3)
enableScissor(int arg0, int arg1, int arg2, int arg3)
public void
disableScissor()
method_1_7793()
disableScissor()
public void
setVertexBuffer(int slot, GpuBufferSlice vertexBuffer)
method_1_7810(int arg0, class_1_1254 arg1)
setVertexBuffer(int arg0, GpuBufferSlice arg1)
public void
setIndexBuffer(GpuBuffer indexBuffer, IndexType indexType)
method_1_7806(class_1_1211 arg0, class_5595 arg1)
setIndexBuffer(GpuBuffer arg0, IndexType arg1)
public void
drawIndexed(int indexCount, int instanceCount, int firstIndex, int vertexOffset, int firstInstance)
method_1_7795(int arg0, int arg1, int arg2, int arg3, int arg4)
drawIndexed(int arg0, int arg1, int arg2, int arg3, int arg4)
public void
multiDrawIndexed(IntBuffer drawParameters, int instanceCount, int firstInstance, int drawCount)
method_1_7802(IntBuffer arg0, int arg1, int arg2, int arg3)
multiDrawIndexedInterleaved(IntBuffer arg0, int arg1, int arg2, int arg3)
public void
multiDrawIndexed(org.lwjgl.PointerBuffer firstIndexOffsets, IntBuffer indexCounts, IntBuffer vertexOffsets, int drawCount)
method_1_7803(org.lwjgl.PointerBuffer arg0, IntBuffer arg1, IntBuffer arg2, int arg3)
multiDrawIndexedSeparate(org.lwjgl.PointerBuffer arg0, IntBuffer arg1, IntBuffer arg2, int arg3)
public void
drawIndexedIndirect(GpuBufferSlice commands, int drawCount)
method_1_7796(class_1_1254 arg0, int arg1)
drawIndexedIndirect(GpuBufferSlice arg0, int arg1)
public <T> void
drawMultipleIndexed(Collection<RenderPass$Draw<T>> draws, GpuBuffer defaultIndexBuffer, IndexType defaultIndexType, Collection<String> dynamicUniforms, T uniformArgument)
method_1_7798(Collection<class_1_1317$class_10884<T>> arg0, class_1_1211 arg1, class_5595 arg2, Collection<String> arg3, T arg4)
drawMultipleIndexed(Collection<RenderPass$RenderObject<T>> arg0, GpuBuffer arg1, IndexType arg2, Collection<String> arg3, T arg4)
public void
draw(int vertexCount, int instanceCount, int firstVertex, int firstInstance)
method_1_7794(int arg0, int arg1, int arg2, int arg3)
draw(int arg0, int arg1, int arg2, int arg3)
public void
multiDraw(IntBuffer drawParameters, int instanceCount, int firstInstance, int drawCount)
method_1_7800(IntBuffer arg0, int arg1, int arg2, int arg3)
multiDrawInterleaved(IntBuffer arg0, int arg1, int arg2, int arg3)
public void
multiDraw(IntBuffer firstVertices, IntBuffer vertexCounts, int drawCount)
method_1_7801(IntBuffer arg0, IntBuffer arg1, int arg2)
multiDrawSeparate(IntBuffer arg0, IntBuffer arg1, int arg2)
public void
drawIndirect(GpuBufferSlice commands, int drawCount)
method_1_7797(class_1_1254 arg0, int arg1)
drawIndirect(GpuBufferSlice arg0, int arg1)
public void
close()
private void
validateDraw(Collection<String> dynamicUniforms, boolean dynamicVertexBuffer, boolean indexed)
method_1_9097(Collection<String> arg0, boolean arg1, boolean arg2)
checkAssertions(Collection<String> validationSkippedUniforms, boolean skipVertexChecks, boolean indexed)