Class ShaderPass

A shader pass.

Renders any shader material as a fullscreen effect. This pass should not be used to create multiple chained effects. For a more efficient solution, please refer to the EffectPass.

Hierarchy (view full)

Constructors

  • Constructs a new shader pass.

    Parameters

    • material: ShaderMaterial

      A shader material.

    • Optional input: string

      The name of the input buffer uniform.

    Returns ShaderPass

Properties

camera: Camera

The camera.

enabled: boolean

Indicates whether this pass is enabled.

name: string

The name of this pass.

needsDepthTexture: boolean

Only relevant for subclassing.

Indicates whether the EffectComposer should prepare a depth texture for this pass. Set this to true if this pass relies on depth information from a preceding RenderPass.

needsSwap: boolean

Only relevant for subclassing.

Indicates whether the EffectComposer should swap the frame buffers after this pass has finished rendering. Set this to false if this pass doesn't render to the output buffer or the screen. Otherwise, the contents of the input buffer will be lost.

renderer: WebGLRenderer

The renderer.

Deprecated

scene: Scene

The scene to render.

Accessors

  • get fullscreenMaterial(): Material
  • The fullscreen material.

    Returns Material

  • set fullscreenMaterial(arg): void
  • Parameters

    • arg: Material

    Returns void

  • set mainCamera(arg): void
  • Sets the main camera.

    Parameters

    • arg: Camera

    Returns void

  • set mainScene(arg): void
  • Sets the main scene.

    Parameters

    • arg: Scene

    Returns void

  • get renderToScreen(): boolean
  • Indicates whether this pass should render to screen.

    Returns boolean

  • set renderToScreen(arg): void
  • Sets the render to screen flag.

    If this flag is changed, the fullscreen material will be updated as well.

    Parameters

    • arg: boolean

    Returns void

Methods

  • Performs a shallow search for disposable properties and deletes them.

    The EffectComposer calls this method when it is being destroyed. You can use it independently to free memory when you're certain that you don't need this pass anymore.

    Returns void

  • Returns the current depth texture.

    Returns Texture

    The current depth texture, or null if there is none.

  • Returns the current fullscreen material.

    Returns Material

    The current fullscreen material, or null if there is none.

    Deprecated

    Use fullscreenMaterial instead.

  • Performs initialization tasks.

    This method is called when this pass is added to an EffectComposer.

    Parameters

    • renderer: WebGLRenderer

      The renderer.

    • alpha: boolean

      Whether the renderer uses the alpha channel or not.

    • frameBufferType: number

      The type of the main frame buffers.

    Returns void

  • Indicates whether this pass is enabled.

    Returns boolean

    Whether this pass is enabled.

    Deprecated

    Use enabled instead.

  • Renders the effect.

    Parameters

    • renderer: WebGLRenderer

      The renderer.

    • inputBuffer: WebGLRenderTarget<Texture>

      A frame buffer that contains the result of the previous pass.

    • outputBuffer: WebGLRenderTarget<Texture>

      A frame buffer that serves as the output render target unless this pass renders to screen.

    • Optional deltaTime: number

      The time between the last frame and the current one in seconds.

    • Optional stencilTest: boolean

      Indicates whether a stencil mask is active.

    Returns void

  • Sets the depth texture.

    This method will be called automatically by the EffectComposer. You may override this method if your pass relies on the depth information of a preceding RenderPass.

    Parameters

    • depthTexture: Texture

      A depth texture.

    • Optional depthPacking: DepthPackingStrategies

      The depth packing.

    Returns void

  • Enables or disables this pass.

    Parameters

    • value: boolean

      Whether the pass should be enabled.

    Returns void

    Deprecated

    Use enabled instead.

  • Protected

    Sets the fullscreen material.

    Parameters

    • value: Material

      A fullscreen material.

    Returns void

    Deprecated

    Use fullscreenMaterial instead.

  • Sets the name of the input buffer uniform.

    Most fullscreen materials modify texels from an input texture. This pass automatically assigns the main input buffer to the uniform identified by the given name.

    Parameters

    • input: string

      The name of the input buffer uniform.

    Returns void

  • Sets the renderer

    Parameters

    • renderer: WebGLRenderer

      The renderer.

    Returns void

    Deprecated

  • Sets the size.

    You may override this method if you want to be informed about the size of the backbuffer/canvas. This method is called before initialize and every time the size of the EffectComposer changes.

    Parameters

    • width: number

      The width.

    • height: number

      The height.

    Returns void