diff options
author | Lukas Toenne <lukas.toenne@googlemail.com> | 2011-09-06 01:01:50 +0400 |
---|---|---|
committer | Lukas Toenne <lukas.toenne@googlemail.com> | 2011-09-06 01:01:50 +0400 |
commit | 8e0fe8bff72e2dc2926618577eaffdd3417a8304 (patch) | |
tree | 43b933c88cac451518dc68846c1119acacffca4f /source/blender/nodes/intern/CMP_nodes/CMP_vecBlur.c | |
parent | 6e9ff495eb082aeb49e6a1da23a7827d3fcd0fde (diff) |
Merged the particles-2010 branch with node improvements into trunk.
This branch adds mostly organizational improvements to the node system by renaming the node folders and files. A couple of internal features have been added too.
Detailed information can be found on the wiki page:
http://wiki.blender.org/index.php/User:Phonybone/Particles2010
Diffstat (limited to 'source/blender/nodes/intern/CMP_nodes/CMP_vecBlur.c')
-rw-r--r-- | source/blender/nodes/intern/CMP_nodes/CMP_vecBlur.c | 113 |
1 files changed, 0 insertions, 113 deletions
diff --git a/source/blender/nodes/intern/CMP_nodes/CMP_vecBlur.c b/source/blender/nodes/intern/CMP_nodes/CMP_vecBlur.c deleted file mode 100644 index c43bfa2435a..00000000000 --- a/source/blender/nodes/intern/CMP_nodes/CMP_vecBlur.c +++ /dev/null @@ -1,113 +0,0 @@ -/* - * $Id$ - * - * ***** BEGIN GPL LICENSE BLOCK ***** - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License - * as published by the Free Software Foundation; either version 2 - * of the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software Foundation, - * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - * The Original Code is Copyright (C) 2006 Blender Foundation. - * All rights reserved. - * - * The Original Code is: all of this file. - * - * Contributor(s): none yet. - * - * ***** END GPL LICENSE BLOCK ***** - */ - -/** \file blender/nodes/intern/CMP_nodes/CMP_vecBlur.c - * \ingroup cmpnodes - */ - - -#include "../CMP_util.h" - - -/* **************** VECTOR BLUR ******************** */ -static bNodeSocketType cmp_node_vecblur_in[]= { - { SOCK_RGBA, 1, "Image", 0.8f, 0.8f, 0.8f, 1.0f, 0.0f, 1.0f}, - { SOCK_VALUE, 1, "Z", 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f}, - { SOCK_VECTOR, 1, "Speed", 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f}, - { -1, 0, "" } -}; -static bNodeSocketType cmp_node_vecblur_out[]= { - { SOCK_RGBA, 0, "Image", 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f}, - { -1, 0, "" } -}; - - - -static void node_composit_exec_vecblur(void *UNUSED(data), bNode *node, bNodeStack **in, bNodeStack **out) -{ - NodeBlurData *nbd= node->storage; - CompBuf *new, *img= in[0]->data, *vecbuf= in[2]->data, *zbuf= in[1]->data; - - if(img==NULL || vecbuf==NULL || zbuf==NULL || out[0]->hasoutput==0) - return; - if(vecbuf->x!=img->x || vecbuf->y!=img->y) { - printf("ERROR: cannot do different sized vecbuf yet\n"); - return; - } - if(vecbuf->type!=CB_VEC4) { - printf("ERROR: input should be vecbuf\n"); - return; - } - if(zbuf->type!=CB_VAL) { - printf("ERROR: input should be zbuf\n"); - return; - } - if(zbuf->x!=img->x || zbuf->y!=img->y) { - printf("ERROR: cannot do different sized zbuf yet\n"); - return; - } - - /* allow the input image to be of another type */ - img= typecheck_compbuf(in[0]->data, CB_RGBA); - - new= dupalloc_compbuf(img); - - /* call special zbuffer version */ - RE_zbuf_accumulate_vecblur(nbd, img->x, img->y, new->rect, img->rect, vecbuf->rect, zbuf->rect); - - out[0]->data= new; - - if(img!=in[0]->data) - free_compbuf(img); -} - -static void node_composit_init_vecblur(bNode* node) -{ - NodeBlurData *nbd= MEM_callocN(sizeof(NodeBlurData), "node blur data"); - node->storage= nbd; - nbd->samples= 32; - nbd->fac= 1.0f; -} - -/* custom1: itterations, custom2: maxspeed (0 = nolimit) */ -void register_node_type_cmp_vecblur(ListBase *lb) -{ - static bNodeType ntype; - - node_type_base(&ntype, CMP_NODE_VECBLUR, "Vector Blur", NODE_CLASS_OP_FILTER, NODE_OPTIONS, - cmp_node_vecblur_in, cmp_node_vecblur_out); - node_type_size(&ntype, 120, 80, 200); - node_type_init(&ntype, node_composit_init_vecblur); - node_type_storage(&ntype, "NodeBlurData", node_free_standard_storage, node_copy_standard_storage); - node_type_exec(&ntype, node_composit_exec_vecblur); - - nodeRegisterType(lb, &ntype); -} - - |