Class VulkanRenderPass
java.lang.Object
com.mojang.renderpearl.backend.vulkan.VulkanRenderPass
- All Implemented Interfaces:
RenderPassBackend
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate booleanprivate final CheckpointExtension.CheckpointStorageprivate final org.lwjgl.vulkan.VkCommandBufferprivate final VulkanDeviceprivate final VulkanCommandEncoderprivate final booleanprivate final booleanprivate final intprivate final intprotected @Nullable VulkanRenderPipelineprotected intprivate final @Nullable RenderPass.RenderArea -
Constructor Summary
ConstructorsConstructorDescriptionVulkanRenderPass(VulkanDevice device, VulkanCommandEncoder encoder, org.lwjgl.vulkan.VkCommandBuffer commandBuffer, CheckpointExtension.CheckpointStorage checkpointStorage, RenderPass.RenderArea renderArea, int outputWidth, int outputHeight, boolean hasDepth, boolean hasStencil, Supplier<String> label) -
Method Summary
Modifier and TypeMethodDescriptionprivate org.lwjgl.vulkan.VkCommandBuffervoidvoiddraw(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) voidenableScissor(int x, int y, int width, int height) getLabel()voidvoidvoidmultiDrawIndexed(IntBuffer drawParameters, int instanceCount, int firstInstance, int drawCount) voidmultiDrawIndexed(org.lwjgl.PointerBuffer firstIndexOffsets, IntBuffer indexCounts, IntBuffer vertexOffsets, int drawCount) voidvoidpushConstants(ByteBuffer value) voidpushDebugGroup(Supplier<String> label) private voidvoidsetIndexBuffer(GpuBuffer indexBuffer, IndexType indexType) voidsetPipeline(BackendRenderPipeline pipeline) private static voidsetScissor(org.lwjgl.system.MemoryStack stack, org.lwjgl.vulkan.VkCommandBuffer commandBuffer, int x, int y, int width, int height) voidsetUniform(int index, @Nullable Object value) voidsetVertexBuffer(int slot, @Nullable GpuBufferSlice vertexBuffer) voidsetViewport(int x, int y, int width, int height) voidwriteTimestamp(GpuQueryPool pool, int index)
-
Field Details
-
device
-
encoder
-
checkpointStorage
-
renderArea
-
outputWidth
private final int outputWidth -
outputHeight
private final int outputHeight -
hasDepth
private final boolean hasDepth -
hasStencil
private final boolean hasStencil -
label
-
pushedDebugGroups
protected int pushedDebugGroups -
commandBuffer
private final org.lwjgl.vulkan.VkCommandBuffer commandBuffer -
pipeline
-
anyDescriptorDirty
private boolean anyDescriptorDirty -
uniforms
-
-
Constructor Details
-
VulkanRenderPass
public VulkanRenderPass(VulkanDevice device, VulkanCommandEncoder encoder, org.lwjgl.vulkan.VkCommandBuffer commandBuffer, CheckpointExtension.CheckpointStorage checkpointStorage, RenderPass.RenderArea renderArea, int outputWidth, int outputHeight, boolean hasDepth, boolean hasStencil, Supplier<String> label)
-
-
Method Details
-
commandBuffer
private org.lwjgl.vulkan.VkCommandBuffer commandBuffer() -
pushDebugGroup
- Specified by:
pushDebugGroupin interfaceRenderPassBackend
-
popDebugGroup
public void popDebugGroup()- Specified by:
popDebugGroupin interfaceRenderPassBackend
-
setPipeline
- Specified by:
setPipelinein interfaceRenderPassBackend
-
setUniform
- Specified by:
setUniformin interfaceRenderPassBackend
-
pushConstants
- Specified by:
pushConstantsin 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
-
setScissor
private static void setScissor(org.lwjgl.system.MemoryStack stack, org.lwjgl.vulkan.VkCommandBuffer commandBuffer, int x, int y, int width, int height) -
disableScissor
public void disableScissor()- Specified by:
disableScissorin interfaceRenderPassBackend
-
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(org.lwjgl.PointerBuffer firstIndexOffsets, IntBuffer indexCounts, IntBuffer vertexOffsets, int drawCount) - Specified by:
multiDrawIndexedin interfaceRenderPassBackend
-
drawIndexedIndirect
- Specified by:
drawIndexedIndirectin 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
-
pushDescriptors
private void pushDescriptors() -
writeTimestamp
- Specified by:
writeTimestampin interfaceRenderPassBackend
-
getLabel
-