I=(S=PostProcRenderer.AddDrawExposePoint = function(){
}).prototype;

I.Draw = function(tex, dst, amount)
{
    {
        gl.useProgram(this.AddDraw_quad_prog);
        gl.colorMask(true, true, true, true);
        gl.depthMask(false);
        gl.blendFuncSeparate(Uno.Graphics.OpenGL.Interop.BlendToGLenum(1), Uno.Graphics.OpenGL.Interop.BlendToGLenum(1), Uno.Graphics.OpenGL.Interop.BlendToGLenum(1), Uno.Graphics.OpenGL.Interop.BlendToGLenum(1));
        gl.enable(3042);
        gl.disable(2884);
        gl.disable(2929);
        gl.frontFace(Uno.Graphics.OpenGL.Interop.PolygonWindingToGLenum(1));
        gl.uniform1f(this.AddDraw_quad_amount_5_2_0_GoAgqJgrZm, amount);
        gl.activeTexture(33984);
        gl.bindTexture(3553, tex.GLHandle());
        gl.uniform1i(this.AddDraw_quad_tex_5_0_0_ogsGHmDZVA, 0);
        gl.enableVertexAttribArray(this.AddDraw_quad_VertexPosition_tCeCdDJuGx);
        gl.bindBuffer(34962, this.AddDraw_quad_VertexPosition_tCeCdDJuGx_vbo.GLHandle());
        gl.vertexAttribPointer(this.AddDraw_quad_VertexPosition_tCeCdDJuGx, 2, 5126, false, 0, 0);

        if (dst != null)
        {
            dst.GLBind();
        }

        gl.bindBuffer(34963, this.AddDraw_quad_ibo.GLHandle());
        gl.drawElements(Uno.Graphics.OpenGL.Interop.PrimitiveTypeToGLenum(0), this.AddDraw_quad_Length_fSqvgQzZZF, 5123, 0);

        if (dst != null)
        {
            dst.GLUnbind();
        }

        gl.disableVertexAttribArray(this.AddDraw_quad_VertexPosition_tCeCdDJuGx);
        Uno.Application.IncrementDrawCallCounter(this.AddDraw_quad_Length_fSqvgQzZZF);
    }
};

S.$0 = function(parent, $this) {
    if (!$this) $this = new PostProcRenderer.AddDrawExposePoint;
    {
        $this.parent = parent;
    }

    {
        $this.AddDraw_quad_ibo = Uno.Graphics.IndexBuffer.$0($this.parent.indices.length * 2, false);
        $this.AddDraw_quad_ibo.SetData(new Uint16Array($this.parent.indices));
        $this.AddDraw_quad_VertexPosition_tCeCdDJuGx_vbo = Uno.Graphics.VertexBuffer.$0($this.parent.vertices.length * 8, false);
        $this.AddDraw_quad_VertexPosition_tCeCdDJuGx_vbo.SetData(uglFloat2Array($this.parent.vertices, ($this.parent.vertices.length * 8)/8));
        $this.AddDraw_quad_Length_fSqvgQzZZF = $this.parent.indices.length;
    }

    $this.AddDraw_quad_vs = uglCompileShader(35633, "PostProcRenderer_AddDrawExposePoint_AddDraw_quad_vs", "varying vec2 TexCoord_2_23_0_eeJJveLGri;\n\nattribute vec2 VertexPosition_tCeCdDJuGx;\n\nvoid main(void)\n{\n\tvec4 VertexPosition_2_21_0 = vec4(VertexPosition_tCeCdDJuGx, 0.0, 1.0);\n\tvec4 ClipPosition_2_22_0 = VertexPosition_2_21_0;\n\tgl_Position = VertexPosition_2_21_0;\n\tvec2 TexCoord_2_23_0 = (VertexPosition_2_21_0.xy * 0.5) + 0.5;\n\tTexCoord_2_23_0_eeJJveLGri = (VertexPosition_2_21_0.xy * 0.5) + 0.5;\n}\n");
    $this.AddDraw_quad_ps = uglCompileShader(35632, "PostProcRenderer_AddDrawExposePoint_AddDraw_quad_ps", "uniform float amount_5_2_0_GoAgqJgrZm;\n\nuniform sampler2D tex_5_0_0_ogsGHmDZVA;\n\nvarying vec2 TexCoord_2_23_0_eeJJveLGri;\n\nvoid main(void)\n{\n\tvec4 PixelColor_6_2_0 = texture2D(tex_5_0_0_ogsGHmDZVA, TexCoord_2_23_0_eeJJveLGri) * amount_5_2_0_GoAgqJgrZm;\n\tgl_FragColor = texture2D(tex_5_0_0_ogsGHmDZVA, TexCoord_2_23_0_eeJJveLGri) * amount_5_2_0_GoAgqJgrZm;\n}\n");
    $this.AddDraw_quad_prog = uglLinkProgram($this.AddDraw_quad_vs, $this.AddDraw_quad_ps);
    $this.AddDraw_quad_VertexPosition_tCeCdDJuGx = gl.getAttribLocation($this.AddDraw_quad_prog, "VertexPosition_tCeCdDJuGx");
    $this.AddDraw_quad_amount_5_2_0_GoAgqJgrZm = gl.getUniformLocation($this.AddDraw_quad_prog, "amount_5_2_0_GoAgqJgrZm");
    $this.AddDraw_quad_tex_5_0_0_ogsGHmDZVA = gl.getUniformLocation($this.AddDraw_quad_prog, "tex_5_0_0_ogsGHmDZVA");
    return $this;
};
