1

Qt3D 可以很容易地显示一些网格图元:

m_torus = new Qt3DExtras::QTorusMesh();

但我只想显示一组点。我没见过类似的

m_points = new Qt3DExtras::QPoints();

有没有办法在不编写较低级别的 OpenGL 的情况下做到这一点?

4

2 回答 2

4

不知道这是否是您要查找的内容,但请查看Qt3DRender::QGeometryRenderer。我在一个项目中使用它来显示 3D 场景中的地图线。有一种方法可以定义如何渲染顶点缓冲区数据(我使用Qt3DRender::QGeometryRenderer::LineStrip而不是Qt3DRender::QGeometryRenderer::Points):

Qt3DRender::QGeometryRenderer::setPrimitiveType(Qt3DRender::QGeometryRenderer::Points);
于 2017-05-17T07:32:48.017 回答
3

AFAIK,Qt3D 2.0 中没有像线或点这样的简单原语,因为没有一种万能的解决方案。如果你幸运的话,有人会站出来添加一些额外的东西,否则你必须自己写你的解决方案。

Qt Interest 邮件列表 2016 年 11 月 - Qt3D 中的行

然而,在 github 上pcl有一个点云渲染器项目!

于 2017-03-10T11:53:50.700 回答