diff options
author | Jeroen Bakker <j.bakker@atmind.nl> | 2018-05-30 23:17:50 +0300 |
---|---|---|
committer | Jeroen Bakker <j.bakker@atmind.nl> | 2018-05-30 23:19:10 +0300 |
commit | fbd614f1faf805a09e260ebcd67f76a177418cf9 (patch) | |
tree | ee05f5ce89f0b30c4ac178e51ce885aac98fc9a7 | |
parent | 16d3f4db4cc663be928e9a33a6c659c6d3c95c3e (diff) |
Workbench: Highlights
Made the highlights darker (using the defaults of blender 2.7
- sharpness = 50
- spec color = 0.025 (I bumped it to 0.1)
- added a log2 to the frontal camera light to reveal more details of the
mesh
3 files changed, 5 insertions, 5 deletions
diff --git a/source/blender/blenloader/intern/versioning_280.c b/source/blender/blenloader/intern/versioning_280.c index 5ec12aace28..67f53d4d952 100644 --- a/source/blender/blenloader/intern/versioning_280.c +++ b/source/blender/blenloader/intern/versioning_280.c @@ -1498,7 +1498,7 @@ void blo_do_versions_280(FileData *fd, Library *UNUSED(lib), Main *main) { if (!DNA_struct_elem_find(fd->filesdna, "SceneDisplay", "float", "roughness")) { for (Scene *scene = main->scene.first; scene; scene = scene->id.next) { - scene->display.roughness = 0.0f; + scene->display.roughness = 0.5f; } for (bScreen *screen = main->screen.first; screen; screen = screen->id.next) { for (ScrArea *sa = screen->areabase.first; sa; sa = sa->next) { diff --git a/source/blender/draw/engines/workbench/shaders/workbench_world_light_lib.glsl b/source/blender/draw/engines/workbench/shaders/workbench_world_light_lib.glsl index 6a64feb93de..7d1084c78b4 100644 --- a/source/blender/draw/engines/workbench/shaders/workbench_world_light_lib.glsl +++ b/source/blender/draw/engines/workbench/shaders/workbench_world_light_lib.glsl @@ -14,9 +14,9 @@ vec3 get_camera_diffuse_light(WorldData world_data, vec3 N) result = mix(result, world_data.diffuse_light_x_neg, clamp(-N.x, 0.0, 1.0)); result = mix(result, world_data.diffuse_light_z_pos, clamp( N.y, 0.0, 1.0)); result = mix(result, world_data.diffuse_light_z_neg, clamp(-N.y, 0.0, 1.0)); - result = mix(result, world_data.diffuse_light_y_pos, clamp( N.z, 0.0, 1.0)); + result = mix(result, world_data.diffuse_light_y_pos, pow(clamp( N.z, 0.0, 1.0), 2.0)); result = mix(result, world_data.diffuse_light_y_neg, clamp(-N.z, 0.0, 1.0)); - return result.xyz; + return result.rgb; } /* N And I are in View Space. */ @@ -24,7 +24,7 @@ vec3 get_world_specular_light(WorldData world_data, vec3 N, vec3 I) { #ifdef V3D_SHADING_SPECULAR_HIGHLIGHT vec3 reflection_vector = reflect(I, N); - vec3 specular_light = vec3(1.0); + vec3 specular_light = vec3(0.1); /* Simple frontal specular highlights. */ float specular_influence = pow(max(0.0, dot(world_data.light_direction_vs.xyz, reflection_vector)), world_data.specular_sharpness); vec3 specular_color = specular_light * specular_influence; diff --git a/source/blender/draw/engines/workbench/workbench_data.c b/source/blender/draw/engines/workbench/workbench_data.c index 03155b45a34..19bec9734e5 100644 --- a/source/blender/draw/engines/workbench/workbench_data.c +++ b/source/blender/draw/engines/workbench/workbench_data.c @@ -37,7 +37,7 @@ void workbench_private_data_init(WORKBENCH_PrivateData *wpd) copy_v3_v3(wd->object_outline_color, wpd->shading.object_outline_color); wd->object_outline_color[3] = 1.0f; - wd->specular_sharpness = 100.0f - sqrtf(scene->display.roughness) * 100.0f; + wd->specular_sharpness = 100.0f - scene->display.roughness * 100.0f; wpd->world_ubo = DRW_uniformbuffer_create(sizeof(WORKBENCH_UBO_World), &wpd->world_data); } |