summaryrefslogtreecommitdiff
path: root/src/effects/gaussian_blur_effect.h
blob: 43d0120a208dacb4dacd77e841acf47f69c88e22 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// Gaussian blur effect v2 - single-pass blur
// effect_params.p: x=strength(8.0), y=strength_audio(0.5), z=stretch(1.0)

#pragma once
#include "effects/shaders.h"
#include "gpu/wgsl_effect.h"

struct GaussianBlur : public WgslEffect {
  GaussianBlur(const GpuContext& ctx, const std::vector<std::string>& inputs,
               const std::vector<std::string>& outputs, float start_time,
               float end_time)
      : WgslEffect(ctx, inputs, outputs, start_time, end_time,
                   gaussian_blur_shader_wgsl, WGPULoadOp_Clear,
                   WgslEffectParams{{8.0f, 0.5f, 1.0f, 0.0f}, {}}) {
  }
};