private GLTexture SetScreenTextureBuffer(GLContext control) { var screenBuffer = ScreenBufferTexture.GetColorBuffer(control); if (screenBuffer == null) { return(null); } return(screenBuffer); }
private void SetScreenTextureBuffer(ShaderProgram shader, GLContext control) { int id = 50; var screenBuffer = ScreenBufferTexture.GetColorBuffer(control); GL.ActiveTexture(TextureUnit.Texture0 + id); GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureWrapR, (int)TextureWrapMode.ClampToEdge); GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureWrapT, (int)TextureWrapMode.ClampToEdge); GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureWrapS, (int)TextureWrapMode.ClampToEdge); GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureBaseLevel, 0); GL.TexParameter(TextureTarget.Texture2D, TextureParameterName.TextureMaxLevel, 0); screenBuffer.Bind(); shader.SetInt($"{ConvertSamplerID(12)}", id); }