diff options
author | Antony Riakiotakis <kalast@gmail.com> | 2015-02-17 20:08:28 +0300 |
---|---|---|
committer | Antony Riakiotakis <kalast@gmail.com> | 2015-02-17 20:11:22 +0300 |
commit | ff7220349d32e747c7559809d68de7d835c0c1cd (patch) | |
tree | c6955f0b86bcf12ab6dc5d87b4a48300375d3da3 /SConstruct | |
parent | a0d7db503d82c1a5b56a5723da90364f11569b37 (diff) |
Compositing works with X-Ray.
Basically, before drawing X-Rays, we now bind a second depth buffer.
After drawing XRays, we do an extra resolve pass where we overwrite the
non-XRay depth buffer in pixels where the depth is not maximum (which
means background pixel, since depth is cleared before drawing X-Ray
objects).
This ensures both scene and X-Rays keep their depth values and are ready
for compositing. Well, the odd effect due to depth discontinuities can be
expected, and X-Rays are a bit more expensive (extra buffer + resolve pass)
but at least X-Rays won't invalidate depth values anymore. Whee!
Diffstat (limited to 'SConstruct')
-rw-r--r-- | SConstruct | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/SConstruct b/SConstruct index 225b532c8a0..29e22cb32a7 100644 --- a/SConstruct +++ b/SConstruct @@ -765,6 +765,7 @@ if B.targets != ['cudakernels']: data_to_c_simple("source/blender/gpu/shaders/gpu_shader_fx_dof_frag.glsl") data_to_c_simple("source/blender/gpu/shaders/gpu_shader_fx_dof_vert.glsl") data_to_c_simple("source/blender/gpu/shaders/gpu_shader_fx_lib.glsl") + data_to_c_simple("source/blender/gpu/shaders/gpu_shader_fx_depth_resolve.glsl") data_to_c_simple("source/blender/gpu/shaders/gpu_shader_fx_vert.glsl") data_to_c_simple("intern/opencolorio/gpu_shader_display_transform.glsl") |