purplevillage 发表于 2022-12-16 09:22:24

QT3d中有个玻璃模型,用c++开发,关于透明度设置的请教

本帖最后由 purplevillage 于 2022-12-16 09:24 编辑

在qt3d的开发中,有个玻璃模型,需要设置其透明度。
透过玻璃可见其后面的物体。

代码用c++开发。

代码如下,运行后未见透明效果,请教下原因及正确的设置代码。



    auto glassObject = new Qt3DRender::QSceneLoader(m_rootEntity);
    glassObject->setSource(QUrl("qrc:/model/resources/3d-model/glass.gltf"));

    Qt3DExtras::QPhongAlphaMaterial *glassMaterial = new Qt3DExtras::QPhongAlphaMaterial();
    glassMaterial->setAmbient(qRgba( 1, 1, 0, 0.0 ));
    glassMaterial->setDiffuse(qRgba( 1, 1, 0, 0.0 ));
    glassMaterial->setShininess(50.0f);
    glassMaterial->setAlpha(0.1f);

    auto glassEntity = new Qt3DCore::QEntity(m_rootEntity);
    glassEntity->addComponent(glassObject);
    glassEntity->addComponent(commonTransform);
    glassEntity->addComponent(glassMaterial);


页: [1]
查看完整版本: QT3d中有个玻璃模型,用c++开发,关于透明度设置的请教