Options
All
  • Public
  • Public/Protected
  • All
Menu

Class OutlineEffect

An outline effect.

Hierarchy

Index

Constructors

  • new OutlineEffect(scene?: Scene, camera?: Camera, [options]?: { blendFunction?: BlendFunction; blur?: boolean; edgeStrength?: number; height?: number; hiddenEdgeColor?: number; kernelSize?: KernelSize; multisampling?: number; patternScale?: number; patternTexture?: Texture; pulseSpeed?: number; resolutionScale?: number; resolutionX?: number; resolutionY?: number; visibleEdgeColor?: number; width?: number; xRay?: boolean }): OutlineEffect
  • Constructs a new outline effect.

    Parameters

    • Optional scene: Scene

      The main scene.

    • Optional camera: Camera

      The main camera.

    • Optional [options]: { blendFunction?: BlendFunction; blur?: boolean; edgeStrength?: number; height?: number; hiddenEdgeColor?: number; kernelSize?: KernelSize; multisampling?: number; patternScale?: number; patternTexture?: Texture; pulseSpeed?: number; resolutionScale?: number; resolutionX?: number; resolutionY?: number; visibleEdgeColor?: number; width?: number; xRay?: boolean }

      The options.

      • Optional blendFunction?: BlendFunction
      • Optional blur?: boolean
      • Optional edgeStrength?: number
      • Optional height?: number
      • Optional hiddenEdgeColor?: number
      • Optional kernelSize?: KernelSize
      • Optional multisampling?: number
      • Optional patternScale?: number
      • Optional patternTexture?: Texture
      • Optional pulseSpeed?: number
      • Optional resolutionScale?: number
      • Optional resolutionX?: number
      • Optional resolutionY?: number
      • Optional visibleEdgeColor?: number
      • Optional width?: number
      • Optional xRay?: boolean

    Returns OutlineEffect

Properties

blendMode: BlendMode

The blend mode of this effect.

blurPass: KawaseBlurPass

A blur pass.

defines: Map<string, string>

Preprocessor macro definitions.

Call Effect.setChanged after changing macro definitions.

extensions: Set<WebGLExtension>

WebGL extensions that are required by this effect.

Call Effect.setChanged after adding or removing extensions.

name: string

The name of this effect.

pulseSpeed: number

The pulse speed. Set to 0 to disable.

renderer: WebGLRenderer

The renderer.

deprecated
selection: Selection

A selection of objects that will be outlined.

The default layer of this selection is 10.

uniforms: Map<string, Uniform<any>>

Shader uniforms.

Call Effect.setChanged after adding or removing uniforms.

Accessors

  • get blur(): boolean
  • set blur(arg: boolean): void
  • Indicates whether the outlines should be blurred.

    deprecated

    Use blurPass.enabled instead.

    Returns boolean

  • Parameters

    • arg: boolean

    Returns void

  • get dithering(): boolean
  • set dithering(arg: boolean): void
  • Indicates whether dithering is enabled.

    deprecated

    Returns boolean

  • Parameters

    • arg: boolean

    Returns void

  • get edgeStrength(): number
  • set edgeStrength(arg: number): void
  • The edge strength.

    Returns number

  • Parameters

    • arg: number

    Returns void

  • get height(): number
  • set height(arg: number): void
  • The current height of the internal render targets.

    deprecated

    Use resolution.height instead.

    Returns number

  • Parameters

    • arg: number

    Returns void

  • get hiddenEdgeColor(): Color
  • set hiddenEdgeColor(arg: Color): void
  • The hidden edge color.

    Returns Color

  • Parameters

    • arg: Color

    Returns void

  • get inputColorSpace(): ColorSpace
  • set inputColorSpace(arg: ColorSpace): void
  • The input color space.

    experimental

    Returns ColorSpace

  • The input color space.

    experimental

    Parameters

    • arg: ColorSpace

    Returns void

  • The blur kernel size.

    deprecated

    Use blurPass.kernelSize instead.

    Returns KernelSize

  • Parameters

    Returns void

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

    Parameters

    • arg: Camera

    Returns void

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

    Parameters

    • arg: Scene

    Returns void

  • get multisampling(): number
  • set multisampling(arg: number): void
  • The amount of MSAA samples.

    Requires WebGL 2. Set to zero to disable multisampling.

    experimental

    Requires three >= r138.

    Returns number

  • The amount of MSAA samples.

    Requires WebGL 2. Set to zero to disable multisampling.

    experimental

    Requires three >= r138.

    Parameters

    • arg: number

    Returns void

  • get outputColorSpace(): ColorSpace
  • set outputColorSpace(arg: ColorSpace): void
  • The output color space.

    Should only be changed if this effect converts the input colors to a different color space.

    experimental

    Returns ColorSpace

  • The output color space.

    Should only be changed if this effect converts the input colors to a different color space.

    experimental

    Parameters

    • arg: ColorSpace

    Returns void

  • get patternScale(): number
  • set patternScale(arg: number): void
  • The pattern scale.

    Returns number

  • Parameters

    • arg: number

    Returns void

  • get patternTexture(): Texture
  • set patternTexture(arg: Texture): void
  • The pattern texture. Set to null to disable.

    Returns Texture

  • Parameters

    • arg: Texture

    Returns void

  • The resolution of this effect.

    Returns Resolution

  • get selectionLayer(): number
  • set selectionLayer(arg: number): void
  • The selection layer.

    deprecated

    Use selection.layer instead.

    Returns number

  • Parameters

    • arg: number

    Returns void

  • get visibleEdgeColor(): Color
  • set visibleEdgeColor(arg: Color): void
  • The visible edge color.

    Returns Color

  • Parameters

    • arg: Color

    Returns void

  • get width(): number
  • set width(arg: number): void
  • The current width of the internal render targets.

    deprecated

    Use resolution.width instead.

    Returns number

  • Parameters

    • arg: number

    Returns void

  • get xRay(): boolean
  • set xRay(arg: boolean): void
  • Indicates whether X-ray mode is enabled.

    Returns boolean

  • Parameters

    • arg: boolean

    Returns void

