[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [60783] trunk/blender: 3D view: textured draw mode now has a Shadeless option in the Shading panel,

Brecht Van Lommel brechtvanlommel at pandora.be
Tue Oct 15 17:56:00 CEST 2013


Revision: 60783
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=60783
Author:   blendix
Date:     2013-10-15 15:56:00 +0000 (Tue, 15 Oct 2013)
Log Message:
-----------
3D view: textured draw mode now has a Shadeless option in the Shading panel,
to draw textures without shading. For Cycles this was not possible yet, and
for Blender Internal you had to move away all lights which was also not ideal.

(Caminandes feature request)

Modified Paths:
--------------
    trunk/blender/release/scripts/startup/bl_ui/space_view3d.py
    trunk/blender/source/blender/editors/space_view3d/drawmesh.c
    trunk/blender/source/blender/makesdna/DNA_view3d_types.h
    trunk/blender/source/blender/makesrna/intern/rna_space.c

Modified: trunk/blender/release/scripts/startup/bl_ui/space_view3d.py
===================================================================
--- trunk/blender/release/scripts/startup/bl_ui/space_view3d.py	2013-10-15 15:34:14 UTC (rev 60782)
+++ trunk/blender/release/scripts/startup/bl_ui/space_view3d.py	2013-10-15 15:56:00 UTC (rev 60783)
@@ -2633,10 +2633,14 @@
         if not scene.render.use_shading_nodes:
             col.prop(gs, "material_mode", text="")
             col.prop(view, "show_textured_solid")
+        
         if view.viewport_shade == 'SOLID':
             col.prop(view, "use_matcap")
             if view.use_matcap:
                 col.template_icon_view(view, "matcap_icon")
+        elif view.viewport_shade == 'TEXTURED':
+            col.prop(view, "show_textured_shadeless")
+
         col.prop(view, "show_backface_culling")
         if obj and obj.mode == 'EDIT' and view.viewport_shade not in {'BOUNDBOX', 'WIREFRAME'}:
             col.prop(view, "show_occlude_wire")

Modified: trunk/blender/source/blender/editors/space_view3d/drawmesh.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/drawmesh.c	2013-10-15 15:34:14 UTC (rev 60782)
+++ trunk/blender/source/blender/editors/space_view3d/drawmesh.c	2013-10-15 15:56:00 UTC (rev 60783)
@@ -345,7 +345,10 @@
 	else {
 		/* draw with lights in the scene otherwise */
 		solidtex = false;
-		Gtexdraw.is_lit = GPU_scene_object_lights(scene, ob, v3d->lay, rv3d->viewmat, !rv3d->is_persp);
+		if(v3d->flag2 & V3D_SHADELESS_TEX)
+			Gtexdraw.is_lit = 0;
+		else
+			Gtexdraw.is_lit = GPU_scene_object_lights(scene, ob, v3d->lay, rv3d->viewmat, !rv3d->is_persp);
 	}
 	
 	rgba_float_to_uchar(obcol, ob->col);
@@ -955,7 +958,10 @@
 	if (ob->transflag & OB_NEG_SCALE) glFrontFace(GL_CW);
 	else glFrontFace(GL_CCW);
 
-	glEnable(GL_LIGHTING);
+	if ((v3d->drawtype == OB_TEXTURE) && (v3d->flag2 & V3D_SHADELESS_TEX))
+		glColor3f(1.0f, 1.0f, 1.0f);
+	else
+		glEnable(GL_LIGHTING);
 
 	{
 		Mesh *me = ob->data;

Modified: trunk/blender/source/blender/makesdna/DNA_view3d_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_view3d_types.h	2013-10-15 15:34:14 UTC (rev 60782)
+++ trunk/blender/source/blender/makesdna/DNA_view3d_types.h	2013-10-15 15:56:00 UTC (rev 60783)
@@ -280,6 +280,7 @@
 #define V3D_SOLID_MATCAP		4096	/* user flag */
 #define V3D_SHOW_SOLID_MATCAP	8192	/* runtime flag */
 #define V3D_OCCLUDE_WIRE		16384
+#define V3D_SHADELESS_TEX		32768
 
 
 /* View3D->around */

Modified: trunk/blender/source/blender/makesrna/intern/rna_space.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_space.c	2013-10-15 15:34:14 UTC (rev 60782)
+++ trunk/blender/source/blender/makesrna/intern/rna_space.c	2013-10-15 15:56:00 UTC (rev 60783)
@@ -1949,6 +1949,11 @@
 	RNA_def_property_ui_text(prop, "Backface Culling", "Use back face culling to hide the back side of faces");
 	RNA_def_property_update(prop, NC_SPACE | ND_SPACE_VIEW3D, NULL);
 
+	prop = RNA_def_property(srna, "show_textured_shadeless", PROP_BOOLEAN, PROP_NONE);
+	RNA_def_property_boolean_sdna(prop, NULL, "flag2", V3D_SHADELESS_TEX);
+	RNA_def_property_ui_text(prop, "Shadeless", "Show shadeless texture without lighting in textured draw mode");
+	RNA_def_property_update(prop, NC_SPACE | ND_SPACE_VIEW3D, NULL);
+
 	prop = RNA_def_property(srna, "show_occlude_wire", PROP_BOOLEAN, PROP_NONE);
 	RNA_def_property_boolean_sdna(prop, NULL, "flag2", V3D_OCCLUDE_WIRE);
 	RNA_def_property_ui_text(prop, "Hidden Wire", "Use hidden wireframe display");




More information about the Bf-blender-cvs mailing list