Options
Menu

Class SpecularAnisotropicChunk

SpecularAnisotropicChunk provides a specular method resulting in anisotropic highlights. These are typical for surfaces with microfacet details such as tiny grooves. In particular, this uses the Heidrich-Seidel distrubution. The tangent vectors are used as the surface groove directions.

Hierarchy

Implements

Index

Constructors

constructor

Properties

_asset

_asset: IAsset

_invalid

_invalid: boolean

Protected _method

_modulateFunction

_modulateFunction: function

Type declaration

    • (targetReg: ShaderRegisterElement, registerCache: ShaderRegisterCache, sharedRegisters: ShaderRegisterData): string
    • Parameters

      • targetReg: ShaderRegisterElement
      • registerCache: ShaderRegisterCache
      • sharedRegisters: ShaderRegisterData

      Returns string

_pIsFirstLight

_pIsFirstLight: boolean

_pool

_pool: IAbstractionPool

Protected _shader

_shader: LightingShader

_specularDataIndex

_specularDataIndex: number

_specularDataRegister

_specularDataRegister: ShaderRegisterElement

_specularTexData

_specularTexData: ShaderRegisterElement

Protected _stage

_stage: Stage

Protected _texture

_texture: GL_TextureBase

_totalLightColorReg

_totalLightColorReg: ShaderRegisterElement

chunkVO

chunkVO: ChunkVO

Methods

_activate

  • _activate(): void

_cleanCompilationData

  • _cleanCompilationData(): void

_deactivate

  • _deactivate(): void

_getFragmentCode

  • _getFragmentCode(targetReg: ShaderRegisterElement, registerCache: ShaderRegisterCache, sharedRegisters: ShaderRegisterData): string

_getFragmentCodePerLight

  • _getFragmentCodePerLight(lightDirReg: ShaderRegisterElement, lightColReg: ShaderRegisterElement, registerCache: ShaderRegisterCache, sharedRegisters: ShaderRegisterData): string
  • Get the fragment shader code that will generate the code relevant to a single light.

    Parameters

    • lightDirReg: ShaderRegisterElement
    • lightColReg: ShaderRegisterElement
    • registerCache: ShaderRegisterCache
    • sharedRegisters: ShaderRegisterData

    Returns string

_getFragmentCodePerProbe

  • _getFragmentCodePerProbe(cubeMapReg: ShaderRegisterElement, weightRegister: string, registerCache: ShaderRegisterCache, sharedRegisters: ShaderRegisterData): string
  • Get the fragment shader code that will generate the code relevant to a single light probe object.

    Parameters

    • cubeMapReg: ShaderRegisterElement
    • weightRegister: string
    • registerCache: ShaderRegisterCache
    • sharedRegisters: ShaderRegisterData

    Returns string

_getFragmentPreLightingCode

  • _getFragmentPreLightingCode(registerCache: ShaderRegisterCache, sharedRegisters: ShaderRegisterData): string

_getVertexCode

  • _getVertexCode(registerCache: ShaderRegisterCache, sharedRegisters: ShaderRegisterData): string
  • Get the vertex shader code for this method.

    internal

    Parameters

    • registerCache: ShaderRegisterCache
    • sharedRegisters: ShaderRegisterData

    Returns string

_initConstants

  • _initConstants(): void

_initVO

_isUsed

  • _isUsed(): boolean

_reset

_setRenderState

  • _setRenderState(renderable: GL_RenderableBase, projection: ProjectionBase): void
  • Sets the render state for a single renderable.

    internal

    Parameters

    • renderable: GL_RenderableBase

      The renderable currently being rendered.

    • projection: ProjectionBase

    Returns void

_usesTangentSpace

  • _usesTangentSpace(): boolean

addEventListener

  • addEventListener(type: string, listener: function): void
  • Add an event listener

    method

    addEventListener

    Parameters

    • type: string
    • listener: function
        • (event: EventBase): void
        • Parameters

          • event: EventBase

          Returns void

    Returns void

dispatchEvent

  • dispatchEvent(event: EventBase): void
  • Dispatch an event

    method

    dispatchEvent

    Parameters

    • event: EventBase

    Returns void

hasEventListener

  • hasEventListener(type: string, listener?: function): boolean
  • check if an object has an event listener assigned to it

    method

    hasListener

    Parameters

    • type: string
    • Optional listener: function
        • (event: EventBase): void
        • Parameters

          • event: EventBase

          Returns void

    Returns boolean

iSetRenderState

  • iSetRenderState(renderable: GL_RenderableBase, projection: ProjectionBase): void
  • Parameters

    • renderable: GL_RenderableBase
    • projection: ProjectionBase

    Returns void

onClear

  • onClear(event: AssetEvent): void
  • Parameters

    • event: AssetEvent

    Returns void

onInvalidate

  • onInvalidate(event: AssetEvent): void
  • Parameters

    • event: AssetEvent

    Returns void

removeEventListener

  • removeEventListener(type: string, listener: function): void
  • Remove an event listener

    method

    removeEventListener

    Parameters

    • type: string
    • listener: function
        • (event: EventBase): void
        • Parameters

          • event: EventBase

          Returns void

    Returns void

Generated using TypeDoc