@babylonjs/core
Version:
Getting started? Play directly with the Babylon.js API using our [playground](https://playground.babylonjs.com/). It also contains a lot of samples to learn how to use it.
53 lines (52 loc) • 2.44 kB
TypeScript
import type { Nullable, FrameGraphRenderContext, AbstractEngine, IFrameGraphPass, FrameGraphTextureHandle, FrameGraphTask, FrameGraphRenderTarget } from "../../index.js";
import { FrameGraphPass } from "./pass.js";
/**
* Render pass used to render objects.
*/
export declare class FrameGraphRenderPass extends FrameGraphPass<FrameGraphRenderContext> {
protected readonly _engine: AbstractEngine;
protected _renderTarget: FrameGraphTextureHandle | FrameGraphTextureHandle[] | undefined;
protected _renderTargetDepth: FrameGraphTextureHandle | undefined;
protected _frameGraphRenderTarget: FrameGraphRenderTarget | undefined;
protected _dependencies: Set<FrameGraphTextureHandle>;
/**
* Checks if a pass is a render pass.
* @param pass The pass to check.
* @returns True if the pass is a render pass, else false.
*/
static IsRenderPass(pass: IFrameGraphPass): pass is FrameGraphRenderPass;
/**
* Gets the render target(s) used by the render pass.
*/
get renderTarget(): FrameGraphTextureHandle | FrameGraphTextureHandle[] | undefined;
/**
* Gets the render target depth used by the render pass.
*/
get renderTargetDepth(): FrameGraphTextureHandle | undefined;
/** @internal */
constructor(name: string, parentTask: FrameGraphTask, context: FrameGraphRenderContext, engine: AbstractEngine);
/**
* Sets the render target(s) to use for rendering.
* @param renderTargetHandle The render target to use for rendering, or an array of render targets to use for multi render target rendering.
*/
setRenderTarget(renderTargetHandle?: FrameGraphTextureHandle | FrameGraphTextureHandle[]): void;
/**
* Sets the render target depth to use for rendering.
* @param renderTargetHandle The render target depth to use for rendering.
*/
setRenderTargetDepth(renderTargetHandle?: FrameGraphTextureHandle): void;
/**
* Adds dependencies to the render pass.
* @param dependencies The dependencies to add.
*/
addDependencies(dependencies: FrameGraphTextureHandle | FrameGraphTextureHandle[]): void;
/**
* Collects the dependencies of the render pass.
* @param dependencies The set of dependencies to update.
*/
collectDependencies(dependencies: Set<FrameGraphTextureHandle>): void;
/** @internal */
_execute(): void;
/** @internal */
_isValid(): Nullable<string>;
}