@@ -23,6 +23,7 @@ in VS_OUT
23
23
uniform vec3 diffuse_albedo;
24
24
uniform vec3 specular_albedo;
25
25
uniform float specular_power;
26
+ uniform float opacity = 1.0 ;
26
27
uniform vec3 ambient;
27
28
28
29
uniform sampler2D base_texture;
@@ -35,7 +36,7 @@ vec3 light_position = vec3(0.0, 0.0, 100.0);
35
36
subroutine(color_t)
36
37
vec4 Constant()
37
38
{
38
- return vec4 (ambient, 1.0 );
39
+ return vec4 (ambient, opacity );
39
40
}
40
41
41
42
subroutine(color_t)
@@ -56,19 +57,14 @@ vec4 PerPixelLighting()
56
57
vec3 diffuse = max (dot (s, n), 0.0 ) * diffuse2;
57
58
vec3 specular = pow (max (dot (r, v), 0.0 ), specular_power) * specular_albedo;
58
59
59
- return vec4 (ambient + diffuse + specular, 1.0 );
60
- }
61
-
62
- subroutine(color_t)
63
- vec4 PPLWithTextureAndVignette()
64
- {
65
- return texture(base_texture, fs_in.T);
60
+ return vec4 (ambient + diffuse + specular, opacity);
66
61
}
67
62
68
63
subroutine(color_t)
69
64
vec4 PPLWithTexture()
70
65
{
71
- vec3 diffuse2 = vec3 (texture(base_texture, fs_in.T));
66
+ vec4 t = texture(base_texture, fs_in.T);
67
+ vec3 diffuse2 = vec3 (t);
72
68
vec3 N2 = fs_in.N;
73
69
74
70
if (! gl_FrontFacing )
@@ -82,8 +78,8 @@ vec4 PPLWithTexture()
82
78
vec3 diffuse = max (dot (s, n), 0.0 ) * diffuse2;
83
79
vec3 specular = pow (max (dot (r, v), 0.0 ), specular_power) * specular_albedo;
84
80
85
- return vec4 (ambient + diffuse + specular, 1.0 );
86
- // vec4(fs_in.T.t, fs_in.T.t, fs_in.T.t, 0); //
81
+ return vec4 (vec3 ( ambient + diffuse + specular), t.a * opacity );
82
+ // vec4(fs_in.T.t, fs_in.T.t, fs_in.T.t, 0); //
87
83
}
88
84
89
85
subroutine(color_t)
0 commit comments