diff options
author | Campbell Barton <ideasman42@gmail.com> | 2012-03-18 00:39:28 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2012-03-18 00:39:28 +0400 |
commit | 91580c0929f96562895d262d621745956c3ad35e (patch) | |
tree | 7338f08f832189bca3b98e8e6308a0115b475de5 /source/blender/blenkernel/intern/dynamicpaint.c | |
parent | 8b7ea6fc90c43a7d2b04a5ced81614776bbba77c (diff) |
swap BMLoopCol r/b color, requires subversion bump.
old mesh MCol 'r' was blue, 'b' was red, but theres no reason to keep this for bmesh with MLoopCol.
Loading old files works, saving legacy format works too.
What wont work is loading a file after this revision and loading it in an older revision since the bmesh merge.
(it wont crash but the blue and red will be swapped on vertex color layers).
Diffstat (limited to 'source/blender/blenkernel/intern/dynamicpaint.c')
-rw-r--r-- | source/blender/blenkernel/intern/dynamicpaint.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/source/blender/blenkernel/intern/dynamicpaint.c b/source/blender/blenkernel/intern/dynamicpaint.c index 2c7814a6a43..ea3e31de75c 100644 --- a/source/blender/blenkernel/intern/dynamicpaint.c +++ b/source/blender/blenkernel/intern/dynamicpaint.c @@ -1653,15 +1653,13 @@ static struct DerivedMesh *dynamicPaint_Modifier_apply(DynamicPaintModifierData /* mix surface color */ interp_v3_v3v3(c, c, &fcolor[v_index], fcolor[v_index+3]); - col[l_index].r = FTOCHAR(c[2]); - col[l_index].g = FTOCHAR(c[1]); - col[l_index].b = FTOCHAR(c[0]); + rgb_float_to_uchar((unsigned char *)&col[l_index].r, c); } else { - col[l_index].a = 255; col[l_index].r = col[l_index].g = col[l_index].b = FTOCHAR(pPoint[v_index].wetness); + col[l_index].a = 255; } } } @@ -1681,10 +1679,8 @@ static struct DerivedMesh *dynamicPaint_Modifier_apply(DynamicPaintModifierData #pragma omp parallel for schedule(static) for (i=0; i<totloop; i++) { int index = mloop[i].v*4; - col[i].a = FTOCHAR(fcolor[index+3]); - col[i].r = FTOCHAR(fcolor[index+2]); - col[i].g = FTOCHAR(fcolor[index+1]); - col[i].b = FTOCHAR(fcolor[index]); + rgb_float_to_uchar((unsigned char *)&col[i].r, &fcolor[index]); + col[i].a = FTOCHAR(fcolor[index+3]); /* IS THIS NEEDED? */ } } @@ -1700,10 +1696,10 @@ static struct DerivedMesh *dynamicPaint_Modifier_apply(DynamicPaintModifierData #pragma omp parallel for schedule(static) for (i=0; i<totloop; i++) { int index = mloop[i].v; - col[i].a = 255; col[i].r = col[i].g = col[i].b = FTOCHAR(pPoint[index].wetness); + col[i].a = 255; } } } |