问题标签 [qt3d]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
93 浏览

c++ - 乘以定义的符号找到Qt3D

尝试在 Win7 下使用 Visual Studio 2010 和 Qt5.2/Qt3D编译此项目时,出现以下错误:

提到的文件是mdstate.h / mdstate.cppdatabundle.h / databundle.cppqarray.h / qarray.cpp

谷歌搜索后,这个错误可能源于很多可能性,但我无法理解这种情况。

通常这是由于包含 .cpp 而不是标头、意外包含文件多次、缺少包含保护和类似的东西而导致的,这里不是这种情况。

那么,有人知道这里有什么问题吗?

0 投票
2 回答
6252 浏览

qt - Qt OpenGL 小部件中的 3D 模型 (.3ds)

我需要在我的 QGLWidget(Qt OpenGL 小部件)中加载一个 3D 模型(.3ds 文件)。我正在寻找在 Linux、Windows 和 Mac 下工作的跨平台解决方案。

我在网上找到了一些解决方案,但仍然无法将它们中的任何一个集成到我的 Qt 应用程序中:

有什么建议吗?

0 投票
3 回答
1199 浏览

c++ - 在 Windows 7 下编译 Qt3D

我正在尝试通过以下说明编译和安装 Qt3D:

http://qt-project.org/wiki/Qt3D-Installation

我正在使用 Windows MinGW方法,并且正在使用 Qt MinGW 终端。

我第一次执行该过程时,它抱怨缺少Perl。这似乎与教程相反。所以我安装了草莓 Perl。对于这些构建脚本在 Windows 上所期望的 Perl 风格,我找不到推荐。

当我说:

它执行得非常快。

当我说:

我收到此错误:

坦率地说,我不知道该怎么做这个错误。

我可能做错了什么?

上述错误是使用 Qt 5.1 产生的。

这是我通过与 Qt 5.3 完全相同的过程产生的类似错误。

类似的错误。我在这里做错了什么?

0 投票
2 回答
5976 浏览

c++ - 如何在标准 GUI 应用程序中以 Qt3D 呈现?

我喜欢使用 Qt3D,但我看到的所有示例都是全窗口应用程序。从示例中我无法理解的是如何将 qt3d 渲染窗口添加到常规 qt gui 应用程序。

基本上我想要的是我的 Qt5 Gui 应用程序的一个小渲染小部件。

我查看了 Qtgl 小部件,但我真的很想使用 Qt3D 的场景管理功能。

如何在 qt Gui 窗口内渲染为子窗口?

这可能吗?

更新

所以我将此添加到我的 MainWindow.cpp 它松散地基于此https://www.qt.io/blog/2013/02/19/introducing-qwidgetcreatewindowcontainer

这似乎是对的。

我的 load_model.cpp 是这样开始的:

它崩溃了:

此应用程序已请求运行时以不寻常的方式终止它。

在 qt 应用程序输出中:

传递给 C 运行时函数的参数无效。

编辑添加了相关课程的其余部分

我注意到在示例中我正在调整https://github.com/Distrotech/qt3d/blob/master/tutorials/qt3d/penguin/main.cpp窗口初始化时说:

然而,说

崩溃

0 投票
3 回答
1765 浏览

c++ - Qt QML 和 3d:这两个框架是一样的吗?

任何尝试过 Qt QML 和 3D OpenGL 的人,我都对我读过的 2 个框架感兴趣,但我不清楚它们是否实际上是同一个框架。Krzysztof Krzewniak 在 2013 年 Qt 开发者日视频演示中概述了两者中最有趣的部分:

http://www.youtube.com/watch?v=29wCpA0DBZI

虽然非常有趣,但不幸的是,我在网上其他任何地方都找不到这方面的源代码,甚至是所讨论的框架的名称。

有QtQuick3d:

http://doc.qt.digia.com/qt-quick3d-snapshot/

但是,我无法判断这实际上是在描述 Dev Days 中的相同框架,还是它们是独立的(并且显然有些相似)框架?与视频相比,我最初对 API 的看法表明它们是不同的,这对于 Qt 社区中的 2 个重要项目试图做同样的事情似乎是多余的。

任何对 QML 领域有一定了解的人都可以在这里提供一些指示吗?

0 投票
1 回答
121 浏览

qt - How to compile this qt program(There is no any pro file)?

I download the code(a game made with qt 3d) from Qt learning websites

After decompressing it, all i found are some qml file and photos. There is no any c++ file or the pro file. How can i open this as a project not a file in the qt creator and run it?

Thanks

0 投票
1 回答
218 浏览

animation - QML 顺序动画避免代码重复

我在 QML 中使用 Qt3D 有一个小动画。动画的重点是让球沿着贝塞尔曲线从点 p0 移动到点 p2,给定我以某种方式计算的点 p1(与问题无关),这样我就得到了二次贝塞尔曲线。由于没有 BezierAnimation 之类的东西,我所做的是我有一个 Vector3DAnimation 从 p0 到曲线的 0.1 处的点,然后从 0.1 到 02,依此类推,直到 0.9 到 1(即 p2)。

这给了我这个看起来很可怕的代码:

正如您所看到的,代码非常简单,因为我将大部分代码封装在函数中,但它过于重复并且可扩展性很差(如果我想要 0.01 的步长,我会手动编写 100 个动画)。

所以,我的问题是,有没有办法让它变得更好?

我尝试使用 ScriptAction,如下所示:

但是,奇怪的是,仅动画的第一部分(即使我检查并且当前更改正确),并且在 4 或 5 次迭代后突然停止工作。

有没有好看的方法来做到这一点?我真的希望能够修改步骤...

非常感谢

0 投票
0 回答
79 浏览

c++ - 对 QGLSceneNodes 进行排序以启用透明度

为了在我们的 Qt3D-OpenGL-Scene 中启用透明度,我们实现了一个 QGLRenderOrderComparator 来根据 z 值对我们的场景进行排序。但是 QGLRenderScequencer 不断地重新排序我们的节点(基于启用的着色器)。你有一个想法,如何防止重新排序?谢谢!

0 投票
1 回答
2171 浏览

qt - 如何使用 Qt3D 加载 3DS 文件

我使用 Qt3D 成功将 .OBJ 模型加载到 Qt 中,但无法加载 .3DS 模型。我只是按照这里的教程进行操作。

我的环境是:Windows7、Qt5.3.1、mingw32。

显示错误:Asset importer error: Chunk is too large

请给点建议。

0 投票
1 回答
734 浏览

qt - 在 QT 中显式调用paintGL

在 Qt 中,由于这篇文章中提到的事件,paintGL 方法会被自动调用: 什么时候调用 QGLWidget 的paintGL?. 如果我需要从类函数之一显式调用paintGL 方法,我需要做什么。void CubeView::update() { QMatrix4x4 世界;双 posx=drawcursor(); world.translate(posx,0,0); 立方体->setLocalTransform(世界);std::cout<<"嗨\n"; // QGLPainter 绘制;//paintGL(&paint);

这是对我之前的问题的跟进,因为我现在已经清楚了一些事情。

1.在qt中不能显式调用paintGL方法。2. QGLView 类没有updateGL 方法——QGLWidget 有。

基于这些,我的问题是:

  1. 我可以在 qt3d 中使用 QGL 小部件类吗?我可以在这里使用 QGL builder 等所有功能吗?
  2. qglview 中是否有任何方法可以替代 updategl 方法?在调用paintgl 类之前查看的某些方法?每次在paintgl之前检查的一些功能。