2
* $Id: SHD_util.h,v 1.5 2007/04/04 13:58:11 jesterking Exp $
4
* ***** BEGIN GPL LICENSE BLOCK *****
6
* This program is free software; you can redistribute it and/or
7
* modify it under the terms of the GNU General Public License
8
* as published by the Free Software Foundation; either version 2
9
* of the License, or (at your option) any later version.
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
16
* You should have received a copy of the GNU General Public License
17
* along with this program; if not, write to the Free Software Foundation,
18
* Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20
* The Original Code is Copyright (C) 2005 Blender Foundation.
21
* All rights reserved.
23
* The Original Code is: all of this file.
25
* Contributor(s): none yet.
27
* ***** END GPL LICENSE BLOCK *****
30
#ifndef SHD_NODE_UTIL_H_
31
#define SHD_NODE_UTIL_H_
36
#include "MEM_guardedalloc.h"
38
#include "DNA_action_types.h"
39
#include "DNA_color_types.h"
40
#include "DNA_ipo_types.h"
42
#include "DNA_image_types.h"
43
#include "DNA_material_types.h"
44
#include "DNA_node_types.h"
45
#include "DNA_object_types.h"
46
#include "DNA_scene_types.h"
47
#include "DNA_space_types.h"
48
#include "DNA_screen_types.h"
49
#include "DNA_texture_types.h"
50
#include "DNA_userdef_types.h"
52
#include "BKE_blender.h"
53
#include "BKE_colortools.h"
54
#include "BKE_global.h"
55
#include "BKE_image.h"
57
#include "BKE_material.h"
58
#include "BKE_texture.h"
59
#include "BKE_utildefines.h"
60
#include "BKE_library.h"
62
#include "../SHD_node.h"
63
#include "node_util.h"
66
#include "BIF_glutil.h"
67
#include "BIF_interface.h"
68
#include "BIF_interface_icons.h"
69
#include "BIF_language.h"
70
#include "BIF_mywindow.h"
71
#include "BIF_previewrender.h"
72
#include "BIF_resources.h"
73
#include "BIF_screen.h"
74
#include "BIF_space.h"
76
#include "BLI_arithb.h"
77
#include "BLI_blenlib.h"
79
#include "BLI_threads.h"
81
#include "IMB_imbuf_types.h"
82
#include "IMB_imbuf.h"
84
#include "BSE_drawipo.h"
88
#include "RE_pipeline.h"
89
#include "RE_shader_ext.h"
96
/* ********* exec data struct, remains internal *********** */
98
typedef struct ShaderCallData {
99
ShadeInput *shi; /* from render pipe */
100
ShadeResult *shr; /* from render pipe */
103
/* output socket defines */
104
#define GEOM_OUT_GLOB 0
105
#define GEOM_OUT_LOCAL 1
106
#define GEOM_OUT_VIEW 2
107
#define GEOM_OUT_ORCO 3
108
#define GEOM_OUT_UV 4
109
#define GEOM_OUT_NORMAL 5
110
#define GEOM_OUT_VCOL 6
112
/* input socket defines */
113
#define MAT_IN_COLOR 0
114
#define MAT_IN_SPEC 1
115
#define MAT_IN_REFL 2
116
#define MAT_IN_NORMAL 3
119
extern void node_ID_title_cb(void *node_v, void *unused_v);
120
void nodestack_get_vec(float *in, short type_in, bNodeStack *ns);