diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-06-05 20:05:05 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-06-05 20:05:05 +0400 |
commit | 6b256a7cd82655ac96034fee7d05a202c8b131cb (patch) | |
tree | 64c8d6ca97c56c59b8f877d0c312df432b25799e /source | |
parent | 91429d09a3187c96062dc3fb50bfd5c4eb793a80 (diff) |
Fix subpixel precision in transform node
The node was using sampler from the callee node and passed
it to the input nodes. Since the fact that compositor output
node uses NEAREST interpolation (why it uses nearest is the
whole separate story) it's not possible to have subpixel
precision in such cases:
<image> -> <translate> -> <output>
For now solving by hard-coding translate node to use BILINEAR
interpolation. It can't become worse in this node anyway and
the sampling pipeline is to be re-visited from scratch.
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/compositor/operations/COM_TranslateOperation.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/source/blender/compositor/operations/COM_TranslateOperation.cpp b/source/blender/compositor/operations/COM_TranslateOperation.cpp index 64da954a2e1..191388a42fb 100644 --- a/source/blender/compositor/operations/COM_TranslateOperation.cpp +++ b/source/blender/compositor/operations/COM_TranslateOperation.cpp @@ -59,7 +59,7 @@ void TranslateOperation::executePixelSampled(float output[4], float x, float y, float originalXPos = x - this->getDeltaX(); float originalYPos = y - this->getDeltaY(); - this->m_inputOperation->readSampled(output, originalXPos, originalYPos, sampler); + this->m_inputOperation->readSampled(output, originalXPos, originalYPos, COM_PS_BILINEAR); } bool TranslateOperation::determineDependingAreaOfInterest(rcti *input, ReadBufferOperation *readOperation, rcti *output) |