Qt3D给圆环等立体图形添加纹理图片

添加纹理图片,首先需要自己找一个纹理图,当然了,随便什么图片都行。

创建3D图形的主要步骤查看另一篇文章。

这里主要代码如下:

使用QTextureLoader加载图片,图片路径需为qrc:/的路径。

auto *planeTransform1 = new Qt3DCore::QTransform();
    planeTransform1->setTranslation(QVector3D(0, 0, 0));

    Qt3DExtras::QTorusMesh *torusMesh = new Qt3DExtras::QTorusMesh;
    torusMesh->setRadius(5);
    torusMesh->setMinorRadius(1);
    torusMesh->setRings(100);
    torusMesh->setSlices(20);
    // 创建球体实体并添加到根实体
    Qt3DCore::QEntity *sphereEntity = new Qt3DCore::QEntity(rootEntity);

    Qt3DRender::QTextureImage* textureImage = new Qt3DRender::QTextureImage();
    textureImage->setSource(QUrl(":/texture/t.jpg"));
    Qt3DExtras::QTextureMaterial* tmaterial = new Qt3DExtras::QTextureMaterial(rootEntity);

    // 创建纹理
    Qt3DRender::QTextureLoader *textureLoader = new Qt3DRender::QTextureLoader();
    textureLoader->setSource(QUrl("qrc:/texture/t.jpg"));

    tmaterial->setTexture(textureLoader);
    sphereEntity->addComponent(torusMesh);//torusMesh
    sphereEntity->addComponent(tmaterial);
    sphereEntity->addComponent(planeTransform1);

Qt3D给圆环等立体图形添加纹理图片_第1张图片

你可能感兴趣的:(3D开发大全,3d,qtquick,Qt3D,Qt,3D建模,Qt,OpenGL)