Inheritance: EventDispatcher → Node → TempNode →
Post processing node for creating a bilateral blur effect.
Bilateral blur smooths an image while preserving sharp edges. Unlike a standard Gaussian blur which blurs everything equally, bilateral blur analyzes the intensity/color of neighboring pixels. If a neighbor is too different from the center pixel (indicating an edge), it is excluded from the blurring process.
Reference: https://en.wikipedia.org/wiki/Bilateral_filter
BilateralBlurNode is an addon, and must be imported explicitly, see Installation#Addons.
import { bilateralBlur } from 'three/addons/tsl/display/BilateralBlurNode.js';
Constructs a new bilateral blur node.
textureNode
The texture node that represents the input of the effect.
directionNode
Defines the direction and radius of the blur.
Default is null.
sigma
Controls the spatial kernel of the blur filter. Higher values mean a wider blur radius.
Default is 4.
sigmaColor
Controls the intensity kernel. Higher values allow more color difference to be blurred together.
Default is 0.1.
Defines the direction and radius of the blur.
The resolution scale.
Default is 1.
Controls the spatial kernel of the blur filter. Higher values mean a wider blur radius.
Controls the color/intensity kernel. Higher values allow more color difference to be blurred together. Lower values preserve edges more strictly.
The texture node that represents the input of the effect.
The updateBeforeType is set to NodeUpdateType.FRAME since the node renders its effect once per frame in updateBefore().
Default is 'frame'.
Overrides: TempNode#updateBeforeType
Frees internal resources. This method should be called when the effect is no longer required.
Overrides: TempNode#dispose
Returns the result of the effect as a texture node.
Returns: A texture node that represents the result of the effect.
Sets the size of the effect.
width
The width of the effect.
height
The height of the effect.
This method is used to setup the effect's TSL code.
builder
The current node builder.
Overrides: TempNode#setup
This method is used to render the effect once per frame.
frame
The current node frame.
Overrides: TempNode#updateBefore