コード例 #1
0
ファイル: Yagol.cs プロジェクト: martinlyra/YAGOL
        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);
        }
コード例 #2
0
ファイル: Yagol.cs プロジェクト: martinlyra/YAGOL
        protected override void OnUnload(EventArgs e)
        {
            FrontTexture.Dispose();
            BackTexture.Dispose();

            StateShader.Dispose();
            CopyShader.Dispose();

            GL.DeleteFramebuffer(FrameBufferHandle);

            base.OnUnload(e);
        }
コード例 #3
0
ファイル: Yagol.cs プロジェクト: martinlyra/YAGOL
        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);
        }