Commit: 2094b454474de25e42cd6ec1f63ebc84f50f666a
Author: Brecht Van Lommel
Date:   Sat May 5 10:45:15 2018 +0200
Branches: blender2.8
https://developer.blender.org/rB2094b454474de25e42cd6ec1f63ebc84f50f666a

3D Viewport: make shading and overlay DNA match UI names.

We should use consistent naming between the internal code and UI whenever
possible, only reason not to is file compatibility.

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

M       release/scripts/modules/bpy_extras/object_utils.py
M       release/scripts/presets/keyconfig/3dsmax.py
M       release/scripts/startup/bl_ui/space_view3d.py
M       source/blender/blenkernel/BKE_blender_version.h
M       source/blender/blenloader/intern/versioning_280.c
M       
source/blender/draw/engines/workbench/shaders/workbench_composite_frag.glsl
M       source/blender/draw/engines/workbench/workbench_materials.c
M       source/blender/draw/engines/workbench/workbench_private.h
M       source/blender/draw/intern/draw_manager.c
M       source/blender/draw/intern/draw_view.c
M       source/blender/draw/modes/overlay_mode.c
M       source/blender/editors/space_view3d/space_view3d.c
M       source/blender/makesdna/DNA_view3d_types.h
M       source/blender/makesrna/intern/rna_space.c

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

diff --git a/release/scripts/modules/bpy_extras/object_utils.py 
b/release/scripts/modules/bpy_extras/object_utils.py
index 04b3858bb0d..fd1f253df03 100644
--- a/release/scripts/modules/bpy_extras/object_utils.py
+++ b/release/scripts/modules/bpy_extras/object_utils.py
@@ -222,7 +222,7 @@ def object_add_grid_scale(context):
     space_data = context.space_data
 
     if space_data and space_data.type == 'VIEW_3D':
-        return space_data.grid_scale_unit
+        return space_data.overlay.grid_scale_unit
 
     return 1.0
 
diff --git a/release/scripts/presets/keyconfig/3dsmax.py 
b/release/scripts/presets/keyconfig/3dsmax.py
index 1530554812b..ed51bf95a84 100644
--- a/release/scripts/presets/keyconfig/3dsmax.py
+++ b/release/scripts/presets/keyconfig/3dsmax.py
@@ -722,7 +722,7 @@ kmi.properties.value_1 = 'VERTEX'
 kmi.properties.value_2 = 'INCREMENT'
 kmi = km.keymap_items.new('view3d.select_border', 'EVT_TWEAK_L', 'ANY', 
ctrl=True)
 kmi = km.keymap_items.new('wm.context_toggle', 'G', 'PRESS')
-kmi.properties.data_path = 'space_data.show_floor'
+kmi.properties.data_path = 'space_data.overlay.show_floor'
 
 # Map Animation Channels
 km = kc.keymaps.new('Animation Channels', space_type='EMPTY', 
region_type='WINDOW', modal=False)
diff --git a/release/scripts/startup/bl_ui/space_view3d.py 
b/release/scripts/startup/bl_ui/space_view3d.py
index 7328f28bfad..3a35990fd60 100644
--- a/release/scripts/startup/bl_ui/space_view3d.py
+++ b/release/scripts/startup/bl_ui/space_view3d.py
@@ -3546,9 +3546,9 @@ class VIEW3D_PT_shading(Panel):
 
         if shading.type == 'SOLID':
             col.separator()
-            col.row().prop(shading, "single_color_mode", expand=True)
+            col.row().prop(shading, "color_type", expand=True)
 
-            if shading.single_color_mode == 'SINGLE':
+            if shading.color_type == 'SINGLE':
                 col.separator()
                 col.row().prop(shading, "single_color", text="")
 
@@ -3580,7 +3580,6 @@ class VIEW3D_PT_overlay(Panel):
 
         view = context.space_data
         overlay = view.overlay
-        shading = view.shading
         scene = context.scene
         display_all = overlay.show_overlays
 
@@ -3606,30 +3605,30 @@ class VIEW3D_PT_overlay(Panel):
 
         col = layout.column()
         col.active = display_all
-        col.prop(view, "show_outline_selected")
-        col.prop(view, "show_all_objects_origin")
-        col.prop(view, "show_relationship_lines")
-        col.prop(view, "show_face_orientation_overlay")
+        col.prop(overlay, "show_outline_selected")
+        col.prop(overlay, "show_all_objects_origin")
+        col.prop(overlay, "show_relationship_lines")
+        col.prop(overlay, "show_face_orientation")
 
         col = layout.column()
         col.active = display_all
         split = col.split(percentage=0.55)
-        split.prop(view, "show_floor", text="Grid Floor")
+        split.prop(overlay, "show_floor", text="Grid Floor")
 
         row = split.row(align=True)
