WebGi Rendering Plugins
    Preparing search index...

    Class OutlinePlugin

    Outline Plugin Adds an extension to ScreenPass material and a RenderPass to render the outlines and highlights of the selected objects. It interfaces with the PickingPlugin to render the outlines of the selected objects. The intensity, thickness, etc of the effect can be controlled with the intensity(previously outlineIntensity), thickness etc properties.

    Hierarchy

    • AScreenPassExtensionPlugin
      • OutlinePlugin
    Index

    Constructors

    Properties

    __setDirty?: () => void
    _dirty: boolean = false
    _shaderPatch: string = 'diffuseColor = outline(diffuseColor);'
    _viewer?: ThreeViewer
    _viewerListeners: { preRender: () => void } = ...
    bufferType: TextureDataType
    color: Color = ...
    constructor: typeof AScreenPassExtensionPlugin & typeof AViewerPluginSync & typeof AViewerPlugin
    debugOutline: boolean = false
    dependencies: (typeof GBufferPlugin | typeof PickingPlugin)[] = ...
    enabled: boolean
    enableDynamicSelection: boolean = true
    enableHighlight: boolean = false
    extraDefines: { DEBUG_OUTLINE: "0" } = ...
    extraUniforms: {
        dpr: IUniform<number>;
        enableHighlight: { value: true };
        highlightTransparency: { value: 1 };
        outlineBuffer: { value: null };
        outlineColor: { value: Color };
        outlineIntensity: { value: 1 };
        outlineThickness: { value: 2 };
        tDiffuseSize: { value: Vector2 };
    } = ...
    highlightMaterialSameNames: boolean = false
    highlightSelectedMaterials: boolean = false
    highlightTransparency: number = 0.84
    intensity: number = 2
    isViewerPluginSync: true = ...
    material: ShaderMaterial = ...
    mouseInOutAnimationEnabled: boolean = true
    passId: "outline" = 'outline'
    priority: number = -101

    The priority of the material extension when applied to the material in ScreenPass set to very low priority, so applied at the end.

    thickness: number = 2
    transparency: number = 0

    Highlight Transparency.

    For internal use, don't change. use highlightTransparency instead.

    uiConfig?: UiObjectConfig<any, string, any> = undefined
    OldPluginType: "Outline" = 'Outline'
    PluginType: "OutlinePlugin" = 'OutlinePlugin'

    Accessors

    Methods

    • Parameters

      • e: IViewerEvent

      Returns IViewerEvent

    • Parameters

      • Optionalprefix: string

      Returns string

    • Parameters

      • key: any
      • setDirty: boolean = true

      Returns void

    • Parameters

      • key: any
      • setDirty: boolean = true

      Returns void

    • Returns ISerializedConfig | Record<string, never>

    • Parameters

      • state: any

      Returns Promise<void>

    • Function to check if this material extension is compatible with the given material. If not compatible, the material extension will not be added to the material. This is only checked when the extension is registered.

      The extension is assumed to be compatible if this function is not defined

      Parameters

      • _: IMaterial

      Returns boolean

    • Parameters

      • Optionalmeta: SerializationMetaType

      Returns ISerializedConfig