diff options
author | Campbell Barton <ideasman42@gmail.com> | 2013-01-23 07:01:43 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2013-01-23 07:01:43 +0400 |
commit | c8dbf61f3548a235cdc024dacab4e995489c67f6 (patch) | |
tree | 8fda3755049a4886aed6eb944042fb21c97ddc40 /source/blender/render | |
parent | cba88c17786baf83d535a051449491a083666e65 (diff) |
fix [#33729] Shadows produce artefacts in vertex colour baking
Diffstat (limited to 'source/blender/render')
-rw-r--r-- | source/blender/render/intern/source/rendercore.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/source/blender/render/intern/source/rendercore.c b/source/blender/render/intern/source/rendercore.c index dc49de52cc3..1ef6e6b5263 100644 --- a/source/blender/render/intern/source/rendercore.c +++ b/source/blender/render/intern/source/rendercore.c @@ -2430,7 +2430,12 @@ static void do_bake_shade(void *handle, int x, int y, float u, float v) shi->co[0]= l*v3[0]+u*v1[0]+v*v2[0]; shi->co[1]= l*v3[1]+u*v1[1]+v*v2[1]; shi->co[2]= l*v3[2]+u*v1[2]+v*v2[2]; - + + /* avoid self shadow with vertex bake from adjacent faces [#33729] */ + if ((bs->vcol != NULL) && (bs->actob == NULL)) { + madd_v3_v3fl(shi->co, vlr->n, 0.00001f); + } + if (obi->flag & R_TRANSFORMED) mul_m4_v3(obi->mat, shi->co); |