protected override void OnRenderFrame(FrameEventArgs e) { GL.BindFramebuffer(FramebufferTarget.Framebuffer, FrameBufferHandle); GL.Viewport(0, 0, Width, Height); FrontTexture.Bind(); CopyShader.Use(); CopyShader.SetUniform("state", 0); CopyShader.SetUniform("scale", Scale); base.OnRenderFrame(e); }
protected override void OnUpdateFrame(FrameEventArgs e) { GL.BindFramebuffer(FramebufferTarget.Framebuffer, FrameBufferHandle); GL.FramebufferTexture2D( FramebufferTarget.Framebuffer, FramebufferAttachment.ColorAttachment0, TextureTarget.Texture2D, BackTexture.Handle, 0); GL.Viewport(0, 0, Width, Height); FrontTexture.Bind(); StateShader.Use(); StateShader.SetUniform("state", 0); StateShader.SetUniform("scale", Scale); SwapTextures(); base.OnUpdateFrame(e); }