[Bf-blender-cvs] [b66600b9f33] master: Compositor: Full frame Value node
Manuel Castilla
noreply at git.blender.org
Wed Jun 16 14:32:52 CEST 2021
Commit: b66600b9f339dabf6a95641b15e7f2f4f7feca8d
Author: Manuel Castilla
Date: Wed Jun 16 14:02:08 2021 +0200
Branches: master
https://developer.blender.org/rBb66600b9f339dabf6a95641b15e7f2f4f7feca8d
Compositor: Full frame Value node
Adds full frame implementation to Value node operation.
No functional changes.
Reviewed By: jbakker
Differential Revision: https://developer.blender.org/D11594
===================================================================
M source/blender/compositor/operations/COM_SetValueOperation.cc
M source/blender/compositor/operations/COM_SetValueOperation.h
===================================================================
diff --git a/source/blender/compositor/operations/COM_SetValueOperation.cc b/source/blender/compositor/operations/COM_SetValueOperation.cc
index ef43cf64653..39cf92d325f 100644
--- a/source/blender/compositor/operations/COM_SetValueOperation.cc
+++ b/source/blender/compositor/operations/COM_SetValueOperation.cc
@@ -24,6 +24,7 @@ SetValueOperation::SetValueOperation()
{
this->addOutputSocket(DataType::Value);
flags.is_set_operation = true;
+ flags.is_fullframe_operation = true;
}
void SetValueOperation::executePixelSampled(float output[4],
@@ -41,4 +42,14 @@ void SetValueOperation::determineResolution(unsigned int resolution[2],
resolution[1] = preferredResolution[1];
}
+void SetValueOperation::update_memory_buffer(MemoryBuffer *output,
+ const rcti &output_area,
+ Span<MemoryBuffer *> UNUSED(inputs),
+ ExecutionSystem &UNUSED(exec_system))
+{
+ BLI_assert(output->is_a_single_elem());
+ float *out_elem = output->get_elem(output_area.xmin, output_area.ymin);
+ *out_elem = m_value;
+}
+
} // namespace blender::compositor
diff --git a/source/blender/compositor/operations/COM_SetValueOperation.h b/source/blender/compositor/operations/COM_SetValueOperation.h
index 5383f3b5fd3..cf578e1794f 100644
--- a/source/blender/compositor/operations/COM_SetValueOperation.h
+++ b/source/blender/compositor/operations/COM_SetValueOperation.h
@@ -51,6 +51,10 @@ class SetValueOperation : public NodeOperation {
void executePixelSampled(float output[4], float x, float y, PixelSampler sampler) override;
void determineResolution(unsigned int resolution[2],
unsigned int preferredResolution[2]) override;
+ void update_memory_buffer(MemoryBuffer *output,
+ const rcti &output_area,
+ Span<MemoryBuffer *> inputs,
+ ExecutionSystem &exec_system) override;
};
} // namespace blender::compositor
More information about the Bf-blender-cvs
mailing list