【发布时间】:2020-08-14 19:43:32
【问题描述】:
用于从 Qt3D 中的 .obj 文件加载线框网格的示例代码(随 Qt 创建器工具提供)绘制了这只大象(我在一个兜售数字资产的网站上发现)。 问题是我想使用自己的代码打开 .obj 文件并形成几何图形。我有代码可以打开 .obj 文件并形成三角形。我只想知道如何编写 C++ 部分来填充几何图形。
就像我想知道如何构造 C++ 代码。
Here 是我必须读取 obj 文件的代码。
【问题讨论】:
用于从 Qt3D 中的 .obj 文件加载线框网格的示例代码(随 Qt 创建器工具提供)绘制了这只大象(我在一个兜售数字资产的网站上发现)。 问题是我想使用自己的代码打开 .obj 文件并形成几何图形。我有代码可以打开 .obj 文件并形成三角形。我只想知道如何编写 C++ 部分来填充几何图形。
就像我想知道如何构造 C++ 代码。
Here 是我必须读取 obj 文件的代码。
【问题讨论】:
对于那些想知道同样事情的人来说,我发现了一个 github 存储库,它通过读取 OBJ 模型并在 Qt3D 上下文中渲染它来在 C++ 中创建几何图形。
如果你仔细想想,这是一个简单的过程。
首先你需要创建一个基于 Qt3DRender::QGeometry 的对象。
class ModelGeometry : public Qt3DRender::QGeometry
{
public:
ModelGeometry(){
}
然后你需要使用它添加点、三角形和法线等属性
auto attribute = new Qt3DRender::QAttribute(parent);
然后将属性添加到几何体中。
整个过程在此处的 repo 中进行了说明:https://github.com/bmkamath2000/Qt3DExamples
使用包含大象的示例 OBJ 文件运行此 repo 后,我已按预期绘制:
非常感谢!!!
【讨论】: