示例#1
0
        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));
        }
示例#2
0
        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)));
        }
示例#3
0
 public static Filter Vertical()
 {
     return(TextureFilter.Renderer(new GLProgram(VerticalVertexShader(), FragmentShader())));
 }