Commit: 930771d0cf6bf296b42849b675a1e0c52d04c003
Author: Campbell Barton
Date:   Fri Nov 13 06:12:30 2015 +1100
Branches: master
https://developer.blender.org/rB930771d0cf6bf296b42849b675a1e0c52d04c003

Fix T46749: Texture paint & shadeless mode fails

Using shadeless did nothing in texture-paint mode.
(regression in 2.76)

===================================================================

M       release/scripts/startup/bl_ui/space_view3d.py
M       source/blender/editors/space_view3d/drawmesh.c

===================================================================

diff --git a/release/scripts/startup/bl_ui/space_view3d.py 
b/release/scripts/startup/bl_ui/space_view3d.py
index bb0ad00..b28a00e 100644
--- a/release/scripts/startup/bl_ui/space_view3d.py
+++ b/release/scripts/startup/bl_ui/space_view3d.py
@@ -3046,7 +3046,7 @@ class VIEW3D_PT_view3d_shading(Panel):
             col.prop(view, "use_matcap")
             if view.use_matcap:
                 col.template_icon_view(view, "matcap_icon")
-        elif view.viewport_shade == 'TEXTURED':
+        if view.viewport_shade == 'TEXTURED' or context.mode == 
'PAINT_TEXTURE':
             if scene.render.use_shading_nodes or gs.material_mode != 'GLSL':
                 col.prop(view, "show_textured_shadeless")
 
diff --git a/source/blender/editors/space_view3d/drawmesh.c 
b/source/blender/editors/space_view3d/drawmesh.c
index 5b4322e..9fac4ca 100644
--- a/source/blender/editors/space_view3d/drawmesh.c
+++ b/source/blender/editors/space_view3d/drawmesh.c
@@ -410,9 +410,15 @@ static void draw_textured_begin(Scene *scene, View3D *v3d, 
RegionView3D *rv3d, O
                solidtex = false;
                Gtexdraw.is_lit = 0;
        }
+       else if ((ob->mode & OB_MODE_TEXTURE_PAINT) && 
BKE_scene_use_new_shading_nodes(scene)) {
+               solidtex = true;
+               if (v3d->flag2 & V3D_SHADELESS_TEX)
+                       Gtexdraw.is_lit = 0;
+               else
+                       Gtexdraw.is_lit = -1;
+       }
        else if ((v3d->drawtype == OB_SOLID) ||
-                ((ob->mode & OB_MODE_EDIT) && (v3d->drawtype != OB_TEXTURE)) ||
-                ((ob->mode & OB_MODE_TEXTURE_PAINT) && 
BKE_scene_use_new_shading_nodes(scene)))
+                ((ob->mode & OB_MODE_EDIT) && (v3d->drawtype != OB_TEXTURE)))
        {
                /* draw with default lights in solid draw mode and edit mode */
                solidtex = true;
@@ -1132,10 +1138,14 @@ void draw_mesh_textured(Scene *scene, View3D *v3d, 
RegionView3D *rv3d,
        if (ob->transflag & OB_NEG_SCALE) glFrontFace(GL_CW);
        else glFrontFace(GL_CCW);
 
-       if ((v3d->drawtype == OB_TEXTURE) && (v3d->flag2 & V3D_SHADELESS_TEX))
+       if ((v3d->flag2 & V3D_SHADELESS_TEX) &&
+           ((v3d->drawtype == OB_TEXTURE) || (ob->mode & 
OB_MODE_TEXTURE_PAINT)))
+       {
                glColor3f(1.0f, 1.0f, 1.0f);
-       else
+       }
+       else {
                glEnable(GL_LIGHTING);
+       }
 
        {
                Mesh *me = ob->data;

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to