Project

General

Profile

« Previous | Next » 

Revision 81a0b906

Added by Leszek Koltunski about 7 years ago

Preparation for shader optimization

View differences:

src/main/res/raw/main_fragment_shader.glsl
37 37
//////////////////////////////////////////////////////////////////////////////////////////////
38 38
// CHROMA EFFECT
39 39

  
40
#if defined(CHROMA) || defined(SMOOTH_CHROMA)
40 41
void chroma(float degree, int effect, inout vec4 color)
41 42
  {
42 43
  color.rgb = mix(color.rgb, fUniforms[effect].yzw, degree*fUniforms[effect].x);
43 44
  }
45
#endif
44 46

  
45 47
//////////////////////////////////////////////////////////////////////////////////////////////
46 48
// ALPHA EFFECT (change transparency level)
47 49

  
50
#if defined(ALPHA) || defined(SMOOTH_ALPHA)
48 51
void alpha(float degree, int effect, inout vec4 color)
49 52
  {
50 53
  color.a *= (degree*(fUniforms[effect].x-1.0)+1.0); 
51 54
  }
55
#endif
52 56

  
53 57
//////////////////////////////////////////////////////////////////////////////////////////////
54 58
// BRIGHTNESS EFFECT
55 59

  
60
#if defined(BRIGHTNESS) || defined(SMOOTH_BRIGHTNESS)
56 61
void brightness(float degree, int effect, inout vec4 color)
57 62
  {
58 63
  color.rgb = mix(vec3(0.0,0.0,0.0), color.rgb, degree*(fUniforms[effect].x-1.0)+1.0 ); 
59 64
  }
60
  
65
#endif
66

  
61 67
//////////////////////////////////////////////////////////////////////////////////////////////
62 68
// CONTRAST EFFECT
63 69

  
70
#if defined(CONTRAST) || defined(SMOOTH_CONTRAST)
64 71
void contrast(float degree, int effect, inout vec4 color)
65 72
  {
66 73
  color.rgb = mix(vec3(0.5,0.5,0.5), color.rgb, degree*(fUniforms[effect].x-1.0)+1.0 ); 
67 74
  }
75
#endif
68 76

  
69 77
//////////////////////////////////////////////////////////////////////////////////////////////
70 78
// SATURATION EFFECT
71 79

  
80
#if defined(SATURATION) || defined(SMOOTH_SATURATION)
72 81
void saturation(float degree, int effect, inout vec4 color)
73 82
  {
74 83
  float luminance = dot(LUMI,color.rgb);
75 84
  color.rgb = mix(vec3(luminance,luminance,luminance), color.rgb, degree*(fUniforms[effect].x-1.0)+1.0 ); 
76 85
  }
86
#endif
77 87

  
78 88
#endif
79 89

  
......
92 102
    diff = (v_Position.xy - fUniforms[2*i+1].xy)/fUniforms[2*i+1].zw;
93 103
    pointDegree = max(0.0,1.0-dot(diff,diff));
94 104

  
95
         if( fType[i]==CHROMA            ) chroma    (sign(pointDegree),2*i,pixel);
96
    else if( fType[i]==SMOOTH_CHROMA     ) chroma    (     pointDegree ,2*i,pixel);
97
    else if( fType[i]==ALPHA             ) alpha     (sign(pointDegree),2*i,pixel);
98
    else if( fType[i]==SMOOTH_ALPHA      ) alpha     (     pointDegree ,2*i,pixel);
99
    else if( fType[i]==BRIGHTNESS        ) brightness(sign(pointDegree),2*i,pixel);
100
    else if( fType[i]==SMOOTH_BRIGHTNESS ) brightness(     pointDegree ,2*i,pixel);
101
    else if( fType[i]==CONTRAST          ) contrast  (sign(pointDegree),2*i,pixel);
102
    else if( fType[i]==SMOOTH_CONTRAST   ) contrast  (     pointDegree ,2*i,pixel);
103
    else if( fType[i]==SATURATION        ) saturation(sign(pointDegree),2*i,pixel);
104
    else if( fType[i]==SMOOTH_SATURATION ) saturation(     pointDegree ,2*i,pixel);
105
#ifdef CHROMA
106
    if( fType[i]==CHROMA            ) chroma    (sign(pointDegree),2*i,pixel); else
107
#endif
108
#ifdef SMOOTH_CHROMA
109
    if( fType[i]==SMOOTH_CHROMA     ) chroma    (     pointDegree ,2*i,pixel); else
110
#endif
111
#ifdef ALPHA
112
    if( fType[i]==ALPHA             ) alpha     (sign(pointDegree),2*i,pixel); else
113
#endif
114
#ifdef SMOOTH_ALPHA
115
    if( fType[i]==SMOOTH_ALPHA      ) alpha     (     pointDegree ,2*i,pixel); else
116
#endif
117
#ifdef BRIGHTNESS
118
    if( fType[i]==BRIGHTNESS        ) brightness(sign(pointDegree),2*i,pixel); else
119
#endif
120
#ifdef SMOOTH_BRIGHTNESS
121
    if( fType[i]==SMOOTH_BRIGHTNESS ) brightness(     pointDegree ,2*i,pixel); else
122
#endif
123
#ifdef CONTRAST
124
    if( fType[i]==CONTRAST          ) contrast  (sign(pointDegree),2*i,pixel); else
125
#endif
126
#ifdef SMOOTH_CONTRAST
127
    if( fType[i]==SMOOTH_CONTRAST   ) contrast  (     pointDegree ,2*i,pixel); else
128
#endif
129
#ifdef SATURATION
130
    if( fType[i]==SATURATION        ) saturation(sign(pointDegree),2*i,pixel); else
131
#endif
132
#ifdef SMOOTH_SATURATION
133
    if( fType[i]==SMOOTH_SATURATION ) saturation(     pointDegree ,2*i,pixel); else
134
#endif
135
    {}
105 136
    }
106 137
#endif
107 138

  

Also available in: Unified diff