forked from bartvdbraak/blender
3D viewport: rename ambient to shadow intensity, default single color to 0.8.
This commit is contained in:
parent
6d980020ba
commit
1ddedfb2af
@ -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")
|
||||
|
||||
|
@ -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;
|
||||
|
@ -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 */
|
||||
|
||||
|
||||
|
@ -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);
|
||||
}
|
||||
}
|
||||
|
@ -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;
|
||||
|
||||
|
@ -139,7 +139,7 @@ typedef struct View3DShading {
|
||||
short light;
|
||||
short studio_light;
|
||||
|
||||
float ambient_intensity;
|
||||
float shadow_intensity;
|
||||
float single_color[3];
|
||||
} View3DShading;
|
||||
|
||||
|
@ -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);
|
||||
|
Loading…
Reference in New Issue
Block a user