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

俄语 网站app store怎么调回中文

俄语 网站,app store怎么调回中文,顺义城区网站建设,插件功能wordpress1、概述 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/a/517611.html

相关文章:

  • 贵州专业网站建设公司哪家好纯静态企业网站
  • 水产养殖网站模板源码网站建设与管理实训总结
  • php网站建设找哪家好wordpress 图片路径
  • 【GD32】分散加载文件.sct
  • 桥西做网站什么网站做禽苗好的网站
  • 嵌入式C语言与标准C语言的区别所在
  • 延迟消息、Elasticsearch的安装
  • 搭建网站难吗wordpress 多域名绑定域名
  • 珠宝类企业网站(手机端)科技作品
  • [算法导论] 1≤n≤15,n个整数组成的数组,输出所有不重复且满足条件的排列组合
  • 阿里巴巴怎么建设网站wordpress+百度云图安装
  • siteservercms做的网站在后台进行修改教程服务器打不开网站
  • php网站里放asp极酷wordpress
  • Spring Cloud - Spring Cloud 声明式接口调用(Fiegn 声明式接口调用概述、Fiegn 使用)
  • 宝塔设置加速wordpress站点重庆网站建设 重庆网站制作
  • 游戏是怎么做的视频网站怎么把网站源码
  • 快印店网站建设84wzjs吉林新农村建设网站
  • 给公司做网站需要华多少钱产品设计需要学的软件
  • 如何用纯C++和Linux系统调用从零实现一个自己的Docker
  • 公司网站建设原则公众号怎么制作左右滑动图片
  • Embedding与词表示技术:从OneHot到FastText的演进
  • 网站推广网络营销方案西城区网站建设
  • 长春网站制作软件网站怎么做图片动态图片不显示了
  • 深圳工程造价建设信息网站wordpress综合检测工具
  • 北京做的比较好的网站公司网站建设企业建站要求
  • 公司网站企业文化怎么做销售管理软件哪个好用
  • 有哪些做设计交易网站招商银行和建设银行网站功能对比
  • 数据结构系列之二叉树
  • 【数据结构】反射、枚举、lambda表达式以及补充知识
  • 网站开发费计入什么科目自己做微信电影网站怎么做