当前位置: 首页 > wzjs >正文

深圳广告标识厂家seo sem是什么

深圳广告标识厂家,seo sem是什么,佛山做企业网站,贵州建设监督管理局网站1、概述 QOffscreenSurface 是 Qt 中用于离屏渲染的一个类。它允许在不直接与屏幕交互的情况下进行 OpenGL 渲染操作,常用于生成纹理、预渲染场景等。通过 QOffscreenSurface,可以在后台创建一个渲染表面,进行绘制操作,并将结果捕…

1、概述

QOffscreenSurface 是 Qt 中用于离屏渲染的一个类。它允许在不直接与屏幕交互的情况下进行 OpenGL 渲染操作,常用于生成纹理、预渲染场景等。通过 QOffscreenSurface,可以在后台创建一个渲染表面,进行绘制操作,并将结果捕获为 QImage 或其他格式。

2. 重要方法

  • 构造函数

    QOffscreenSurface::QOffscreenSurface(QScreen *targetScreen = nullptr);
    QOffscreenSurface::QOffscreenSurface(QScreen *targetScreen, QObject *parent);
    • 创建一个离屏表面对象,可指定目标屏幕和父对象。

  • 析构函数

    virtual QOffscreenSurface::~QOffscreenSurface();
    • 销毁离屏表面对象,释放相关资源。

  • 创建和销毁

    void QOffscreenSurface::create();
    void QOffscreenSurface::destroy();
    • create():创建离屏表面。

    • destroy():销毁离屏表面,释放相关资源。

  • 有效性检查

    bool QOffscreenSurface::isValid() const;
    • 检查离屏表面是否有效。

  • 原生句柄操作

    void *QOffscreenSurface::nativeHandle() const;
    void QOffscreenSurface::setNativeHandle(void *handle);
    • 获取和设置离屏表面的原生句柄。

  • 格式操作

    QSurfaceFormat QOffscreenSurface::requestedFormat() const;
    void QOffscreenSurface::setFormat(const QSurfaceFormat &format);
    virtual QSurfaceFormat QOffscreenSurface::format() const override;
    • 获取和设置离屏表面的请求格式。

    • format():获取当前表面的实际格式。

  • 屏幕操作

    QScreen *QOffscreenSurface::screen() const;
    void QOffscreenSurface::setScreen(QScreen *newScreen);
    • 获取和设置离屏表面的目标屏幕。

  • 尺寸获取

    virtual QSize QOffscreenSurface::size() const override;
    • 获取离屏表面的尺寸。

  • 表面类型获取

    virtual QSurface::SurfaceType QOffscreenSurface::surfaceType() const override;
    • 获取离屏表面的表面类型。

3. 信号

  • 屏幕更改信号

    void screenChanged(QScreen *screen);
    • 当离屏表面的目标屏幕发生变化时发出此信号,screen 参数表示新的目标屏幕。

4. 常用枚举

QOffscreenSurface 本身没有定义枚举,但它使用了 QSurfaceFormat 类中的枚举,例如:

  • QSurfaceFormat::FormatOptions

    • AlphaBuffer:启用 alpha 缓冲区。

    • DepthBuffer:启用深度缓冲区。

    • StencilBuffer:启用模板缓冲区。

    • Samples:多重采样抗锯齿的样本数。

#include "renderthread.h"#include <QDebug>
#include <QOpenGLContext>
#include <memory>RenderThread::RenderThread(QOpenGLContext *mainContext, QObject *parent): QThread(parent), m_mainContext(mainContext)
{m_surface = new QOffscreenSurface();m_surface->setFormat(mainContext->format());m_surface->create();m_renderContext = new QOpenGLContext;m_renderContext->setFormat(m_mainContext->format());m_renderContext->setShareContext(m_mainContext);m_renderContext->create();m_renderContext->moveToThread(this);
}RenderThread::~RenderThread()
{wait();
}void RenderThread::setNewSize(int width, int height)
{QMutexLocker lock(&m_mutex);m_width = width;m_height = height;
}void RenderThread::runTask()
{//qDebug() << "run:" << QThread::currentThreadId();m_renderContext->makeCurrent(m_surface);if(renderer == nullptr){renderer = new Renderer();renderer->moveToThread(this);}int width = 0;int height = 0;{QMutexLocker lock(&m_mutex);width = m_width;height = m_height;}renderer->render(width, height);FpsCounter::instance()->frame(FpsCounter::Render);m_renderContext->doneCurrent();emit imageReady(renderer->front_fbo.texture);
}

demo:点击跳转

觉得有帮助的话,打赏一下呗。。

           

需要商务合作(定制程序)的欢迎私信!! 

http://www.dtcms.com/wzjs/210935.html

相关文章:

  • 济南汇展做网站网站网络推广推广
  • 专业外贸网站制作价格百度搜索风云榜电视剧
  • 上海品划做网站谷歌seo引擎优化
  • 淄博建网站哪家好下载百度到桌面上
  • 做游戏奖金不被发现网站广州竞价外包
  • 贵阳网站建设包首页网络营销讲师
  • wordpress 邮件推送如何优化标题关键词
  • 徐家汇网站建青岛seo精灵
  • wordpress菜单注册seo排名软件免费
  • php可以做移动端网站如何进行网站宣传推广
  • wordpress如何开启多站点品牌如何推广
  • 商城网站建设如何适合小学生摘抄的新闻2022年
  • 邢台做移动网站公司电话号码谷歌优化怎么做
  • 广州做网站的微信营销案例
  • 网站建设摊销会计分录seo博客网站
  • 外贸英语学习网站企业文化培训
  • 外链吧seo运营是什么意思
  • 网站建设都需要什么技术人员小吃培训2000元学6项
  • 兰州网站建设与优化百度网盟推广怎么做
  • 网站导航设计欣赏优化网站seo公司
  • 东莞企业网站咨询seo主要是指优化
  • 莱芜建设网站高端网站建设哪个好
  • 重庆直播网站平台建设广州竞价托管公司
  • 学习如何做网站网站搜索排优化怎么做
  • 昆明企业网站制作创建个人网站的流程
  • 网站后台清除缓存在哪现在做网络推广好做吗
  • 网站推广优化平台b站引流推广
  • 淮南市招标投标信息网安阳seo
  • 自助下单网站怎么做建网站专业
  • 建立主题网站的顺序是重庆百度整站优化