diff options
author | Campbell Barton <ideasman42@gmail.com> | 2011-12-10 09:38:00 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2011-12-10 09:38:00 +0400 |
commit | 65f3b93f144699fa4aafa46c7e226aa1390b7239 (patch) | |
tree | 1a9599589c98d9e17631844fd011463031fe59cd /source/blender/gpu/intern/gpu_draw.c | |
parent | 99d893bb89a96dd0d6cb9410b12928e7ade4b565 (diff) | |
parent | a88b29c062f32514e4414bfd4006f7b348077a42 (diff) |
svn merge ^/trunk/blender -r42521:42550
Diffstat (limited to 'source/blender/gpu/intern/gpu_draw.c')
-rw-r--r-- | source/blender/gpu/intern/gpu_draw.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/source/blender/gpu/intern/gpu_draw.c b/source/blender/gpu/intern/gpu_draw.c index 3cd3cde8aad..4af0cceb4e0 100644 --- a/source/blender/gpu/intern/gpu_draw.c +++ b/source/blender/gpu/intern/gpu_draw.c @@ -60,6 +60,7 @@ #include "BKE_node.h" #include "BKE_object.h" #include "BKE_scene.h" +#include "BKE_DerivedMesh.h" #include "BLI_threads.h" #include "BLI_blenlib.h" @@ -1155,11 +1156,14 @@ int GPU_enable_material(int nr, void *attribs) if(gattribs && GMS.gmatbuf[nr]) { /* bind glsl material and get attributes */ Material *mat = GMS.gmatbuf[nr]; + float auto_bump_scale; gpumat = GPU_material_from_blender(GMS.gscene, mat); GPU_material_vertex_attributes(gpumat, gattribs); GPU_material_bind(gpumat, GMS.gob->lay, GMS.glay, 1.0, !(GMS.gob->mode & OB_MODE_TEXTURE_PAINT)); - GPU_material_bind_uniforms(gpumat, GMS.gob->obmat, GMS.gviewmat, GMS.gviewinv, GMS.gob->col); + + auto_bump_scale = GMS.gob->derivedFinal != NULL ? GMS.gob->derivedFinal->auto_bump_scale : 1.0f; + GPU_material_bind_uniforms(gpumat, GMS.gob->obmat, GMS.gviewmat, GMS.gviewinv, GMS.gob->col, auto_bump_scale); GMS.gboundmat= mat; /* for glsl use alpha blend mode, unless it's set to solid and |