Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiika Hamalainen <blender@miikah.org>2011-11-10 14:24:34 +0400
committerMiika Hamalainen <blender@miikah.org>2011-11-10 14:24:34 +0400
commitafeb0eeaf0e8caf5e46a5dd6fbea3786e9fb1354 (patch)
tree36ab74ff3fa36d27c0f35527d3b55e68e3d27fe5 /source/blender/nodes
parent1e035381d10068eb17345a88d42cebc0d579adf3 (diff)
parent1b4a54ad73c058baa59ffdc9e5f18b0b79030fb0 (diff)
Dynamic Paint merge:
Commit Dynamic Paint from "soc-2011-carrot" branch into trunk. End-user documentation: http://wiki.blender.org/index.php/Doc:2.6/Manual/Modifiers/Simulation/Dynamic_Paint GSoC wiki page: http://wiki.blender.org/index.php/User:MiikaH/GSoC-2011-DynamicPaint
Diffstat (limited to 'source/blender/nodes')
-rw-r--r--source/blender/nodes/shader/node_shader_util.c2
-rw-r--r--source/blender/nodes/shader/node_shader_util.h3
-rw-r--r--source/blender/nodes/shader/nodes/node_shader_geom.c8
3 files changed, 10 insertions, 3 deletions
diff --git a/source/blender/nodes/shader/node_shader_util.c b/source/blender/nodes/shader/node_shader_util.c
index dcfdb97f91a..d601c205682 100644
--- a/source/blender/nodes/shader/node_shader_util.c
+++ b/source/blender/nodes/shader/node_shader_util.c
@@ -117,6 +117,8 @@ void ntreeShaderGetTexcoMode(bNodeTree *ntree, int r_mode, short *texco, int *mo
*texco |= TEXCO_NORM|NEED_UV; break;
case GEOM_OUT_VCOL:
*texco |= NEED_UV; *mode |= MA_VERTEXCOL; break;
+ case GEOM_OUT_VCOL_ALPHA:
+ *texco |= NEED_UV; *mode |= MA_VERTEXCOL; break;
}
}
}
diff --git a/source/blender/nodes/shader/node_shader_util.h b/source/blender/nodes/shader/node_shader_util.h
index 369defe490f..48e54d9d0b4 100644
--- a/source/blender/nodes/shader/node_shader_util.h
+++ b/source/blender/nodes/shader/node_shader_util.h
@@ -92,7 +92,8 @@ typedef struct ShaderCallData {
#define GEOM_OUT_UV 4
#define GEOM_OUT_NORMAL 5
#define GEOM_OUT_VCOL 6
-#define GEOM_OUT_FRONTBACK 7
+#define GEOM_OUT_VCOL_ALPHA 7
+#define GEOM_OUT_FRONTBACK 8
/* input socket defines */
diff --git a/source/blender/nodes/shader/nodes/node_shader_geom.c b/source/blender/nodes/shader/nodes/node_shader_geom.c
index bc367dc9de5..ddf1180df9e 100644
--- a/source/blender/nodes/shader/nodes/node_shader_geom.c
+++ b/source/blender/nodes/shader/nodes/node_shader_geom.c
@@ -45,6 +45,7 @@ static bNodeSocketTemplate sh_node_geom_out[]= {
{ SOCK_VECTOR, 0, "UV"},
{ SOCK_VECTOR, 0, "Normal"},
{ SOCK_RGBA, 0, "Vertex Color"},
+ { SOCK_FLOAT, 0, "Vertex Alpha"},
{ SOCK_FLOAT, 0, "Front/Back"},
{ -1, 0, "" }
};
@@ -91,10 +92,13 @@ static void node_shader_exec_geom(void *data, bNode *node, bNodeStack **UNUSED(i
}
copy_v3_v3(out[GEOM_OUT_VCOL]->vec, scol->col);
- out[GEOM_OUT_VCOL]->vec[3]= 1.0f;
+ out[GEOM_OUT_VCOL]->vec[3]= scol->col[3];
+ out[GEOM_OUT_VCOL_ALPHA]->vec[0]= scol->col[3];
}
- else
+ else {
memcpy(out[GEOM_OUT_VCOL]->vec, defaultvcol, sizeof(defaultvcol));
+ out[GEOM_OUT_VCOL_ALPHA]->vec[0]= 1.0f;
+ }
if(shi->osatex) {
out[GEOM_OUT_GLOB]->data= shi->dxgl;