Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOmar Emara <mail@OmarEmara.dev>2022-09-09 14:57:04 +0300
committerOmar Emara <mail@OmarEmara.dev>2022-09-09 14:58:54 +0300
commit04ae0fe46ba1f08ef141a051187bea3763afda8d (patch)
treeb8766dc1956ca91109c8bff92bec88d2b5c7c036 /source/blender/render
parent1339fec22a1aef25a719885977c4da3aab0e93fb (diff)
Realtime Compositor: Implement blur node
This patch implements the blur node for the realtime compositor. The patch is still missing the Variable Size option because it depends on the Erode/Dilate node, which is yet to be implemented. Furthermore, there are a number of optimizations that can be implemented, the most important of which is the IIR implementation of the Fast Gaussian filter, as well as the use of hardware filtering and thread local memory. The latter of which was attempted but was not robust enough, so it will be submitted as separate patch. Differential Revision: https://developer.blender.org/D15663 Reviewed By: Clement Foucault
Diffstat (limited to 'source/blender/render')
-rw-r--r--source/blender/render/intern/initrender.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/source/blender/render/intern/initrender.cc b/source/blender/render/intern/initrender.cc
index cc05aa8621e..1ea93cbf6c8 100644
--- a/source/blender/render/intern/initrender.cc
+++ b/source/blender/render/intern/initrender.cc
@@ -124,7 +124,8 @@ float RE_filter_value(int type, float x)
}
return 1.0f - x;
- case R_FILTER_GAUSS: {
+ case R_FILTER_GAUSS:
+ case R_FILTER_FAST_GAUSS: {
const float two_gaussfac2 = 2.0f * gaussfac * gaussfac;
x *= 3.0f * gaussfac;
return 1.0f / sqrtf((float)M_PI * two_gaussfac2) * expf(-x * x / two_gaussfac2);