A helper class for creating Gaussian blur effects on textures. This class provides functionality to apply multi-pass Gaussian blur with customizable parameters including blur levels, kernel size, and variance.

Constructors

Methods

  • Creates a complete Gaussian blur expression with multiple blur passes and synthesis. This method generates a series of render passes that apply Gaussian blur at different resolution levels and synthesizes them into a final blurred image.

    Parameters

    • config: {
          parameters: {
              blurPassLevel?: number;
              gaussianKernelSize?: number;
              gaussianVariance?: number;
              isReduceBuffer?: boolean;
              outputFrameBuffer?: FrameBuffer;
              outputFrameBufferLayerIndex?: number;
              synthesizeCoefficient?: [number, number, number, number, number, number];
              textureFormat?: TextureFormatEnum;
          };
          textureToBlur: AbstractTexture;
      }

      Configuration object containing the texture to blur and parameters

      • parameters: {
            blurPassLevel?: number;
            gaussianKernelSize?: number;
            gaussianVariance?: number;
            isReduceBuffer?: boolean;
            outputFrameBuffer?: FrameBuffer;
            outputFrameBufferLayerIndex?: number;
            synthesizeCoefficient?: [number, number, number, number, number, number];
            textureFormat?: TextureFormatEnum;
        }

        Blur configuration parameters

        • OptionalblurPassLevel?: number
        • OptionalgaussianKernelSize?: number
        • OptionalgaussianVariance?: number
        • OptionalisReduceBuffer?: boolean
        • OptionaloutputFrameBuffer?: FrameBuffer
        • OptionaloutputFrameBufferLayerIndex?: number
        • OptionalsynthesizeCoefficient?: [number, number, number, number, number, number]
        • OptionaltextureFormat?: TextureFormatEnum
      • textureToBlur: AbstractTexture

        The source texture to apply Gaussian blur to

    Returns {
        blurExpression: Expression;
        blurredRenderTarget: RenderTargetTexture;
        renderPassesBlurred: RenderPass[];
    }

    An object containing the blur expression, blurred render target, and render passes

  • Destroys all 3D API resources associated with this GaussianBlur instance. This method cleans up all cached framebuffers and their associated GPU resources to prevent memory leaks. Should be called when the GaussianBlur instance is no longer needed.

    Returns void