Options
All
  • Public
  • Public/Protected
  • All
Menu

Block used to expose an input value

Hierarchy

Index

Constructors

Properties

comments: string

Gets or sets the comments associated with this block

convertToGammaSpace: boolean

Gets or sets a boolean indicating if content needs to be converted to gamma space (for color3/4 only)

convertToLinearSpace: boolean

Gets or sets a boolean indicating if content needs to be converted to linear space (for color3/4 only)

groupInInspector: string

Gets or sets the group to use to display this block in the Inspector

inputsAreExclusive: boolean

Gets or sets a boolean indicating that only one input can be connected at a time

isBoolean: boolean

Gets or set a value indicating that this input can only get 0 and 1 values

isConstant: boolean

Gets or sets a boolean indicating that the value of this input will not change after a build

matrixMode: number

Gets or sets a value used by the Node Material editor to determine how to configure the current value if it is a matrix

max: number

Gets or set a value used to limit the range of float values

min: number

Gets or set a value used to limit the range of float values

onValueChangedObservable: Observable<InputBlock>

Gets an observable raised when the value is changed

uniqueId: number

Gets or sets the unique id of the node

visibleInInspector: boolean

Gets or sets a boolean indicating that this input can be edited in the Inspector (false by default)

visibleOnFrame: boolean

Gets or sets a boolean indicating that this input can be edited from a collapsed frame

Accessors

  • Gets or sets the type of animation applied to the input

    Returns AnimatedInputBlockTypes

  • Gets or sets the type of animation applied to the input

    Parameters

    Returns void

  • get associatedVariableName(): string
  • set associatedVariableName(value: string): void
  • Gets or sets the associated variable name in the shader

    Returns string

  • Gets or sets the associated variable name in the shader

    Parameters

    • value: string

    Returns void

  • get buildId(): number
  • set buildId(value: number): void
  • Gets or sets the build Id

    Returns number

  • Gets or sets the build Id

    Parameters

    • value: number

    Returns void

  • Gets the list of input points

    Returns NodeMaterialConnectionPoint[]

  • get isAttribute(): boolean
  • set isAttribute(value: boolean): void
  • Gets or sets a boolean indicating that this connection point is coming from an attribute. In this case the connection point name must be the name of the attribute to use Can only be set on inputs

    Returns boolean

  • Gets or sets a boolean indicating that this connection point is coming from an attribute. In this case the connection point name must be the name of the attribute to use Can only be set on inputs

    Parameters

    • value: boolean

    Returns void

  • get isFinalMerger(): boolean
  • Gets a boolean indicating that this block is an end block (e.g. it is generating a system value)

    Returns boolean

  • get isInput(): boolean
  • Gets a boolean indicating that this block is an input (e.g. it sends data to the shader)

    Returns boolean

  • get isSystemValue(): boolean
  • Gets a boolean indicating that the current connection point is a system value

    Returns boolean

  • get isTeleportIn(): boolean
  • Gets a boolean indicating if this block is a teleport in

    Returns boolean

  • get isTeleportOut(): boolean
  • Gets a boolean indicating if this block is a teleport out

    Returns boolean

  • get isUndefined(): boolean
  • Gets a boolean indicating that this connection point not defined yet

    Returns boolean

  • get isUniform(): boolean
  • set isUniform(value: boolean): void
  • Gets or sets a boolean indicating that this connection point is coming from an uniform. In this case the connection point name must be the name of the uniform to use. Can only be set on inputs

    Returns boolean

  • Gets or sets a boolean indicating that this connection point is coming from an uniform. In this case the connection point name must be the name of the uniform to use. Can only be set on inputs

    Parameters

    • value: boolean

    Returns void

  • get isUnique(): boolean
  • Gets a boolean indicating that this block can only be used once per NodeMaterial

    Returns boolean

  • get isVarying(): boolean
  • set isVarying(value: boolean): void
  • Gets or sets a boolean indicating that this connection point is generating a varying variable. Can only be set on exit points

    Returns boolean

  • Gets or sets a boolean indicating that this connection point is generating a varying variable. Can only be set on exit points

    Parameters

    • value: boolean

    Returns void

  • get name(): string
  • set name(newName: string): void
  • Gets the name of the block

    Returns string

  • Sets the name of the block. Will check if the name is valid.

    Parameters

    • newName: string

    Returns void

  • Gets the list of output points

    Returns NodeMaterialConnectionPoint[]

  • Gets or sets the current well known value or null if not defined as a system value

    Returns Nullable<NodeMaterialSystemValues>

  • Gets or sets the current well known value or null if not defined as a system value

    Parameters

    Returns void

  • Gets or sets the target of the block

    Returns NodeMaterialBlockTargets

  • Gets or sets the target of the block

    Parameters

    Returns void

  • get value(): any
  • set value(value: any): void
  • Gets or sets the value of that point. Please note that this value will be ignored if valueCallback is defined

    Returns any

  • Gets or sets the value of that point. Please note that this value will be ignored if valueCallback is defined

    Parameters

    • value: any

    Returns void

  • get valueCallback(): (() => any)
  • set valueCallback(value: (() => any)): void
  • Gets or sets a callback used to get the value of that point. Please note that setting this value will force the connection point to ignore the value property

    Returns (() => any)

      • (): any
      • Gets or sets a callback used to get the value of that point. Please note that setting this value will force the connection point to ignore the value property

        Returns any

  • Gets or sets a callback used to get the value of that point. Please note that setting this value will force the connection point to ignore the value property

    Parameters

    • value: (() => any)
        • (): any
        • Returns any

    Returns void

  • get willBeGeneratedIntoVertexShaderFromFragmentShader(): boolean
  • Gets a boolean indicating that the code of this block will be promoted to vertex shader even if connected to fragment output

    Returns boolean

