src/opengl/util/linear_brush.glsl
changeset 0 1918ee327afb
equal deleted inserted replaced
-1:000000000000 0:1918ee327afb
       
     1 uniform sampler1D palette;
       
     2 uniform vec3 linear;
       
     3 uniform vec3 inv_matrix_m0;
       
     4 uniform vec3 inv_matrix_m1;
       
     5 uniform vec3 inv_matrix_m2;
       
     6 
       
     7 vec4 brush()
       
     8 {
       
     9     mat3 mat;
       
    10 
       
    11     mat[0] = inv_matrix_m0;
       
    12     mat[1] = inv_matrix_m1;
       
    13     mat[2] = inv_matrix_m2;
       
    14 
       
    15     vec3 hcoords = mat * vec3(gl_FragCoord.xy, 1);
       
    16     vec2 A = hcoords.xy / hcoords.z;
       
    17 
       
    18     float val = dot(linear.xy, A) * linear.z;
       
    19 
       
    20     return texture1D(palette, val);
       
    21 }
       
    22