diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-11-10 08:59:32 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-11-10 08:59:32 +0400 |
commit | 819ca0accc482226e28d756f1311a30cfd740834 (patch) | |
tree | 9eb01aabb2f2d124379e9c7f86233204e1a96815 /source/blender/compositor/operations/COM_MovieDistortionOperation.cpp | |
parent | f6a110d6ea99b10be72203dee44175624adafa82 (diff) |
Fixes for movie distortion node
- Somehow this node was using nearest interpolation which seems have been
passed from compositor node. It was using b-spline interpolation with
old compositor implementation. Now forced this node to use bilinear
interpolation, which should be close enough.
- Operation should be marked as complex it seems, otherwise area of
interest wouldn't make any affect on it's behavior.
Diffstat (limited to 'source/blender/compositor/operations/COM_MovieDistortionOperation.cpp')
-rw-r--r-- | source/blender/compositor/operations/COM_MovieDistortionOperation.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/source/blender/compositor/operations/COM_MovieDistortionOperation.cpp b/source/blender/compositor/operations/COM_MovieDistortionOperation.cpp index df48c7a6716..7106b015fe6 100644 --- a/source/blender/compositor/operations/COM_MovieDistortionOperation.cpp +++ b/source/blender/compositor/operations/COM_MovieDistortionOperation.cpp @@ -49,7 +49,9 @@ MovieDistortionOperation::MovieDistortionOperation(bool distortion) : NodeOperat this->m_movieClip = NULL; this->m_cache = NULL; this->m_distortion = distortion; + setComplex(true); } + void MovieDistortionOperation::initExecution() { this->m_inputOperation = this->getInputSocketReader(0); @@ -105,10 +107,10 @@ void MovieDistortionOperation::executePixel(float output[4], float x, float y, P if (this->m_cache != NULL) { float u, v; this->m_cache->getUV(&this->m_movieClip->tracking, x, y, &u, &v); - this->m_inputOperation->read(output, u, v, sampler); + this->m_inputOperation->read(output, u, v, COM_PS_BILINEAR); } else { - this->m_inputOperation->read(output, x, y, sampler); + this->m_inputOperation->read(output, x, y, COM_PS_BILINEAR); } } |