Inheritance: IDisposable
コード例 #1
0
ファイル: FrameBuffer.cs プロジェクト: Pireax/neovim.cs
        public FrameBuffer(int width, int height)
        {
            Width = width;
            Height = height;

            Texture = new Texture2D(Width, Height);

            GL.GenFramebuffers(1, out Handle);
            GL.BindFramebuffer(FramebufferTarget.Framebuffer, Handle);
            GL.FramebufferTexture2D(FramebufferTarget.Framebuffer, FramebufferAttachment.ColorAttachment0, TextureTarget.Texture2D, Texture.Handle, 0);

            FramebufferErrorCode errorCode = GL.CheckFramebufferStatus(FramebufferTarget.Framebuffer);

            if (errorCode != FramebufferErrorCode.FramebufferComplete)
                throw new Exception($"Framebuffer construction failed with error: {errorCode}");

            GL.DrawBuffer((DrawBufferMode)FramebufferAttachment.ColorAttachment0);

            GL.BindFramebuffer(FramebufferTarget.Framebuffer, 0);
        }