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:
Diffstat (limited to 'source/blender/compositor/operations/COM_MovieClipOperation.cc')
-rw-r--r--source/blender/compositor/operations/COM_MovieClipOperation.cc24
1 files changed, 24 insertions, 0 deletions
diff --git a/source/blender/compositor/operations/COM_MovieClipOperation.cc b/source/blender/compositor/operations/COM_MovieClipOperation.cc
index d93a75407c4..e520b928edf 100644
--- a/source/blender/compositor/operations/COM_MovieClipOperation.cc
+++ b/source/blender/compositor/operations/COM_MovieClipOperation.cc
@@ -116,6 +116,18 @@ void MovieClipBaseOperation::executePixelSampled(float output[4],
}
}
+void MovieClipBaseOperation::update_memory_buffer_partial(MemoryBuffer *output,
+ const rcti &area,
+ Span<MemoryBuffer *> UNUSED(inputs))
+{
+ if (m_movieClipBuffer) {
+ output->copy_from(m_movieClipBuffer, area);
+ }
+ else {
+ output->fill(area, COM_COLOR_TRANSPARENT);
+ }
+}
+
MovieClipOperation::MovieClipOperation() : MovieClipBaseOperation()
{
this->addOutputSocket(DataType::Color);
@@ -136,4 +148,16 @@ void MovieClipAlphaOperation::executePixelSampled(float output[4],
output[0] = result[3];
}
+void MovieClipAlphaOperation::update_memory_buffer_partial(MemoryBuffer *output,
+ const rcti &area,
+ Span<MemoryBuffer *> UNUSED(inputs))
+{
+ if (m_movieClipBuffer) {
+ output->copy_from(m_movieClipBuffer, area, 3, COM_DATA_TYPE_VALUE_CHANNELS, 0);
+ }
+ else {
+ output->fill(area, COM_VALUE_ZERO);
+ }
+}
+
} // namespace blender::compositor