A RenderPassEntry object is used to group Meshes or RenderBundle based on their rendering target.

interface RenderPassEntry {
    renderPass: RenderPass;
    renderTexture: Texture;
    onBeforeRenderPass: ((commandEncoder?, swapChainTexture?) => void);
    onAfterRenderPass: ((commandEncoder?, swapChainTexture?) => void);
    element: PingPongPlane | ShaderPass;
    stack: Stack;
}

Properties

renderPass: RenderPass

RenderPass target used onto which render.

renderTexture: Texture

Texture to render to if any (if not specified then this RenderPassEntry Meshes will be rendered directly to screen).

onBeforeRenderPass: ((commandEncoder?, swapChainTexture?) => void)

Optional function to execute just before rendering the Meshes, useful for eventual texture copy.

Type declaration

    • (commandEncoder?, swapChainTexture?): void
    • Optional function to execute just before rendering the Meshes, useful for eventual texture copy.

      Parameters

      • Optional commandEncoder: GPUCommandEncoder
      • Optional swapChainTexture: GPUTexture

      Returns void

onAfterRenderPass: ((commandEncoder?, swapChainTexture?) => void)

Optional function to execute just after rendering the Meshes, useful for eventual texture copy.

Type declaration

    • (commandEncoder?, swapChainTexture?): void
    • Optional function to execute just after rendering the Meshes, useful for eventual texture copy.

      Parameters

      • Optional commandEncoder: GPUCommandEncoder
      • Optional swapChainTexture: GPUTexture

      Returns void

If this RenderPassEntry needs to render only one Mesh.

stack: Stack

If this RenderPassEntry needs to render multiple Meshes or RenderBundle, then use a Stack object.