-        row.prop(view, "show_axis_x", text="X", toggle=True)
-        row.prop(view, "show_axis_y", text="Y", toggle=True)
-        row.prop(view, "show_axis_z", text="Z", toggle=True)
+        row.prop(overlay, "show_axis_x", text="X", toggle=True)
+        row.prop(overlay, "show_axis_y", text="Y", toggle=True)
+        row.prop(overlay, "show_axis_z", text="Z", toggle=True)
 
         sub = col.column(align=True)
-        sub.active = bool(view.show_floor or view.region_quadviews or not 
view.region_3d.is_perspective)
+        sub.active = bool(overlay.show_floor or view.region_quadviews or not 
view.region_3d.is_perspective)
         subsub = sub.column(align=True)
-        subsub.active = view.show_floor
-        subsub.prop(view, "grid_lines", text="Lines")
-        sub.prop(view, "grid_scale", text="Scale")
+        subsub.active = overlay.show_floor
+        subsub.prop(overlay, "grid_lines", text="Lines")
+        sub.prop(overlay, "grid_scale", text="Scale")
         subsub = sub.column(align=True)
         subsub.active = scene.unit_settings.system == 'NONE'
-        subsub.prop(view, "grid_subdivisions", text="Subdivisions")
+        subsub.prop(overlay, "grid_subdivisions", text="Subdivisions")
 
 
 class VIEW3D_PT_quad_view(Panel):
diff --git a/source/blender/blenkernel/BKE_blender_version.h 
b/source/blender/blenkernel/BKE_blender_version.h
index 194757561d7..a49753d331f 100644
--- a/source/blender/blenkernel/BKE_blender_version.h
+++ b/source/blender/blenkernel/BKE_blender_version.h
@@ -28,7 +28,7 @@
  * and keep comment above the defines.
  * Use STRINGIFY() rather than defining with quotes */
 #define BLENDER_VERSION         280
-#define BLENDER_SUBVERSION      12
+#define BLENDER_SUBVERSION      13
 /* Several breakages with 270, e.g. constraint deg vs rad */
 #define BLENDER_MINVERSION      270
 #define BLENDER_MINSUBVERSION   6
diff --git a/source/blender/blenloader/intern/versioning_280.c 
b/source/blender/blenloader/intern/versioning_280.c
index 8cd9c13be32..10c2e7cb3fb 100644
--- a/source/blender/blenloader/intern/versioning_280.c
+++ b/source/blender/blenloader/intern/versioning_280.c
@@ -966,7 +966,7 @@ void blo_do_versions_280(FileData *fd, Library 
*UNUSED(lib), Main *main)
                                for (SpaceLink *sl = sa->spacedata.first; sl; 
sl = sl->next) {
                                        if (sl->spacetype == SPACE_VIEW3D) {
                                                View3D *v3d = (View3D *)sl;
-                                               v3d->drawtype_lighting = 
V3D_LIGHTING_STUDIO;
+                                               v3d->shading.light = 
V3D_LIGHTING_STUDIO;
 
                                                /* Assume (demo) files written 
with 2.8 want to show
                                                 * Eevee renders in the 
viewport. */
@@ -1069,22 +1069,31 @@ void blo_do_versions_280(FileData *fd, Library 
*UNUSED(lib), Main *main)
                                                        }
                                                }
                                        }
-                                       if (sl->spacetype == SPACE_VIEW3D) {
-                                               View3D *v3d = (View3D *)sl;
-                                               v3d->drawtype_ambient_intensity 
= 0.5;
-                                               
copy_v3_fl(v3d->drawtype_single_color, 1.0f);
-                                               v3d->overlays |= 
V3D_OVERLAY_HIDE_CURSOR;
-                                       }
                                }
                        }
                }
        }
 
-       {
+       if (!MAIN_VERSION_ATLEAST(main, 280, 13)) {
+               /* Initialize specular factor. */
                if (!DNA_struct_elem_find(fd->filesdna, "Lamp", "float", 
"spec_fac")) {
                        for (Lamp *la = main->lamp.first; la; la = la->id.next) 
{
                                la->spec_fac = 1.0f;
                        }
                }
+
+               /* Initialize new view3D options. */
+               for (bScreen *screen = main->screen.first; screen; screen = 
screen->id.next) {
+                       for (ScrArea *sa = screen->areabase.first; sa; sa = 
sa->next) {
+                               for (SpaceLink *sl = sa->spacedata.first; sl; 
sl = sl->next) {
+                                       if (sl->spacetype == SPACE_VIEW3D) {
+                                               View3D *v3d = (View3D *)sl;
+                                               v3d->shading.ambient_intensity 
= 0.5;
+                                               
copy_v3_fl(v3d->shading.single_color, 1.0f);
+                                               v3d->overlay.flag |= 
V3D_OVERLAY_HIDE_CURSOR;
+                                       }
+                               }
+                       }
+               }
        }
 }
diff --git 
a/source/blender/draw/engines/workbench/shaders/workbench_composite_frag.glsl 
b/source/blender/draw/engines/workbench/shaders/workbench_composite_frag.glsl
index 2a17a508046..bc6125f18b6 100644
--- 
a/source/blender/draw/engines/workbench/shaders/workbench_composite_frag.glsl
+++ 
b/source/blender/draw/engines/workbench/shaders/workbench_composite_frag.glsl
@@ -18,12 +18,12 @@ void main()
        vec2 uv_viewport = gl_FragCoord.xy * invertedViewportSize;
        uint object_id = texelFetch(objectId, texel, 0).r;
 
