Blender V4.3
COM_algorithm_symmetric_separable_blur.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
8
9#include "DNA_scene_types.h"
10
11#include "COM_context.hh"
12#include "COM_result.hh"
13
15
16/* Blur the input using a horizontal and a vertical separable blur passes given a certain radius
17 * and filter type using SymmetricSeparableBlurWeights. The output is written to the given output
18 * result, which will be allocated internally and is thus expected not to be previously allocated.
19 * If extend_bounds is true, the output will have an extra radius amount of pixels on the boundary
20 * of the image, where blurring can take place assuming a fully transparent out of bound values. If
21 * gamma_correct is true, the input will be gamma corrected before blurring and then uncorrected
22 * after blurring, using a gamma coefficient of 2. */
23void symmetric_separable_blur(Context &context,
24 Result &input,
25 Result &output,
26 float2 radius,
27 int filter_type = R_FILTER_GAUSS,
28 bool extend_bounds = false,
29 bool gamma_correct = false);
30
31} // namespace blender::realtime_compositor
@ R_FILTER_GAUSS
void symmetric_separable_blur(Context &context, Result &input, Result &output, float2 radius, int filter_type=R_FILTER_GAUSS, bool extend_bounds=false, bool gamma_correct=false)