public static Filter Renderer(GLProgram program) { var filter = new TextureFilter (program); return React.By<Tuple<Texture, Texture>> (t => filter._program.DrawElements (PrimitiveType.Triangles, filter._vertexBuffer, filter._indexBuffer)) .BindSamplers (t => new Dictionary<Sampler, Texture> () { { (!filter._uniforms.textureMap), t.Item1 } }) .Viewport (t => t.Item2.Size) .Culling () .Program (program) .Texture (t => t.Item1) .FramebufferTexture (t => Tuple.Create (filter._framebuffer, FramebufferAttachment.ColorAttachment0, t.Item2)); }
public static Filter Renderer(GLProgram program) { var filter = new TextureFilter(program); return(React.By <Tuple <Texture, Texture> > (t => filter._program.DrawElements(PrimitiveType.Triangles, filter._vertexBuffer, filter._indexBuffer)) .BindSamplers(t => new Dictionary <Sampler, Texture> () { { (!filter._uniforms.textureMap), t.Item1 } }) .Viewport(t => t.Item2.Size) .Culling() .Program(program) .Texture(t => t.Item1) .FramebufferTexture(t => Tuple.Create(filter._framebuffer, FramebufferAttachment.ColorAttachment0, t.Item2))); }
public static Filter Vertical() { return(TextureFilter.Renderer(new GLProgram(VerticalVertexShader(), FragmentShader()))); }