-#ifndef V3D_DRAWOPTION_OBJECT_OVERLAP
+#ifndef V3D_SHADING_OBJECT_OVERLAP
        if (object_id == NO_OBJECT_ID) {
                fragColor = vec4(background_color(world_data, uv_viewport.y), 
0.0);
                return;
        }
-#else /* !V3D_DRAWOPTION_OBJECT_OVERLAP */
+#else /* !V3D_SHADING_OBJECT_OVERLAP */
        float object_overlap = calculate_object_overlap(objectId, texel, 
object_id);
 
        if (object_id == NO_OBJECT_ID) {
@@ -35,7 +35,7 @@ void main()
                }
                return;
        }
-#endif /* !V3D_DRAWOPTION_OBJECT_OVERLAP */
+#endif /* !V3D_SHADING_OBJECT_OVERLAP */
 
 
 #ifdef V3D_LIGHTING_STUDIO
@@ -57,9 +57,9 @@ void main()
 #endif /* V3D_LIGHTING_STUDIO */
 
 
-#ifdef V3D_DRAWOPTION_OBJECT_OVERLAP
+#ifdef V3D_SHADING_OBJECT_OVERLAP
        shaded_color = mix(objectOverlapColor, shaded_color, object_overlap);
-#endif /* V3D_DRAWOPTION_OBJECT_OVERLAP */
+#endif /* V3D_SHADING_OBJECT_OVERLAP */
 
        fragColor = vec4(shaded_color, 1.0);
 }
diff --git a/source/blender/draw/engines/workbench/workbench_materials.c 
b/source/blender/draw/engines/workbench/workbench_materials.c
index 9126ab801c7..1ee4aa88c8d 100644
--- a/source/blender/draw/engines/workbench/workbench_materials.c
+++ b/source/blender/draw/engines/workbench/workbench_materials.c
@@ -72,18 +72,19 @@ extern char datatoc_workbench_world_light_lib_glsl[];
 
 extern DrawEngineType draw_engine_workbench_solid;
 
-#define NORMAL_VIEWPORT_PASS_ENABLED(wpd) (wpd->drawtype_lighting & 
V3D_LIGHTING_STUDIO)
-#define SHADOW_ENABLED(wpd) (wpd->drawtype_options & V3D_DRAWOPTION_SHADOW)
+#define OBJECT_ID_PASS_ENABLED(wpd) (wpd->shading.flag & 
V3D_SHADING_OBJECT_OVERLAP)
+#define NORMAL_VIEWPORT_PASS_ENABLED(wpd) (wpd->shading.light & 
V3D_LIGHTING_STUDIO)
+#define SHADOW_ENABLED(wpd) (wpd->shading.flag & V3D_SHADING_SHADOW)
 static char *workbench_build_defines(WORKBENCH_PrivateData *wpd)
 {
        char *str = NULL;
 
        DynStr *ds = BLI_dynstr_new();
 
-       if (wpd->drawtype_options & V3D_DRAWOPTION_OBJECT_OVERLAP) {
-               BLI_dynstr_appendf(ds, "#define 
V3D_DRAWOPTION_OBJECT_OVERLAP\n");
+       if (wpd->shading.flag & V3D_SHADING_OBJECT_OVERLAP) {
+               BLI_dynstr_appendf(ds, "#define V3D_SHADING_OBJECT_OVERLAP\n");
        }
-       if (wpd->drawtype_lighting & V3D_LIGHTING_STUDIO) {
+       if (wpd->shading.light & V3D_LIGHTING_STUDIO) {
                BLI_dynstr_appendf(ds, "#define V3D_LIGHTING_STUDIO\n");
        }
 
@@ -106,10 +107,10 @@ static char 
*workbench_build_composite_frag(WORKBENCH_PrivateData *wpd)
        BLI_dynstr_append(ds, datatoc_workbench_common_lib_glsl);
        BLI_dynstr_append(ds, datatoc_workbench_background_lib_glsl);
 
-       if (wpd->drawtype_lighting & V3D_LIGHTING_STUDIO) {
+       if (wpd->shading.light & V3D_LIGHTING_STUDIO) {
                BLI_dynstr_append(ds, datatoc_workbench_world_light_lib_glsl);
        }
-       if (wpd->drawtype_options & V3D_DRAWOPTION_OBJECT_OVERLAP) {
+       if (wpd->shading.flag & V3D_SHADING_OBJECT_OVERLAP) {
                BLI_dynstr_append(ds, 
datatoc_workbench_object_overlap_lib_glsl);
        }
 
@@ -136,9 +137,9 @@ static char *workbench_build_prepass_frag(voi

@@ Diff output truncated at 10240 characters. @@

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

Reply via email to