Revision: 30586
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=30586
Author:   blendix
Date:     2010-07-21 16:13:48 +0200 (Wed, 21 Jul 2010)

Log Message:
-----------
Fix #22786: displace node doesn't work with procedural textures.

Modified Paths:
--------------
    trunk/blender/source/blender/nodes/intern/CMP_util.c

Modified: trunk/blender/source/blender/nodes/intern/CMP_util.c
===================================================================
--- trunk/blender/source/blender/nodes/intern/CMP_util.c        2010-07-21 
14:11:19 UTC (rev 30585)
+++ trunk/blender/source/blender/nodes/intern/CMP_util.c        2010-07-21 
14:13:48 UTC (rev 30586)
@@ -1125,7 +1125,19 @@
 // sets fcol to pixelcolor at (x, y)
 void qd_getPixel(CompBuf* src, int x, int y, float* col)
 {
-       if ((x >= 0) && (x < src->x) && (y >= 0) && (y < src->y)) {
+       if(src->rect_procedural) {
+               float bc[4];
+               src->rect_procedural(src, bc, (float)x/(float)src->xrad, 
(float)y/(float)src->yrad);
+
+               switch(src->type){
+                       /* these fallthrough to get all the channels */
+                       case CB_RGBA: col[3]=bc[3]; 
+                       case CB_VEC3: col[2]=bc[2];
+                       case CB_VEC2: col[1]=bc[1];
+                       case CB_VAL: col[0]=bc[0];
+               }
+       }
+       else if ((x >= 0) && (x < src->x) && (y >= 0) && (y < src->y)) {
                float* bc = &src->rect[(x + y*src->x)*src->type];
                switch(src->type){
                        /* these fallthrough to get all the channels */


_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to