[Bf-blender-cvs] [1ddedfb2afd] blender2.8: 3D viewport: rename ambient to shadow intensity, default single color to 0.8.

Brecht Van Lommel noreply at git.blender.org
Sat May 5 16:02:38 CEST 2018


Commit: 1ddedfb2afd43dd2c2a460a5c13e02f238da3fc0
Author: Brecht Van Lommel
Date:   Sat May 5 15:09:21 2018 +0200
Branches: blender2.8
https://developer.blender.org/rB1ddedfb2afd43dd2c2a460a5c13e02f238da3fc0

3D viewport: rename ambient to shadow intensity, default single color to 0.8.

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

M	release/scripts/startup/bl_ui/space_view3d.py
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/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/startup/bl_ui/space_view3d.py b/release/scripts/startup/bl_ui/space_view3d.py
index a8108f7e5c3..42facabbc41 100644
--- a/release/scripts/startup/bl_ui/space_view3d.py
+++ b/release/scripts/startup/bl_ui/space_view3d.py
@@ -3558,12 +3558,14 @@ class VIEW3D_PT_shading(Panel):
             col.row().prop(shading, "light", expand=True)
             if shading.light == 'STUDIO':
                 col.row().template_icon_view(shading, "studio_light")
-                col.separator()
 
-            col.prop(shading, "show_shadows")
-            if shading.show_shadows:
-                col.prop(shading, "ambient_light_intensity")
-                col.separator()
+            col.separator()
+
+            row = col.row()
+            row.prop(shading, "show_shadows")
+            sub = row.row()
+            sub.active = shading.show_shadows
+            sub.prop(shading, "shadow_intensity", text="")
 
             col.prop(shading, "show_object_overlap")
 
diff --git a/source/blender/blenloader/intern/versioning_280.c b/source/blender/blenloader/intern/versioning_280.c
index 8e56caca308..42412787b3a 100644
--- a/source/blender/blenloader/intern/versioning_280.c
+++ b/source/blender/blenloader/intern/versioning_280.c
@@ -1090,8 +1090,8 @@ void blo_do_versions_280(FileData *fd, Library *UNUSED(lib), Main *main)
 						View3D *v3d = (View3D *)sl;
 						v3d->shading.light = V3D_LIGHTING_STUDIO;
 						v3d->shading.color_type = V3D_SHADING_MATERIAL_COLOR;
-						copy_v3_fl(v3d->shading.single_color, 1.0f);
-						v3d->shading.ambient_intensity = 0.5;
+						copy_v3_fl(v3d->shading.single_color, 0.8f);
+						v3d->shading.shadow_intensity = 0.5;
 
 						v3d->overlay.flag |= V3D_OVERLAY_HIDE_CURSOR;
 						v3d->overlay.backwire_opacity = 0.5f;
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 bc6125f18b6..f96f5ff0af7 100644
--- a/source/blender/draw/engines/workbench/shaders/workbench_composite_frag.glsl
+++ b/source/blender/draw/engines/workbench/shaders/workbench_composite_frag.glsl
@@ -6,7 +6,7 @@ uniform sampler2D normalBuffer;
 /* normalBuffer contains viewport normals */
 uniform vec2 invertedViewportSize;
 uniform vec3 objectOverlapColor = vec3(0.0);
-uniform float lightMultiplier;
+uniform float shadowMultiplier;
 
 layout(std140) uniform world_block {
 	WorldData world_data;
@@ -49,11 +49,11 @@ void main()
 	vec3 normal_viewport = texelFetch(normalBuffer, texel, 0).rgb;
 #endif /* WORKBENCH_ENCODE_NORMALS */
 	vec3 diffuse_light = get_world_diffuse_light(world_data, normal_viewport);
-	vec3 shaded_color = diffuse_light * diffuse_color.rgb * lightMultiplier;
+	vec3 shaded_color = diffuse_light * diffuse_color.rgb * (1.0 - shadowMultiplier);
 
 #else /* V3D_LIGHTING_STUDIO */
 	vec3 diffuse_color = texelFetch(colorBuffer, texel, 0).rgb;
-	vec3 shaded_color = diffuse_color * lightMultiplier;
+	vec3 shaded_color = diffuse_color * (1.0 - shadowMultiplier);
 #endif /* V3D_LIGHTING_STUDIO */
 
 
diff --git a/source/blender/draw/engines/workbench/workbench_materials.c b/source/blender/draw/engines/workbench/workbench_materials.c
index 0538eb4b60a..7c275311494 100644
--- a/source/blender/draw/engines/workbench/workbench_materials.c
+++ b/source/blender/draw/engines/workbench/workbench_materials.c
@@ -290,7 +290,7 @@ void workbench_materials_cache_init(WORKBENCH_Data *vedata)
 	const DRWContextState *draw_ctx = DRW_context_state_get();
 	ViewLayer *view_layer = draw_ctx->view_layer;
 	IDProperty *props = BKE_view_layer_engine_evaluated_get(view_layer, RE_engine_id_BLENDER_WORKBENCH);
-	static float light_multiplier = 1.0f;
+	static float shadow_multiplier = 0.0f;
 
 	const DRWContextState *DCS = DRW_context_state_get();
 
@@ -303,8 +303,8 @@ void workbench_materials_cache_init(WORKBENCH_Data *vedata)
 	else {
 		memset(&wpd->shading, 0, sizeof(wpd->shading));
 		wpd->shading.light = V3D_LIGHTING_STUDIO;
-		wpd->shading.ambient_intensity = 0.5;
-		copy_v3_fl(wpd->shading.single_color, 1.0f);
+		wpd->shading.shadow_intensity = 0.5;
+		copy_v3_fl(wpd->shading.single_color, 0.8f);
 	}
 
 	select_deferred_shaders(wpd);
@@ -326,7 +326,7 @@ void workbench_materials_cache_init(WORKBENCH_Data *vedata)
 			grp = DRW_shgroup_create(wpd->composite_sh, psl->composite_pass);
 			workbench_composite_uniforms(wpd, grp);
 			DRW_shgroup_stencil_mask(grp, 0x00);
-			DRW_shgroup_uniform_float(grp, "lightMultiplier", &light_multiplier, 1);
+			DRW_shgroup_uniform_float(grp, "shadowMultiplier", &shadow_multiplier, 1);
 			DRW_shgroup_call_add(grp, DRW_cache_fullscreen_quad_get(), NULL);
 
 #ifdef DEBUG_SHADOW_VOLUME
@@ -346,7 +346,7 @@ void workbench_materials_cache_init(WORKBENCH_Data *vedata)
 			grp = DRW_shgroup_create(wpd->composite_sh, psl->composite_shadow_pass);
 			DRW_shgroup_stencil_mask(grp, 0x00);
 			workbench_composite_uniforms(wpd, grp);
-			DRW_shgroup_uniform_float(grp, "lightMultiplier", &wpd->shading.ambient_intensity, 1);
+			DRW_shgroup_uniform_float(grp, "shadowMultiplier", &wpd->shading.shadow_intensity, 1);
 			DRW_shgroup_call_add(grp, DRW_cache_fullscreen_quad_get(), NULL);
 #endif
 		}
