diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2017-06-23 05:12:46 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2017-06-23 05:13:08 +0300 |
commit | 12b985f1b198972ed8d33518ac5c00470c382a95 (patch) | |
tree | 0aa3e6f8c4bed42edeb3c95e9417da4e1d25edd6 /source/blender/draw/engines/eevee | |
parent | 823144f0a67b81aa3135e4d6401cf246ed2c0472 (diff) |
Eevee: Put pack AO parameters.
Diffstat (limited to 'source/blender/draw/engines/eevee')
-rw-r--r-- | source/blender/draw/engines/eevee/eevee_materials.c | 4 | ||||
-rw-r--r-- | source/blender/draw/engines/eevee/shaders/ambient_occlusion_lib.glsl | 8 |
2 files changed, 6 insertions, 6 deletions
diff --git a/source/blender/draw/engines/eevee/eevee_materials.c b/source/blender/draw/engines/eevee/eevee_materials.c index 98f85f32910..f4901ed0c55 100644 --- a/source/blender/draw/engines/eevee/eevee_materials.c +++ b/source/blender/draw/engines/eevee/eevee_materials.c @@ -219,9 +219,7 @@ static void add_standard_uniforms(DRWShadingGroup *shgrp, EEVEE_SceneLayerData * if (vedata->stl->effects->use_ao) { DRW_shgroup_uniform_vec4(shgrp, "viewvecs[0]", (float *)e_data.viewvecs, 2); DRW_shgroup_uniform_buffer(shgrp, "minMaxDepthTex", &vedata->stl->g_data->minmaxz); - DRW_shgroup_uniform_float(shgrp, "aoDistance", &vedata->stl->effects->ao_dist, 1); - DRW_shgroup_uniform_float(shgrp, "aoSamples", &vedata->stl->effects->ao_samples, 1); - DRW_shgroup_uniform_float(shgrp, "aoFactor", &vedata->stl->effects->ao_factor, 1); + DRW_shgroup_uniform_vec3(shgrp, "aoParameters", &vedata->stl->effects->ao_dist, 1); } } diff --git a/source/blender/draw/engines/eevee/shaders/ambient_occlusion_lib.glsl b/source/blender/draw/engines/eevee/shaders/ambient_occlusion_lib.glsl index b044cacf1b1..5a7e893deb6 100644 --- a/source/blender/draw/engines/eevee/shaders/ambient_occlusion_lib.glsl +++ b/source/blender/draw/engines/eevee/shaders/ambient_occlusion_lib.glsl @@ -8,9 +8,11 @@ #define MAX_THETA_STEP 12 uniform sampler2D minMaxDepthTex; -uniform float aoDistance; -uniform float aoSamples; -uniform float aoFactor; +uniform vec3 aoParameters; + +#define aoDistance aoParameters.x +#define aoSamples aoParameters.y +#define aoFactor aoParameters.z float get_max_horizon(vec2 co, vec3 x, float h, float lod) { |