Przeglądaj źródła

added second matrix

ncannasse 10 lat temu
rodzic
commit
2b03e06184
1 zmienionych plików z 4 dodań i 1 usunięć
  1. 4 1
      h3d/pass/ColorMatrix.hx

+ 4 - 1
h3d/pass/ColorMatrix.hx

@@ -9,6 +9,8 @@ class ColorMatrixShader extends h3d.shader.ScreenShader {
 
 		@const var useMask : Bool;
 		@const var maskInvert : Bool;
+		@const var hasSecondMatrix : Bool;
+		@param var matrix2 : Mat4;
 		@param var mask : Sampler2D;
 		@param var maskMatA : Vec3;
 		@param var maskMatB : Vec3;
@@ -20,7 +22,8 @@ class ColorMatrixShader extends h3d.shader.ScreenShader {
 				var color = texture.get(input.uv);
 				var uv = vec3(input.uv, 1);
 				var k = pow(mask.get( vec2(uv.dot(maskMatA), uv.dot(maskMatB)) ).dot(maskChannel), maskPower);
-				output.color = maskInvert ? mix(color, color * matrix, k) : mix(color * matrix, color, k);
+				var color2 = hasSecondMatrix ? color * matrix2 : color;
+				output.color = maskInvert ? mix(color2, color * matrix, k) : mix(color * matrix, color2, k);
 			} else
 				output.color = texture.get(input.uv) * matrix;
 		}