gpt4 book ai didi

c++ - 添加文本停止渲染自定义 GL 项目

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:16:20 24 4
gpt4 key购买 nike

我正在渲染一个自定义的 OpenGL 项目,并且我想在其之上添加一些小部件。

到目前为止,一切正常。这是它的样子。

enter image description here

但是,现在我正尝试通过以下方式将 Text 项添加到 OpenGL:

Rectangle{
id: logoTextBox
x: logoButton.x + logoButton.width
y: logoButton.y
width: 200
height: logoButton.height
color: "#EEEEEE"

Text{
id: logoVersionBlurb
y: 10
x: 10
font.pointSize: 8
text: "Ver 1.0"
color: "black"
}

Text{
id: logoNameBlurb
y: 20
x: 10
font.pointSize: 14
font.bold: true
text: "Please work"
}
}

它看起来像这样: enter image description here

我仍然希望 OpenGL 呈现,但我希望 Text 显示在其上方。有什么想法吗?

我在 QML 中创建我的 GLContext:

MyGLWidget{
id: glWidget
}

这是C++文件中的相关方法

void MyGLWidget::sync()
{
if (!m_renderer) {
m_renderer = new MyGLRenderer();
connect(window(), SIGNAL(beforeRendering()), m_renderer, SLOT(paint()), Qt::DirectConnection);
}
m_renderer->setViewportSize(window()->size() * window()->devicePixelRatio());
}

最佳答案

好的,我找到了解决方案。我将文本的 renderType 设置为 NativeRendering,这导致三角形正确呈现。

    Text{
id:sizeDialogXText
color: "white"
y: sizeDialogTitleText.y + 20
x: sizeDialogTitleText.x
text: "X"
font.pointSize: 12
renderType: Text.NativeRendering //This is the important line
}

关于c++ - 添加文本停止渲染自定义 GL 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33180878/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com