EffectPass
Extends:
Implements:
- EventListener
Indirect Implements:
An effect pass.
Use this pass to combine Effect instances.
Constructor Summary
Public Constructor | ||
public |
constructor(camera: Camera, effects: ...Effect) Constructs a new effect pass. |
Member Summary
Public Members | ||
public |
capabilities: * |
|
public get |
Indicates whether dithering is enabled. |
|
public set |
Enables or disables dithering. |
|
public get |
Indicates whether this pass encodes its output when rendering to screen. |
|
public set |
Enables or disables output encoding. |
|
public |
The maximum time. |
|
public |
A time offset. |
|
public |
|
|
public |
needsSwap: * |
|
public |
|
Method Summary
Public Methods | ||
public |
dispose() Deletes disposable objects. |
|
public |
getDepthTexture(): Texture Returns the current depth texture. |
|
public |
handleEvent(event: Event) Handles events. |
|
public |
initialize(renderer: WebGLRenderer, alpha: Boolean, frameBufferType: Number) Performs initialization tasks. |
|
public |
recompile(renderer: WebGLRenderer) Updates the shader material. |
|
public |
render(renderer: WebGLRenderer, inputBuffer: WebGLRenderTarget, outputBuffer: WebGLRenderTarget, deltaTime: Number, stencilTest: Boolean) Renders the effect. |
|
public |
setDepthTexture(depthTexture: Texture, depthPacking: Number) Sets the depth texture. |
|
public |
Updates the size of this pass. |
Inherited Summary
From class Pass | ||
public get |
Indicates whether this pass should render to screen. |
|
public set |
Sets the render to screen flag. |
|
public |
Indicates whether this pass should be executed. |
|
public |
The name of this pass. |
|
public |
Only relevant for subclassing. |
|
public |
Only relevant for subclassing. |
|
protected |
camera: Camera The camera. |
|
protected |
scene: Scene The scene to render. |
|
public |
dispose() Performs a shallow search for disposable properties and deletes them. |
|
public |
getDepthTexture(): Texture Returns the current depth texture. |
|
public |
getFullscreenMaterial(): Material Returns the current fullscreen material. |
|
public |
initialize(renderer: WebGLRenderer, alpha: Boolean, frameBufferType: Number) Performs initialization tasks. |
|
public abstract |
render(renderer: WebGLRenderer, inputBuffer: WebGLRenderTarget, outputBuffer: WebGLRenderTarget, deltaTime: Number, stencilTest: Boolean) Renders the effect. |
|
public |
setDepthTexture(depthTexture: Texture, depthPacking: Number) Sets the depth texture. |
|
public |
Updates this pass with the renderer's size. You may override this method in case you want to be informed about the size of the main frame buffer. The EffectComposer calls this method before this pass is initialized and every time its own size is updated. |
|
protected |
setFullscreenMaterial(material: Material) Sets the fullscreen material. |
Public Constructors
public constructor(camera: Camera, effects: ...Effect) source
Constructs a new effect pass.
The provided effects will be organized and merged for optimal performance.
Override:
Pass#constructorParams:
Name | Type | Attribute | Description |
camera | Camera | The main camera. The camera's type and settings will be available to all effects. |
|
effects | ...Effect | The effects that will be rendered by this pass. |
Public Members
public capabilities: * source
public get dithering: Boolean source
Indicates whether dithering is enabled.
Color quantization reduces banding artifacts but degrades performance.
public get encodeOutput: Boolean source
Indicates whether this pass encodes its output when rendering to screen.
public maxTime: Number source
The maximum time.
If the elapsed time exceeds this value, it will be reset.
public needsDepthTexture: * source
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.
Override:
Pass#needsDepthTexturepublic needsSwap: * source
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.
Override:
Pass#needsSwapPublic Methods
public dispose() source
Deletes disposable objects.
This pass will be inoperative after this method was called!
Override:
Pass#disposepublic getDepthTexture(): Texture source
Returns the current depth texture.
Override:
Pass#getDepthTextureReturn:
Texture | The current depth texture, or null if there is none. |
public handleEvent(event: Event) source
Handles events.
Params:
Name | Type | Attribute | Description |
event | Event | An event. |
public initialize(renderer: WebGLRenderer, alpha: Boolean, frameBufferType: Number) source
Performs initialization tasks.
Override:
Pass#initializepublic recompile(renderer: WebGLRenderer) source
Updates the shader material.
Warning: This method triggers a relatively expensive shader recompilation.
Params:
Name | Type | Attribute | Description |
renderer | WebGLRenderer |
|
The renderer. |
public render(renderer: WebGLRenderer, inputBuffer: WebGLRenderTarget, outputBuffer: WebGLRenderTarget, deltaTime: Number, stencilTest: Boolean) source
Renders the effect.
Override:
Pass#renderParams:
Name | Type | Attribute | Description |
renderer | WebGLRenderer | The renderer. |
|
inputBuffer | WebGLRenderTarget | A frame buffer that contains the result of the previous pass. |
|
outputBuffer | WebGLRenderTarget | A frame buffer that serves as the output render target unless this pass renders to screen. |
|
deltaTime | Number |
|
The time between the last frame and the current one in seconds. |
stencilTest | Boolean |
|
Indicates whether a stencil mask is active. |
public setDepthTexture(depthTexture: Texture, depthPacking: Number) source
Sets the depth texture.
Override:
Pass#setDepthTextureParams:
Name | Type | Attribute | Description |
depthTexture | Texture | A depth texture. |
|
depthPacking | Number |
|
The depth packing. |