Project

General

Profile

Download (2.48 KB) Statistics
| Branch: | Revision:

library / src / main / res / raw / blit_depth_fragment_shader.glsl @ 5ec42229

1 7170e4eb leszek
//////////////////////////////////////////////////////////////////////////////////////////////
2 535a45bc Leszek Koltunski
// Copyright 2018 Leszek Koltunski                                                          //
3 7170e4eb leszek
//                                                                                          //
4 535a45bc Leszek Koltunski
// This file is part of Distorted.                                                          //
5 7170e4eb leszek
//                                                                                          //
6 535a45bc Leszek Koltunski
// Distorted is free software: you can redistribute it and/or modify                        //
7 7170e4eb leszek
// it under the terms of the GNU General Public License as published by                     //
8
// the Free Software Foundation, either version 2 of the License, or                        //
9
// (at your option) any later version.                                                      //
10
//                                                                                          //
11 535a45bc Leszek Koltunski
// Distorted is distributed in the hope that it will be useful,                             //
12 7170e4eb leszek
// but WITHOUT ANY WARRANTY; without even the implied warranty of                           //
13
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the                            //
14
// GNU General Public License for more details.                                             //
15
//                                                                                          //
16
// You should have received a copy of the GNU General Public License                        //
17 535a45bc Leszek Koltunski
// along with Distorted.  If not, see <http://www.gnu.org/licenses/>.                       //
18 7170e4eb leszek
//////////////////////////////////////////////////////////////////////////////////////////////
19
20 040cd18c Leszek Koltunski
precision highp float;
21 7170e4eb leszek
22
out vec4 fragColor;           // The output color
23
in vec2 v_TexCoordinate;      // Interpolated texture coordinate per fragment.
24
25
uniform sampler2D u_Texture;
26
uniform sampler2D u_DepthTexture;
27
28
//////////////////////////////////////////////////////////////////////////////////////////////
29 5ec42229 Leszek Koltunski
// why -0.000001 ? On some drivers (for example Qualcomm's V@331, V@415 on Adreno 308 - also on
30
// some Mali devices ) without it the depth test - when postprocessing a flat 2D object - does
31
// not pass (for unknown reasons) and we don't see the Glow halo.  See for example the 'Glowing
32
// Leaf' test app.
33
// 0.000001 shouldn't hurt anyway.
34 7170e4eb leszek
35
void main()                    		
36
  {
37 5ec42229 Leszek Koltunski
  gl_FragDepth = texture(u_DepthTexture,v_TexCoordinate).r -0.000001;
38 040cd18c Leszek Koltunski
  fragColor    = texture(u_Texture     ,v_TexCoordinate);
39 7170e4eb leszek
  }