基于Qt的OpenGL可编程管线学习(5)- FBO的使用

发布时间:2020-06-30 19:53:40 作者:Douzhq
来源:网络 阅读:1999

FBO: Frame Buffer Object,默认绘制在1号FBO中,自定义的FBO是可以做读写操作的。

绘制到自定义的FBO,然后显示出来,如下图所示:基于Qt的OpenGL可编程管线学习(5)- FBO的使用

Qt中有关于FBO的类,QOpenGLFrameBufferObject


FBO的创建

m_FrameBufferObj = new QOpenGLFramebufferObject(w, h, QOpenGLFramebufferObject::Depth);


FBO的使用

bool result = m_FrameBufferObj->bind();
if (result){
    OpenGLCore->glClearColor(1.0, 0.0, 1.0, 1.0);
    OpenGLCore->glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
    draw();
    m_ColorBuffer = m_FrameBufferObj->texture();
    m_FrameBufferObj->release();
}

调用bind()后就可以在FBO上绘制,texture()可以取出FBO的纹理

推荐阅读:
  1. 基于Qt的OpenGL可编程管线学习(17)- 差值、反差值、排除
  2. 基于Qt的OpenGL可编程管线学习(19)- 雾

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

qt opengl shader

上一篇:架构DHCP+DNS+WEB综合服务

下一篇:关于虚拟机与克隆虚拟机之间无法相互ping通的问题解决方案

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》