Documentation / scene / BaseTextureNode
Abstract Class: BaseTextureNode
Defined in: libs/scene/src/utility/blueprint/material/texture.ts:278
Abstract base class for texture nodes
Remarks
Provides common functionality for all texture types in the material node graph. Texture nodes represent shader texture uniforms and their sampling parameters.
Common properties:
- paramName: The shader uniform name for this texture
- addressU/V: Texture coordinate wrapping modes (clamp, repeat, mirrored-repeat)
- filterMin: Minification filter (nearest, linear)
- filterMag: Magnification filter (nearest, linear)
- filterMip: Mipmap filter (nearest, linear, none)
- texture: Reference to the actual GPU texture resource
- textureId: Asset ID for serialization/loading
Texture addressing modes:
- clamp: Coordinates outside [0,1] are clamped to edge colors
- repeat: Texture tiles infinitely (wraps around)
- mirrored-repeat: Texture tiles with alternating mirroring
Filtering modes:
- nearest: Point sampling (sharp, pixelated)
- linear: Bilinear interpolation (smooth)
- none: No mipmap filtering (mip filter only)
Type Param
T
The specific texture type (Texture2D, TextureCube, etc.)
Extends
Extended by
Constructors
Constructor
new BaseTextureNode():
BaseTextureNode
Defined in: libs/scene/src/utility/blueprint/material/texture.ts:306
Creates a new texture node
Returns
BaseTextureNode
Remarks
Initializes with default sampling parameters:
- Auto-generated unique parameter name
- Clamp addressing mode
- Nearest filtering (point sampling)
- No mipmap filtering
- Empty texture ID
Overrides
Properties
sRGB
sRGB:
boolean
Defined in: libs/scene/src/utility/blueprint/material/texture.ts:282
Whether this texture should be loaded in sRGB color space
addressU
addressU:
TextureAddressMode
Defined in: libs/scene/src/utility/blueprint/material/texture.ts:284
Horizontal texture coordinate wrapping mode
addressV
addressV:
TextureAddressMode
Defined in: libs/scene/src/utility/blueprint/material/texture.ts:286
Vertical texture coordinate wrapping mode
filterMin
filterMin:
TextureFilterMode
Defined in: libs/scene/src/utility/blueprint/material/texture.ts:288
Minification filter mode
filterMag
filterMag:
TextureFilterMode
Defined in: libs/scene/src/utility/blueprint/material/texture.ts:290
Magnification filter mode
filterMip
filterMip:
TextureFilterMode
Defined in: libs/scene/src/utility/blueprint/material/texture.ts:292
Mipmap filter mode
textureId
textureId:
string
Defined in: libs/scene/src/utility/blueprint/material/texture.ts:294
Asset ID for the texture (for serialization)
_inputs
protected_inputs:GraphNodeInput[]
Defined in: libs/scene/src/utility/blueprint/node.ts:336
Internal storage for input slot definitions
Inherited from
_outputs
protected_outputs:GraphNodeOutput[]
Defined in: libs/scene/src/utility/blueprint/node.ts:338
Internal storage for output slot definitions
Inherited from
_error
protected_error:string
Defined in: libs/scene/src/utility/blueprint/node.ts:340
Internal storage for error message
Inherited from
Accessors
paramName
Get Signature
get paramName():
string
Defined in: libs/scene/src/utility/blueprint/material/texture.ts:322
Gets the shader parameter name
Returns
string
The uniform name used in generated shader code
Set Signature
set paramName(
val):void
Defined in: libs/scene/src/utility/blueprint/material/texture.ts:325
Uniform parameter name
Parameters
val
string
Returns
void
Uniform parameter name
Overrides
isUniform
Get Signature
get isUniform():
boolean
Defined in: libs/scene/src/utility/blueprint/material/texture.ts:340
Indicates this node represents a shader uniform
Remarks
Texture nodes create uniform declarations in the generated shader code.
Returns
boolean
Always true for texture nodes
Whether this node has uniform value
Overrides
inputs
Get Signature
get inputs():
GraphNodeInput[]
Defined in: libs/scene/src/utility/blueprint/node.ts:380
Gets the input slot definitions array
Returns
Array of input slot definitions
Inherited from
outputs
Get Signature
get outputs():
GraphNodeOutput[]
Defined in: libs/scene/src/utility/blueprint/node.ts:384
Gets the output slot definitions array
Returns
Array of output slot definitions
Inherited from
error
Get Signature
get error():
string
Defined in: libs/scene/src/utility/blueprint/node.ts:388
Gets the current error message
Returns
string
Set Signature
set error(
str):void
Defined in: libs/scene/src/utility/blueprint/node.ts:391
Current error message, empty string if no error
Parameters
str
string
Returns
void
Current error message, empty string if no error
Inherited from
Methods
on()
on<
K>(type,listener,context?):void
Defined in: libs/base/dist/index.d.ts:594
IEventTarget.on
Type Parameters
K
K extends "changed"
Parameters
type
K
listener
EventListener<{ changed: []; }, K>
context?
unknown
Returns
void
Inherited from
once()
once<
K>(type,listener,context?):void
Defined in: libs/base/dist/index.d.ts:598
IEventTarget.once
Type Parameters
K
K extends "changed"
Parameters
type
K
listener
EventListener<{ changed: []; }, K>
context?
unknown
Returns
void
Inherited from
off()
off<
K>(type,listener?,context?):void
Defined in: libs/base/dist/index.d.ts:602
IEventTarget.off
Type Parameters
K
K extends "changed"
Parameters
type
K
listener?
EventListener<{ changed: []; }>
context?
unknown
Returns
void
Inherited from
dispatchEvent()
dispatchEvent<
K>(type, ...args):void
Defined in: libs/base/dist/index.d.ts:606
IEventTarget.dispatchEvent
Type Parameters
K
K extends "changed"
Parameters
type
K
args
...object[K]
Returns
void
Inherited from
toString()
toString():
string
Defined in: libs/scene/src/utility/blueprint/material/texture.ts:348
Generates a string representation of this node
Returns
string
The parameter name
Overrides
validate()
protectedvalidate():string
Defined in: libs/scene/src/utility/blueprint/material/texture.ts:360
Validates the node state
Returns
string
Empty string (always valid)
Remarks
Texture nodes are always valid as they have no required inputs and always have a valid texture (default if none assigned).
Overrides
getType()
protectedgetType():string
Defined in: libs/scene/src/utility/blueprint/material/texture.ts:371
Gets the output type
Returns
string
Empty string (overridden by subclasses)
Remarks
Subclasses return texture type identifiers like 'tex2D', 'texCube', etc.
Overrides
getOutputType()
getOutputType(
id):string
Defined in: libs/scene/src/utility/blueprint/node.ts:376
Gets the output type for a specific output slot
Parameters
id
number
The output slot ID
Returns
string
The type name of the output
Remarks
Default implementation delegates to the abstract getType() method. Can be overridden for more complex type logic.
Inherited from
check()
check():
void
Defined in: libs/scene/src/utility/blueprint/node.ts:413
Validates the node and updates error state
Returns
void
Remarks
Calls the validate() method and stores the result in _error. Emits a 'changed' event if the error state changes.
Inherited from
reset()
reset():
void
Defined in: libs/scene/src/utility/blueprint/node.ts:422
Clears the error state
Returns
void
Remarks
Sets _error to an empty string.
Inherited from
setInput()
setInput(
id,node,inputId):void
Defined in: libs/scene/src/utility/blueprint/node.ts:443
Connects an input slot to another node's output
Parameters
id
number
The input slot ID to connect
node
The source node to connect from
inputId
number
The output slot ID of the source node
Returns
void
Throws
Error if the input slot with the given ID doesn't exist
Example
const addNode = new AddNode();
const constantNode = new ConstantNode(5.0);
// Connect constantNode's output 0 to addNode's input 0
addNode.setInput(0, constantNode, 0);