Methods

  • addEventListener<T>(type: T, listener: EventListener<Event<string, unknown>[T], T, OutlineEffect>): void
  • addEventListener<T>(type: T, listener: EventListener<{}, T, OutlineEffect>): void
  • Adds a listener to an event type.

    Type Parameters

    • T extends keyof Event<string, unknown>

    Parameters

    • type: T

      The type of event to listen to.

    • listener: EventListener<Event<string, unknown>[T], T, OutlineEffect>

      The function that gets called when the event is fired.

    Returns void

  • Type Parameters

    • T extends string

    Parameters

    Returns void

  • Clears the list of selected objects.

    deprecated

    Use selection.clear() instead.

    Returns OutlineEffect

    This pass.

  • deselectObject(object: Object3D<Object3DEventMap>): OutlineEffect
  • Deselects an object.

    deprecated

    Use selection.delete() instead.

    Parameters

    • object: Object3D<Object3DEventMap>

      The object that should no longer be outlined.

    Returns OutlineEffect

    This pass.

  • dispatchEvent<T>(event: BaseEvent<T> & Event<string, unknown>[T]): void
  • Fire an event type.

    Type Parameters

    • T extends keyof Event<string, unknown>

    Parameters

    • event: BaseEvent<T> & Event<string, unknown>[T]

      The event that gets fired.

    Returns void

  • dispose(): void
  • Performs a shallow search for properties that define a dispose method and deletes them.

    The EffectComposer calls this method when it is being destroyed.

    Returns void

  • getAttributes(): EffectAttribute
  • Returns the effect attributes.

    Returns EffectAttribute

    The attributes.

  • getBlendMode(): BlendMode
  • Returns the blend mode.

    The result of this effect will be blended with the result of the previous effect using this blend mode.

    deprecated

    Use blendMode instead.

    Returns BlendMode

    The blend mode.

  • getBlurPass(): KawaseBlurPass
  • Returns the blur pass.

    deprecated

    Use blurPass instead.

    Returns KawaseBlurPass

    The blur pass.

  • getDefines(): Map<string, string>
  • Returns the preprocessor macro definitions.

    deprecated

    Use defines instead.

    Returns Map<string, string>

    The extensions.

  • getExtensions(): Set<WebGLExtension>
  • Returns the WebGL extensions that are required by this effect.

    deprecated

    Use extensions instead.

    Returns Set<WebGLExtension>

    The extensions.

  • getFragmentShader(): string
  • getName(): string
  • Returns the name of this effect.

    deprecated

    Use name instead.

    Returns string

    The name.

  • getPulseSpeed(): number
  • Returns the pulse speed.

    deprecated

    Use pulseSpeed instead.

    Returns number

    The speed.

  • Returns the resolution.

    Returns Resolution

    The resolution.

  • getResolutionScale(): number
  • Returns the current resolution scale.

    deprecated

    Use resolution instead.

    Returns number

    The resolution scale.

  • getSelection(): Selection
  • Returns the selection.

    deprecated

    Use selection instead.

    Returns Selection

    The selection.

  • getUniforms(): Map<string, Uniform<any>>
  • Returns the uniforms of this effect.

    deprecated

    Use uniforms instead.

    Returns Map<string, Uniform<any>>

    The extensions.

  • getVertexShader(): string
  • hasEventListener<T>(type: T, listener: EventListener<Event<string, unknown>[T], T, OutlineEffect>): boolean
  • hasEventListener<T>(type: T, listener: EventListener<{}, T, OutlineEffect>): boolean
  • Checks if listener is added to an event type.

    Type Parameters

    • T extends keyof Event<string, unknown>

    Parameters

    • type: T

      The type of event to listen to.

    • listener: EventListener<Event<string, unknown>[T], T, OutlineEffect>

      The function that gets called when the event is fired.

    Returns boolean

  • Type Parameters

    • T extends string

    Parameters

    Returns boolean

  • initialize(renderer: WebGLRenderer, alpha: boolean, frameBufferType: number): void
  • Performs initialization tasks.

    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

  • isXRayEnabled(): boolean
  • Indicates whether X-ray mode is enabled.

    deprecated

    Use xRay instead.

    Returns boolean

    Whether X-ray mode is enabled.

  • removeEventListener<T>(type: T, listener: EventListener<Event<string, unknown>[T], T, OutlineEffect>): void
  • removeEventListener<T>(type: T, listener: EventListener<{}, T, OutlineEffect>): void
  • Removes a listener from an event type.

    Type Parameters

    • T extends keyof Event<string, unknown>

    Parameters

    • type: T

      The type of the listener that gets removed.

    • listener: EventListener<Event<string, unknown>[T], T, OutlineEffect>

      The listener function that gets removed.

    Returns void

  • Type Parameters

    • T extends string

    Parameters

    Returns void

  • Selects an object.

    deprecated

    Use selection.add() instead.

    Parameters

    • object: Object3D<Object3DEventMap>

      The object that should be outlined.

    Returns OutlineEffect

    This pass.

  • setAttributes(attributes: EffectAttribute): void
  • Sets the effect attributes.

    Effects that have the same attributes will be executed in the order in which they were registered. Some attributes imply a higher priority.

    Parameters

    • attributes: EffectAttribute

      The attributes.

    Returns void

  • setChanged(): void
  • Informs the associated {@link EffectPass} that this effect requires a shader recompilation.

    Should be called after changing macros or extensions and after adding/removing uniforms.

    Returns void

  • setDepthTexture(depthTexture: Texture, depthPacking?: DepthPackingStrategies): void
  • Sets the depth texture.

    You may override this method if your effect requires direct access to the depth texture that is bound to the associated {@link EffectPass}.

    Parameters

    • depthTexture: Texture

      A depth texture.

    • Optional depthPacking: DepthPackingStrategies

    Returns void

  • setFragmentShader(fragmentShader: string): void
  • Sets the fragment shader.

    Parameters

    • fragmentShader: string

      The fragment shader.

    Returns void

  • setPatternTexture(value: Texture): void
  • Sets the pattern texture.

    deprecated

    Use patternTexture instead.

    Parameters

    • value: Texture

      The new texture.

    Returns void

  • setPulseSpeed(value: number): void
  • Sets the pulse speed. Set to zero to disable.

    deprecated

    Use pulseSpeed instead.

    Parameters

    • value: number

      The speed.

    Returns void

  • setRenderer(renderer: WebGLRenderer): void
  • Sets the renderer.

    deprecated

    Parameters

    • renderer: WebGLRenderer

      The renderer.

    Returns void

  • setResolutionScale(scale: number): void
  • Sets the resolution scale.

    deprecated

    Use resolution instead.

    Parameters

    • scale: number

      The new resolution scale.

    Returns void

  • setSelection(objects: Object3D<Object3DEventMap>[]): OutlineEffect
  • Clears the current selection and selects a list of objects.

    deprecated

    Use selection.set() instead.

    Parameters

    • objects: Object3D<Object3DEventMap>[]

      The objects that should be outlined. This array will be copied.

    Returns OutlineEffect

    This pass.

  • setSize(width: number, height: number): void
  • Updates the size of internal render targets.

    Parameters

    • width: number

      The width.

    • height: number

      The height.

    Returns void

  • setVertexShader(vertexShader: string): void
  • Sets the vertex shader.

    Parameters

    • vertexShader: string

      The vertex shader.

    Returns void

  • setXRayEnabled(value: boolean): void
  • Enables or disables X-ray outlines.

    deprecated

    Use xRay instead.

    Parameters

    • value: boolean

      Whether X-ray should be enabled.

    Returns void

  • update(renderer: WebGLRenderer, inputBuffer: WebGLRenderTarget<Texture>, deltaTime?: number): void
  • Updates this effect.

    Parameters

    • renderer: WebGLRenderer

      The renderer.

    • inputBuffer: WebGLRenderTarget<Texture>

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

    • Optional deltaTime: number

    Returns void