qt - 将 qml 项添加到 Qt3DQuickWindow

标签 qt 3d qml qt3d

如您所知,Qt3DQuickWindow 是一个自定义窗口,生成以在 3d 场景上显示 3d 实体,并且是 3dScene 的最佳替代方案,可以独立于他的植入加载所有 Material 。 (3dscene在alpha等自定义 Material 方面做不到的能力)

此时我想在 Qt3DQuickWindow 上显示一个 3d 场景,并在 3d 场景和 3d 环境之上显示我的 qml 项目,但是 Qt3DQuickWindow 中没有 QQmlEngine 用于将我的 qml 项目添加到它们。

有什么方法可以覆盖在 qml 3d 场景上。

谢谢。

enter image description here

最佳答案

使用允许您将 3D 内容嵌入到 QQmlEngine 窗口中的 View3D QML 类型

主.qml

 import QtQuick 2.14
  import QtQuick.Window 2.12
  import QtQuick3D 1.14

  Window {
      width: 1280
      height: 720
      visible: true



      View3D {
        /* put your 3d scene here */
       }

       /* overlay  item */
      Rectangle {
          width: 500
          height: 200
          anchors.margins: -10
          color: "#e0e0e0"
          border.color: "#000000"
          border.width: 1
          opacity: 0.8
      }


  }

关于qt - 将 qml 项添加到 Qt3DQuickWindow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59589839/

相关文章:

qt - 如何使用QML/QtLocation模块在 map 上显示大量离线数据?

c++ - 在 Qt 中运行函数时如何断开所有信号?

c++ - 在 Windows 上制作期间未定义 Qt vulkan 类

java - Libgdx:骨架存储动画和移动网格部件

algorithm - 3D表面重建算法

qt - 保存 QML 图像

c++ - 在 Ubuntu 的 Qt 窗口中突出显示的选项卡

linux - Qt 中的 .ttf 字体优先级

opengl - HDR渲染管线差异

c++ - Qt QQuickFramebufferObject OpenGL渲染侵入其他物体场景为红色