Methods

  • _deserialize(serializationObject: any, scene: Scene, rootUrl: string): void
  • Parameters

    • serializationObject: any
    • scene: Scene
    • rootUrl: string

    Returns void

  • animate(scene: Scene): void
  • Animate the input if animationType !== None

    Parameters

    • scene: Scene

      defines the rendering scene

    Returns void

  • Bind data to effect. Will only be called for blocks with isBindable === true

    Parameters

    • effect: Effect

      defines the effect to bind data to

    • nodeMaterial: NodeMaterial

      defines the hosting NodeMaterial

    • Optional mesh: Mesh

      defines the mesh that will be rendered

    • Optional subMesh: SubMesh

      defines the submesh that will be rendered

    Returns void

  • Compile the current node and generate the shader code

    Parameters

    • state: NodeMaterialBuildState

      defines the current compilation state (uniforms, samplers, current string)

    • activeBlocks: NodeMaterialBlock[]

      defines the list of active blocks (i.e. blocks to compile)

    Returns boolean

    true if already built

  • Clone the current block to a new identical block

    Parameters

    • scene: Scene

      defines the hosting scene

    • Optional rootUrl: string

      defines the root URL to use to load textures and relative dependencies

    Returns null | NodeMaterialBlock

    a copy of the current block

  • Connect current block with another block

    Parameters

    • other: NodeMaterialBlock

      defines the block to connect with

    • Optional options: { input?: string; output?: string; outputSwizzle?: string }

      define the various options to help pick the right connections

      • Optional input?: string
      • Optional output?: string
      • Optional outputSwizzle?: string

    Returns undefined | InputBlock

    the current block

  • dispose(): void
  • getClassName(): string
  • initialize(): void
  • Initialize the block and prepare the context for build

    Returns void

  • initializeDefines(mesh: AbstractMesh, nodeMaterial: NodeMaterial, defines: NodeMaterialDefines, useInstances?: boolean): void
  • Initialize defines for shader compilation

    Parameters

    • mesh: AbstractMesh

      defines the mesh to be rendered

    • nodeMaterial: NodeMaterial

      defines the node material requesting the update

    • defines: NodeMaterialDefines

      defines the material defines to update

    • Optional useInstances: boolean

      specifies that instances should be used

    Returns void

  • Checks if the current block is an ancestor of a given block

    Parameters

    Returns boolean

    true if block is a descendant

  • isConnectedInFragmentShader(): boolean
  • Checks if the block is ready

    Parameters

    • mesh: AbstractMesh

      defines the mesh to be rendered

    • nodeMaterial: NodeMaterial

      defines the node material requesting the update

    • defines: NodeMaterialDefines

      defines the material defines to update

    • Optional useInstances: boolean

      specifies that instances should be used

    Returns boolean

    true if the block is ready

  • Update defines for shader compilation

    Parameters

    • mesh: AbstractMesh

      defines the mesh to be rendered

    • nodeMaterial: NodeMaterial

      defines the node material requesting the update

    • defines: NodeMaterialDefines

      defines the material defines to update

    • Optional useInstances: boolean

      specifies that instances should be used

    • Optional subMesh: SubMesh

      defines which submesh to render

    Returns void

  • Register a new input. Must be called inside a block constructor

    Parameters

    • name: string

      defines the connection point name

    • type: NodeMaterialBlockConnectionPointTypes

      defines the connection point type

    • Optional isOptional: boolean

      defines a boolean indicating that this input can be omitted

    • Optional target: NodeMaterialBlockTargets

      defines the target to use to limit the connection point (will be VertexAndFragment by default)

    • Optional point: NodeMaterialConnectionPoint

      an already created connection point. If not provided, create a new one

    Returns InputBlock

    the current block

  • Function called when a block is declared as repeatable content generator

    Parameters

    • vertexShaderState: NodeMaterialBuildState

      defines the current compilation state for the vertex shader

    • fragmentShaderState: NodeMaterialBuildState

      defines the current compilation state for the fragment shader

    • mesh: AbstractMesh

      defines the mesh to be rendered

    • defines: NodeMaterialDefines

      defines the material defines to update

    Returns void

  • serialize(): any
  • Serializes this block in a JSON representation

    Returns any

  • setAsAttribute(attributeName?: string): InputBlock
  • Set the source of this connection point to a vertex attribute

    Parameters

    • Optional attributeName: string

      defines the attribute name (position, uv, normal, etc...). If not specified it will take the connection point name

    Returns InputBlock

    the current connection point

  • Set the source of this connection point to a system value

    Parameters

    Returns InputBlock

    the current connection point

  • setDefaultValue(): void
  • Set the input block to its default value (based on its type)

    Returns void

  • Add uniforms, samplers and uniform buffers at compilation time

    Parameters

    • state: NodeMaterialBuildState

      defines the state to update

    • nodeMaterial: NodeMaterial

      defines the node material requesting the update

    • defines: NodeMaterialDefines

      defines the material defines to update

    • uniformBuffers: string[]

      defines the list of uniform buffer names

    Returns void

  • validateBlockName(newName: string): boolean
  • Validates if a name is a reserve word.

    Parameters

    • newName: string

      the new name to be given to the node.

    Returns boolean

    false if the name is a reserve word, else true.

Legend

  • Constructor
  • Property
  • Method
  • Accessor
  • Inherited constructor
  • Inherited property
  • Inherited method
  • Inherited accessor
  • Property
  • Method
  • Static method

Settings

Theme