diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2019-10-29 17:05:07 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2019-10-29 17:16:47 +0300 |
commit | 883e22a92ca5b2b22bd441bedc6bdd1626980f35 (patch) | |
tree | c031fc40200bf63b65f899ec25e9a4a14ab3f839 /source/blender/draw/engines/eevee/eevee_materials.c | |
parent | d758a79557c05487a2b0014f2851597738ea6ef0 (diff) |
Fix T71050 EEVEE: Light Path Node broken in 2.81
Also fixes the sampling of hashed shadows.
Diffstat (limited to 'source/blender/draw/engines/eevee/eevee_materials.c')
-rw-r--r-- | source/blender/draw/engines/eevee/eevee_materials.c | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/source/blender/draw/engines/eevee/eevee_materials.c b/source/blender/draw/engines/eevee/eevee_materials.c index 701d73461fc..5eba1b6c808 100644 --- a/source/blender/draw/engines/eevee/eevee_materials.c +++ b/source/blender/draw/engines/eevee/eevee_materials.c @@ -68,8 +68,6 @@ static struct { uint sss_count; - float alpha_hash_offset; - float alpha_hash_scale; float noise_offsets[3]; } e_data = {NULL}; /* Engine data */ @@ -609,14 +607,14 @@ void EEVEE_materials_init(EEVEE_ViewLayerData *sldata, } if (!DRW_state_is_image_render() && ((stl->effects->enabled_effects & EFFECT_TAA) == 0)) { - e_data.alpha_hash_offset = 0.0f; - e_data.alpha_hash_scale = 1.0f; + sldata->common_data.alpha_hash_offset = 0.0f; + sldata->common_data.alpha_hash_scale = 1.0f; } else { double r; BLI_halton_1d(5, 0.0, stl->effects->taa_current_sample - 1, &r); - e_data.alpha_hash_offset = (float)r; - e_data.alpha_hash_scale = 0.01f; + sldata->common_data.alpha_hash_offset = (float)r; + sldata->common_data.alpha_hash_scale = 0.01f; } { @@ -1218,14 +1216,6 @@ static void material_opaque(Material *ma, DRW_shgroup_uniform_float(*shgrp_depth, "alphaThreshold", &ma->alpha_threshold, 1); DRW_shgroup_uniform_float(*shgrp_depth_clip, "alphaThreshold", &ma->alpha_threshold, 1); } - else if (ma->blend_method == MA_BM_HASHED) { - DRW_shgroup_uniform_float(*shgrp_depth, "hashAlphaOffset", &e_data.alpha_hash_offset, 1); - DRW_shgroup_uniform_float( - *shgrp_depth_clip, "hashAlphaOffset", &e_data.alpha_hash_offset, 1); - DRW_shgroup_uniform_float_copy(*shgrp_depth, "hashAlphaScale", e_data.alpha_hash_scale); - DRW_shgroup_uniform_float_copy( - *shgrp_depth_clip, "hashAlphaScale", e_data.alpha_hash_scale); - } } } |