diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-06-25 12:21:55 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-06-25 12:21:55 +0400 |
commit | 44c82198d4852484493c2e33b3ca4ad67fd76fd8 (patch) | |
tree | 4bf2bc23d6034647e0006dfb0c0d2f25f0eb951c /source/blender/compositor/operations/COM_KeyingBlurOperation.h | |
parent | 15cb064e1b853a56fc676db1c2869db47657d91a (diff) |
Optimization of Keying Blur operation
Separate X and Y passes of blurring like it's done for flat
gaussian blur. This reduces computing difficulty from size^2
to 2*size without any visual changes in matte.
Diffstat (limited to 'source/blender/compositor/operations/COM_KeyingBlurOperation.h')
-rw-r--r-- | source/blender/compositor/operations/COM_KeyingBlurOperation.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/source/blender/compositor/operations/COM_KeyingBlurOperation.h b/source/blender/compositor/operations/COM_KeyingBlurOperation.h index 2848f260cbd..41ccb465eab 100644 --- a/source/blender/compositor/operations/COM_KeyingBlurOperation.h +++ b/source/blender/compositor/operations/COM_KeyingBlurOperation.h @@ -32,11 +32,18 @@ class KeyingBlurOperation : public NodeOperation { protected: int size; + int axis; public: + enum BlurAxis { + BLUR_AXIS_X = 0, + BLUR_AXIS_Y = 1 + }; + KeyingBlurOperation(); - void setSize(float value) {this->size = value;} + void setSize(int value) {this->size = value;} + void setAxis(int value) {this->axis = value;} void *initializeTileData(rcti *rect, MemoryBuffer **memoryBuffers); |