@@ -354,7 +354,7 @@ void workbench_materials_cache_init(WORKBENCH_Data *vedata)
 			psl->composite_pass = DRW_pass_create("Composite", DRW_STATE_WRITE_COLOR);
 			grp = DRW_shgroup_create(wpd->composite_sh, psl->composite_pass);
 			workbench_composite_uniforms(wpd, grp);
-			DRW_shgroup_uniform_float(grp, "lightMultiplier", &light_multiplier, 1);
+			DRW_shgroup_uniform_float(grp, "shadowMultiplier", &shadow_multiplier, 1);
 			DRW_shgroup_call_add(grp, DRW_cache_fullscreen_quad_get(), NULL);
 		}
 	}
diff --git a/source/blender/editors/space_view3d/space_view3d.c b/source/blender/editors/space_view3d/space_view3d.c
index 0231858a3f2..a5a12b509e1 100644
--- a/source/blender/editors/space_view3d/space_view3d.c
+++ b/source/blender/editors/space_view3d/space_view3d.c
@@ -323,8 +323,8 @@ static SpaceLink *view3d_new(const ScrArea *UNUSED(sa), const Scene *scene)
 	v3d->gridsubdiv = 10;
 	v3d->drawtype = OB_SOLID;
 	v3d->shading.light = V3D_LIGHTING_STUDIO;
-	v3d->shading.ambient_intensity = 0.5;
-	copy_v3_fl(v3d->shading.single_color, 1.0f);
+	v3d->shading.shadow_intensity = 0.5;
+	copy_v3_fl(v3d->shading.single_color, 0.8f);
 
 	v3d->gridflag = V3D_SHOW_X | V3D_SHOW_Y | V3D_SHOW_FLOOR;
 	
diff --git a/source/blender/makesdna/DNA_view3d_types.h b/source/blender/makesdna/DNA_view3d_types.h
index ef2944c12a2..a206d9e6642 100644
--- a/source/blender/makesdna/DNA_view3d_types.h
+++ b/source/blender/makesdna/DNA_view3d_types.h
@@ -139,7 +139,7 @@ typedef struct View3DShading {
 	short light;
 	short studio_light;
 
-	float ambient_intensity;
+	float shadow_intensity;
 	float single_color[3];
 } View3DShading;
 
diff --git a/source/blender/makesrna/intern/rna_space.c b/source/blender/makesrna/intern/rna_space.c
index 101ef0a2e9a..7c5e798651b 100644
--- a/source/blender/makesrna/intern/rna_space.c
+++ b/source/blender/makesrna/intern/rna_space.c
@@ -2233,10 +2233,10 @@ static void rna_def_space_view3d_shading(BlenderRNA *brna)
 	RNA_def_property_ui_text(prop, "Shadow", "Show Shadow");
 	RNA_def_property_update(prop, NC_SPACE | ND_SPACE_VIEW3D, NULL);
 
-	prop = RNA_def_property(srna, "ambient_light_intensity", PROP_FLOAT, PROP_NONE);
-	RNA_def_property_float_sdna(prop, NULL, "shading.ambient_intensity");
+	prop = RNA_def_property(srna, "shadow_intensity", PROP_FLOAT, PROP_FACTOR);
+	RNA_def_property_float_sdna(prop, NULL, "shading.shadow_intensity");
 	RNA_def_property_float_default(prop, 0.5);
-	RNA_def_property_ui_text(prop, "Ambient Light", "Intensity of ambient light for shadows");
+	RNA_def_property_ui_text(prop, "Shadow Intensity", "Darkness of shadows");
 	RNA_def_property_range(prop, 0.0f, 1.0f);
 	RNA_def_property_ui_range(prop, 0.00f, 1.0f, 1, 3);
 	RNA_def_property_clear_flag(prop, PROP_ANIMATABLE);



More information about the Bf-blender-cvs mailing list