Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClément Foucault <foucault.clem@gmail.com>2018-06-10 18:31:28 +0300
committerClément Foucault <foucault.clem@gmail.com>2018-06-10 21:06:26 +0300
commite321fc4a7c8f93d5ffee50d107430df04b612e23 (patch)
treec37adfff35d88c654926aae1bc49abcec0824d9e /source/blender/draw/engines/workbench/workbench_forward.c
parent15862e199087dec07b784d9af7aa23cdbbdcaff2 (diff)
Workbench: Xray: Make nearest surfaces more clear
By using equation 7 from the paper, we make the surfaces nearest to the viewpoint appear more "opaque". This gives better sense of ordering than the previous weighting function that was really not doing anything.
Diffstat (limited to 'source/blender/draw/engines/workbench/workbench_forward.c')
-rw-r--r--source/blender/draw/engines/workbench/workbench_forward.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/source/blender/draw/engines/workbench/workbench_forward.c b/source/blender/draw/engines/workbench/workbench_forward.c
index fb949cd02c9..4e97fc730a3 100644
--- a/source/blender/draw/engines/workbench/workbench_forward.c
+++ b/source/blender/draw/engines/workbench/workbench_forward.c
@@ -172,6 +172,7 @@ static WORKBENCH_MaterialData *get_or_create_material_data(
psl->transparent_accum_pass);
DRW_shgroup_uniform_block(grp, "world_block", wpd->world_ubo);
DRW_shgroup_uniform_float(grp, "alpha", &wpd->shading.xray_alpha, 1);
+ DRW_shgroup_uniform_vec4(grp, "viewvecs[0]", (float *)wpd->viewvecs, 3);
workbench_material_set_normal_world_matrix(grp, wpd, e_data.normal_world_matrix);
material->object_id = engine_object_data->object_id;
copy_v4_v4(material->material_data.diffuse_color, material_template.material_data.diffuse_color);
@@ -185,7 +186,6 @@ static WORKBENCH_MaterialData *get_or_create_material_data(
DRW_shgroup_uniform_texture(grp, "matcapImage", wpd->studio_light->equirectangular_radiance_gputexture);
}
if (SPECULAR_HIGHLIGHT_ENABLED(wpd) || MATCAP_ENABLED(wpd)) {
- DRW_shgroup_uniform_vec4(grp, "viewvecs[0]", (float *)wpd->viewvecs, 3);
DRW_shgroup_uniform_vec2(grp, "invertedViewportSize", DRW_viewport_invert_size_get(), 1);
}
break;