添加纹理图片,首先需要自己找一个纹理图,当然了,随便什么图片都行。
创建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);//torusMeshsphereEntity->addComponent(tmaterial);sphereEntity->addComponent(planeTransform1);