[Bf-blender-cvs] [4d3e44108e7] viewport-compositor: Viewport Compositor: Port Convert Alpha node
Omar Emara
noreply at git.blender.org
Tue Dec 28 20:02:44 CET 2021
Commit: 4d3e44108e7ba402682d68aeb604b0420e0f5c08
Author: Omar Emara
Date: Fri Nov 12 13:12:12 2021 +0200
Branches: viewport-compositor
https://developer.blender.org/rB4d3e44108e7ba402682d68aeb604b0420e0f5c08
Viewport Compositor: Port Convert Alpha node
This patch ports the Convert Alpha node to the viewport compositor. The
shader is a straightforward port of the compositor code.
===================================================================
M source/blender/nodes/composite/nodes/node_composite_premulkey.cc
===================================================================
diff --git a/source/blender/nodes/composite/nodes/node_composite_premulkey.cc b/source/blender/nodes/composite/nodes/node_composite_premulkey.cc
index 68716ee53b5..38b2664809b 100644
--- a/source/blender/nodes/composite/nodes/node_composite_premulkey.cc
+++ b/source/blender/nodes/composite/nodes/node_composite_premulkey.cc
@@ -34,12 +34,27 @@ static bNodeSocketTemplate cmp_node_premulkey_out[] = {
{-1, ""},
};
+static int node_composite_gpu_premulkey(GPUMaterial *mat,
+ bNode *node,
+ bNodeExecData *UNUSED(execdata),
+ GPUNodeStack *in,
+ GPUNodeStack *out)
+{
+ if (node->custom1 == 1) {
+ return GPU_stack_link(mat, node, "color_alpha_unpremultiply", in, out);
+ }
+ else {
+ return GPU_stack_link(mat, node, "color_alpha_premultiply", in, out);
+ }
+}
+
void register_node_type_cmp_premulkey(void)
{
static bNodeType ntype;
cmp_node_type_base(&ntype, CMP_NODE_PREMULKEY, "Alpha Convert", NODE_CLASS_CONVERTER, 0);
node_type_socket_templates(&ntype, cmp_node_premulkey_in, cmp_node_premulkey_out);
+ node_type_gpu(&ntype, node_composite_gpu_premulkey);
nodeRegisterType(&ntype);
}
More information about the Bf-blender-cvs
mailing list