diff options
Diffstat (limited to 'source/blender/nodes')
-rw-r--r-- | source/blender/nodes/CMakeLists.txt | 2 | ||||
-rw-r--r-- | source/blender/nodes/NOD_composite.h | 8 | ||||
-rw-r--r-- | source/blender/nodes/NOD_shader.h | 8 | ||||
-rw-r--r-- | source/blender/nodes/NOD_socket.h | 8 | ||||
-rw-r--r-- | source/blender/nodes/NOD_texture.h | 8 | ||||
-rw-r--r-- | source/blender/nodes/composite/node_composite_util.h | 8 | ||||
-rw-r--r-- | source/blender/nodes/intern/node_common.c | 2 | ||||
-rw-r--r-- | source/blender/nodes/intern/node_exec.h | 8 | ||||
-rw-r--r-- | source/blender/nodes/intern/node_socket.cc (renamed from source/blender/nodes/intern/node_socket.c) | 109 | ||||
-rw-r--r-- | source/blender/nodes/shader/node_shader_util.h | 8 | ||||
-rw-r--r-- | source/blender/nodes/shader/nodes/node_shader_tex_sky.c | 11 | ||||
-rw-r--r-- | source/blender/nodes/texture/node_texture_util.h | 8 |
12 files changed, 129 insertions, 59 deletions
diff --git a/source/blender/nodes/CMakeLists.txt b/source/blender/nodes/CMakeLists.txt index 80bf0f7c5e2..31b5e922dab 100644 --- a/source/blender/nodes/CMakeLists.txt +++ b/source/blender/nodes/CMakeLists.txt @@ -273,7 +273,7 @@ set(SRC intern/node_common.c intern/node_exec.c - intern/node_socket.c + intern/node_socket.cc intern/node_util.c composite/node_composite_util.h diff --git a/source/blender/nodes/NOD_composite.h b/source/blender/nodes/NOD_composite.h index 534e9012693..6b1dd239294 100644 --- a/source/blender/nodes/NOD_composite.h +++ b/source/blender/nodes/NOD_composite.h @@ -26,6 +26,10 @@ #include "BKE_node.h" +#ifdef __cplusplus +extern "C" { +#endif + extern struct bNodeTreeType *ntreeType_Composite; /* ****************** types array for all composite nodes ****************** */ @@ -143,4 +147,8 @@ const char *node_cmp_rlayers_sock_to_pass(int sock_index); void register_node_type_cmp_custom_group(bNodeType *ntype); +#ifdef __cplusplus +} +#endif + #endif diff --git a/source/blender/nodes/NOD_shader.h b/source/blender/nodes/NOD_shader.h index a89a9e927b9..bf548aea5f4 100644 --- a/source/blender/nodes/NOD_shader.h +++ b/source/blender/nodes/NOD_shader.h @@ -26,6 +26,10 @@ #include "BKE_node.h" +#ifdef __cplusplus +extern "C" { +#endif + extern struct bNodeTreeType *ntreeType_Shader; /* the type definitions array */ @@ -139,4 +143,8 @@ void register_node_type_sh_tex_white_noise(void); void register_node_type_sh_custom_group(bNodeType *ntype); +#ifdef __cplusplus +} +#endif + #endif diff --git a/source/blender/nodes/NOD_socket.h b/source/blender/nodes/NOD_socket.h index b1b1a0e40c6..ce6f0da4aee 100644 --- a/source/blender/nodes/NOD_socket.h +++ b/source/blender/nodes/NOD_socket.h @@ -35,6 +35,10 @@ struct bNode; struct bNodeTree; +#ifdef __cplusplus +extern "C" { +#endif + struct bNodeSocket *node_add_socket_from_template(struct bNodeTree *ntree, struct bNode *node, struct bNodeSocketTemplate *stemp, @@ -46,4 +50,8 @@ void node_socket_init_default_value(struct bNodeSocket *sock); void node_socket_copy_default_value(struct bNodeSocket *to, const struct bNodeSocket *from); void register_standard_node_socket_types(void); +#ifdef __cplusplus +} #endif + +#endif /* __NOD_SOCKET_H__ */ diff --git a/source/blender/nodes/NOD_texture.h b/source/blender/nodes/NOD_texture.h index eaa4952e7e6..07a05f01bc5 100644 --- a/source/blender/nodes/NOD_texture.h +++ b/source/blender/nodes/NOD_texture.h @@ -26,6 +26,10 @@ #include "BKE_node.h" +#ifdef __cplusplus +extern "C" { +#endif + extern struct bNodeTreeType *ntreeType_Texture; /* ****************** types array for all texture nodes ****************** */ @@ -71,4 +75,8 @@ void register_node_type_tex_proc_noise(void); void register_node_type_tex_proc_stucci(void); void register_node_type_tex_proc_distnoise(void); +#ifdef __cplusplus +} +#endif + #endif diff --git a/source/blender/nodes/composite/node_composite_util.h b/source/blender/nodes/composite/node_composite_util.h index 4372ef78bc0..0edc864e98f 100644 --- a/source/blender/nodes/composite/node_composite_util.h +++ b/source/blender/nodes/composite/node_composite_util.h @@ -49,6 +49,10 @@ /* only for forward declarations */ #include "NOD_composite.h" +#ifdef __cplusplus +extern "C" { +#endif + #define CMP_SCALE_MAX 12000 bool cmp_node_poll_default(struct bNodeType *ntype, struct bNodeTree *ntree); @@ -56,4 +60,8 @@ void cmp_node_update_default(struct bNodeTree *UNUSED(ntree), struct bNode *node void cmp_node_type_base( struct bNodeType *ntype, int type, const char *name, short nclass, short flag); +#ifdef __cplusplus +} +#endif + #endif /* __NODE_COMPOSITE_UTIL_H__ */ diff --git a/source/blender/nodes/intern/node_common.c b/source/blender/nodes/intern/node_common.c index 765fa84439f..996fb93eb76 100644 --- a/source/blender/nodes/intern/node_common.c +++ b/source/blender/nodes/intern/node_common.c @@ -125,7 +125,7 @@ static bNodeSocket *group_verify_socket( bNodeSocket *sock; for (sock = verify_lb->first; sock; sock = sock->next) { - if (STREQ(sock->identifier, iosock->identifier)) { + if (sock->typeinfo == iosock->typeinfo && STREQ(sock->identifier, iosock->identifier)) { break; } } diff --git a/source/blender/nodes/intern/node_exec.h b/source/blender/nodes/intern/node_exec.h index 07c12dc7c46..87a61f0a490 100644 --- a/source/blender/nodes/intern/node_exec.h +++ b/source/blender/nodes/intern/node_exec.h @@ -34,6 +34,10 @@ #include "RNA_types.h" +#ifdef __cplusplus +extern "C" { +#endif + struct bNode; struct bNodeStack; struct bNodeTree; @@ -98,4 +102,8 @@ struct bNodeTreeExec *ntreeTexBeginExecTree_internal(struct bNodeExecContext *co bNodeInstanceKey parent_key); void ntreeTexEndExecTree_internal(struct bNodeTreeExec *exec); +#ifdef __cplusplus +} +#endif + #endif diff --git a/source/blender/nodes/intern/node_socket.c b/source/blender/nodes/intern/node_socket.cc index 668dd3829cc..b23511c3bdb 100644 --- a/source/blender/nodes/intern/node_socket.c +++ b/source/blender/nodes/intern/node_socket.cc @@ -53,26 +53,26 @@ struct bNodeSocket *node_add_socket_from_template(struct bNodeTree *ntree, /* initialize default_value */ switch (stemp->type) { case SOCK_FLOAT: { - bNodeSocketValueFloat *dval = sock->default_value; + bNodeSocketValueFloat *dval = (bNodeSocketValueFloat *)sock->default_value; dval->value = stemp->val1; dval->min = stemp->min; dval->max = stemp->max; break; } case SOCK_INT: { - bNodeSocketValueInt *dval = sock->default_value; + bNodeSocketValueInt *dval = (bNodeSocketValueInt *)sock->default_value; dval->value = (int)stemp->val1; dval->min = (int)stemp->min; dval->max = (int)stemp->max; break; } case SOCK_BOOLEAN: { - bNodeSocketValueBoolean *dval = sock->default_value; + bNodeSocketValueBoolean *dval = (bNodeSocketValueBoolean *)sock->default_value; dval->value = (int)stemp->val1; break; } case SOCK_VECTOR: { - bNodeSocketValueVector *dval = sock->default_value; + bNodeSocketValueVector *dval = (bNodeSocketValueVector *)sock->default_value; dval->value[0] = stemp->val1; dval->value[1] = stemp->val2; dval->value[2] = stemp->val3; @@ -81,7 +81,7 @@ struct bNodeSocket *node_add_socket_from_template(struct bNodeTree *ntree, break; } case SOCK_RGBA: { - bNodeSocketValueRGBA *dval = sock->default_value; + bNodeSocketValueRGBA *dval = (bNodeSocketValueRGBA *)sock->default_value; dval->value[0] = stemp->val1; dval->value[1] = stemp->val2; dval->value[2] = stemp->val3; @@ -98,7 +98,7 @@ static bNodeSocket *verify_socket_template( { bNodeSocket *sock; - for (sock = socklist->first; sock; sock = sock->next) { + for (sock = (bNodeSocket *)socklist->first; sock; sock = sock->next) { if (STREQLEN(sock->name, stemp->name, NODE_MAXSTR)) { break; } @@ -153,12 +153,11 @@ static void verify_socket_template_list(bNodeTree *ntree, /* and we put back the verified sockets */ stemp = stemp_first; if (socklist->first) { - /* some dynamic sockets left, store the list start - * so we can add static sockets infront of it. - */ - sock = socklist->first; + /* Some dynamic sockets left, store the list start + * so we can add static sockets in front of it. */ + sock = (bNodeSocket *)socklist->first; while (stemp->type != -1) { - /* put static sockets infront of dynamic */ + /* Put static sockets in front of dynamic. */ BLI_insertlinkbefore(socklist, sock, stemp->sock); stemp++; } @@ -201,8 +200,8 @@ void node_socket_init_default_value(bNodeSocket *sock) switch (type) { case SOCK_FLOAT: { - bNodeSocketValueFloat *dval = MEM_callocN(sizeof(bNodeSocketValueFloat), - "node socket value float"); + bNodeSocketValueFloat *dval = (bNodeSocketValueFloat *)MEM_callocN( + sizeof(bNodeSocketValueFloat), "node socket value float"); dval->subtype = subtype; dval->value = 0.0f; dval->min = -FLT_MAX; @@ -212,8 +211,8 @@ void node_socket_init_default_value(bNodeSocket *sock) break; } case SOCK_INT: { - bNodeSocketValueInt *dval = MEM_callocN(sizeof(bNodeSocketValueInt), - "node socket value int"); + bNodeSocketValueInt *dval = (bNodeSocketValueInt *)MEM_callocN(sizeof(bNodeSocketValueInt), + "node socket value int"); dval->subtype = subtype; dval->value = 0; dval->min = INT_MIN; @@ -223,8 +222,8 @@ void node_socket_init_default_value(bNodeSocket *sock) break; } case SOCK_BOOLEAN: { - bNodeSocketValueBoolean *dval = MEM_callocN(sizeof(bNodeSocketValueBoolean), - "node socket value bool"); + bNodeSocketValueBoolean *dval = (bNodeSocketValueBoolean *)MEM_callocN( + sizeof(bNodeSocketValueBoolean), "node socket value bool"); dval->value = false; sock->default_value = dval; @@ -232,8 +231,8 @@ void node_socket_init_default_value(bNodeSocket *sock) } case SOCK_VECTOR: { static float default_value[] = {0.0f, 0.0f, 0.0f}; - bNodeSocketValueVector *dval = MEM_callocN(sizeof(bNodeSocketValueVector), - "node socket value vector"); + bNodeSocketValueVector *dval = (bNodeSocketValueVector *)MEM_callocN( + sizeof(bNodeSocketValueVector), "node socket value vector"); dval->subtype = subtype; copy_v3_v3(dval->value, default_value); dval->min = -FLT_MAX; @@ -244,16 +243,16 @@ void node_socket_init_default_value(bNodeSocket *sock) } case SOCK_RGBA: { static float default_value[] = {0.0f, 0.0f, 0.0f, 1.0f}; - bNodeSocketValueRGBA *dval = MEM_callocN(sizeof(bNodeSocketValueRGBA), - "node socket value color"); + bNodeSocketValueRGBA *dval = (bNodeSocketValueRGBA *)MEM_callocN( + sizeof(bNodeSocketValueRGBA), "node socket value color"); copy_v4_v4(dval->value, default_value); sock->default_value = dval; break; } case SOCK_STRING: { - bNodeSocketValueString *dval = MEM_callocN(sizeof(bNodeSocketValueString), - "node socket value string"); + bNodeSocketValueString *dval = (bNodeSocketValueString *)MEM_callocN( + sizeof(bNodeSocketValueString), "node socket value string"); dval->subtype = subtype; dval->value[0] = '\0'; @@ -261,16 +260,16 @@ void node_socket_init_default_value(bNodeSocket *sock) break; } case SOCK_OBJECT: { - bNodeSocketValueObject *dval = MEM_callocN(sizeof(bNodeSocketValueObject), - "node socket value object"); + bNodeSocketValueObject *dval = (bNodeSocketValueObject *)MEM_callocN( + sizeof(bNodeSocketValueObject), "node socket value object"); dval->value = NULL; sock->default_value = dval; break; } case SOCK_IMAGE: { - bNodeSocketValueImage *dval = MEM_callocN(sizeof(bNodeSocketValueImage), - "node socket value image"); + bNodeSocketValueImage *dval = (bNodeSocketValueImage *)MEM_callocN( + sizeof(bNodeSocketValueImage), "node socket value image"); dval->value = NULL; sock->default_value = dval; @@ -299,51 +298,51 @@ void node_socket_copy_default_value(bNodeSocket *to, const bNodeSocket *from) switch (from->typeinfo->type) { case SOCK_FLOAT: { - bNodeSocketValueFloat *toval = to->default_value; - bNodeSocketValueFloat *fromval = from->default_value; + bNodeSocketValueFloat *toval = (bNodeSocketValueFloat *)to->default_value; + bNodeSocketValueFloat *fromval = (bNodeSocketValueFloat *)from->default_value; *toval = *fromval; break; } case SOCK_INT: { - bNodeSocketValueInt *toval = to->default_value; - bNodeSocketValueInt *fromval = from->default_value; + bNodeSocketValueInt *toval = (bNodeSocketValueInt *)to->default_value; + bNodeSocketValueInt *fromval = (bNodeSocketValueInt *)from->default_value; *toval = *fromval; break; } case SOCK_BOOLEAN: { - bNodeSocketValueBoolean *toval = to->default_value; - bNodeSocketValueBoolean *fromval = from->default_value; + bNodeSocketValueBoolean *toval = (bNodeSocketValueBoolean *)to->default_value; + bNodeSocketValueBoolean *fromval = (bNodeSocketValueBoolean *)from->default_value; *toval = *fromval; break; } case SOCK_VECTOR: { - bNodeSocketValueVector *toval = to->default_value; - bNodeSocketValueVector *fromval = from->default_value; + bNodeSocketValueVector *toval = (bNodeSocketValueVector *)to->default_value; + bNodeSocketValueVector *fromval = (bNodeSocketValueVector *)from->default_value; *toval = *fromval; break; } case SOCK_RGBA: { - bNodeSocketValueRGBA *toval = to->default_value; - bNodeSocketValueRGBA *fromval = from->default_value; + bNodeSocketValueRGBA *toval = (bNodeSocketValueRGBA *)to->default_value; + bNodeSocketValueRGBA *fromval = (bNodeSocketValueRGBA *)from->default_value; *toval = *fromval; break; } case SOCK_STRING: { - bNodeSocketValueString *toval = to->default_value; - bNodeSocketValueString *fromval = from->default_value; + bNodeSocketValueString *toval = (bNodeSocketValueString *)to->default_value; + bNodeSocketValueString *fromval = (bNodeSocketValueString *)from->default_value; *toval = *fromval; break; } case SOCK_OBJECT: { - bNodeSocketValueObject *toval = to->default_value; - bNodeSocketValueObject *fromval = from->default_value; + bNodeSocketValueObject *toval = (bNodeSocketValueObject *)to->default_value; + bNodeSocketValueObject *fromval = (bNodeSocketValueObject *)from->default_value; *toval = *fromval; id_us_plus(&toval->value->id); break; } case SOCK_IMAGE: { - bNodeSocketValueImage *toval = to->default_value; - bNodeSocketValueImage *fromval = from->default_value; + bNodeSocketValueImage *toval = (bNodeSocketValueImage *)to->default_value; + bNodeSocketValueImage *fromval = (bNodeSocketValueImage *)from->default_value; *toval = *fromval; id_us_plus(&toval->value->id); break; @@ -390,22 +389,22 @@ static void standard_node_socket_interface_verify_socket(bNodeTree *UNUSED(ntree switch (stemp->typeinfo->type) { case SOCK_FLOAT: { - bNodeSocketValueFloat *toval = sock->default_value; - bNodeSocketValueFloat *fromval = stemp->default_value; + bNodeSocketValueFloat *toval = (bNodeSocketValueFloat *)sock->default_value; + bNodeSocketValueFloat *fromval = (bNodeSocketValueFloat *)stemp->default_value; toval->min = fromval->min; toval->max = fromval->max; break; } case SOCK_INT: { - bNodeSocketValueInt *toval = sock->default_value; - bNodeSocketValueInt *fromval = stemp->default_value; + bNodeSocketValueInt *toval = (bNodeSocketValueInt *)sock->default_value; + bNodeSocketValueInt *fromval = (bNodeSocketValueInt *)stemp->default_value; toval->min = fromval->min; toval->max = fromval->max; break; } case SOCK_VECTOR: { - bNodeSocketValueVector *toval = sock->default_value; - bNodeSocketValueVector *fromval = stemp->default_value; + bNodeSocketValueVector *toval = (bNodeSocketValueVector *)sock->default_value; + bNodeSocketValueVector *fromval = (bNodeSocketValueVector *)stemp->default_value; toval->min = fromval->min; toval->max = fromval->max; break; @@ -423,16 +422,16 @@ static void standard_node_socket_interface_from_socket(bNodeTree *UNUSED(ntree), node_socket_copy_default_value(stemp, sock); } +extern "C" void ED_init_standard_node_socket_type(bNodeSocketType *); + static bNodeSocketType *make_standard_socket_type(int type, int subtype) { - extern void ED_init_standard_node_socket_type(bNodeSocketType *); - const char *socket_idname = nodeStaticSocketType(type, subtype); const char *interface_idname = nodeStaticSocketInterfaceType(type, subtype); bNodeSocketType *stype; StructRNA *srna; - stype = MEM_callocN(sizeof(bNodeSocketType), "node socket C type"); + stype = (bNodeSocketType *)MEM_callocN(sizeof(bNodeSocketType), "node socket C type"); stype->free_self = (void (*)(bNodeSocketType * stype)) MEM_freeN; BLI_strncpy(stype->idname, socket_idname, sizeof(stype->idname)); @@ -467,15 +466,15 @@ static bNodeSocketType *make_standard_socket_type(int type, int subtype) return stype; } +extern "C" void ED_init_node_socket_type_virtual(bNodeSocketType *); + static bNodeSocketType *make_socket_type_virtual(void) { - extern void ED_init_node_socket_type_virtual(bNodeSocketType *); - const char *socket_idname = "NodeSocketVirtual"; bNodeSocketType *stype; StructRNA *srna; - stype = MEM_callocN(sizeof(bNodeSocketType), "node socket C type"); + stype = (bNodeSocketType *)MEM_callocN(sizeof(bNodeSocketType), "node socket C type"); stype->free_self = (void (*)(bNodeSocketType * stype)) MEM_freeN; BLI_strncpy(stype->idname, socket_idname, sizeof(stype->idname)); diff --git a/source/blender/nodes/shader/node_shader_util.h b/source/blender/nodes/shader/node_shader_util.h index 8834de0633e..fbb9979cdfa 100644 --- a/source/blender/nodes/shader/node_shader_util.h +++ b/source/blender/nodes/shader/node_shader_util.h @@ -69,6 +69,10 @@ #include "GPU_texture.h" #include "GPU_uniformbuffer.h" +#ifdef __cplusplus +extern "C" { +#endif + bool sh_node_poll_default(struct bNodeType *ntype, struct bNodeTree *ntree); void sh_node_type_base( struct bNodeType *ntype, int type, const char *name, short nclass, short flag); @@ -101,4 +105,8 @@ void ntreeExecGPUNodes(struct bNodeTreeExec *exec, struct GPUMaterial *mat, struct bNode *output_node); +#ifdef __cplusplus +} +#endif + #endif diff --git a/source/blender/nodes/shader/nodes/node_shader_tex_sky.c b/source/blender/nodes/shader/nodes/node_shader_tex_sky.c index cb91e086cf4..0daa948c139 100644 --- a/source/blender/nodes/shader/nodes/node_shader_tex_sky.c +++ b/source/blender/nodes/shader/nodes/node_shader_tex_sky.c @@ -41,8 +41,15 @@ static void node_shader_init_tex_sky(bNodeTree *UNUSED(ntree), bNode *node) tex->sun_direction[2] = 1.0f; tex->turbidity = 2.2f; tex->ground_albedo = 0.3f; - tex->sky_model = SHD_SKY_NEW; - + tex->sun_disc = true; + tex->sun_size = DEG2RADF(0.545); + tex->sun_elevation = M_PI_2; + tex->sun_rotation = 0.0f; + tex->altitude = 0; + tex->air_density = 1.0f; + tex->dust_density = 1.0f; + tex->ozone_density = 1.0f; + tex->sky_model = SHD_SKY_NISHITA; node->storage = tex; } diff --git a/source/blender/nodes/texture/node_texture_util.h b/source/blender/nodes/texture/node_texture_util.h index b3407f68857..7b8581c1f89 100644 --- a/source/blender/nodes/texture/node_texture_util.h +++ b/source/blender/nodes/texture/node_texture_util.h @@ -64,6 +64,10 @@ #include "RE_pipeline.h" #include "RE_shader_ext.h" +#ifdef __cplusplus +extern "C" { +#endif + typedef struct TexCallData { TexResult *target; /* all float[3] */ @@ -124,4 +128,8 @@ void tex_do_preview(bNodePreview *preview, void params_from_cdata(TexParams *out, TexCallData *in); +#ifdef __cplusplus +} +#endif + #endif |