Когда я компилирую свой проект Qt3D, все в порядке, но после его запуска ничего не происходит (новое окно не открывается).В консоли Qt говорится, что программа была успешно запущена, и я даже могу найти процесс с моим приложением в диспетчере задач Windows, но примерно через 30 секунд Qt сообщает, что приложение внезапно закрылось (за это время не было открыто никаких новых окон).Мой код main.cpp:
#include <QGuiApplication>
#include <Qt3DCore>
#include <Qt3DExtras>
#include <Qt3DRender>
Qt3DCore::QEntity *createScene();
int main(int argc, char *argv[])
{
QGuiApplication app(argc, argv);
Qt3DExtras::Qt3DWindow window;
Qt3DCore::QEntity *rootEntity = createScene();
Qt3DRender::QCamera *camera = window.camera();
camera->lens()->setPerspectiveProjection(60.0f, float(window.width()) / window.height(), 0.1f, 1000.0f);
camera->setPosition(QVector3D(0.0f, 0.0f, 40.0f));
camera->setViewCenter(QVector3D(0.0f, 0.0f, 0.0f));
window.setRootEntity(rootEntity);
window.show();
return app.exec();
}
Qt3DCore::QEntity *createScene()
{
Qt3DCore::QEntity *resultEntity = new Qt3DCore::QEntity;
Qt3DExtras::QTorusMesh *torusMesh = new Qt3DExtras::QTorusMesh(resultEntity);
torusMesh->setRadius(15.0f);
torusMesh->setMinorRadius(6.0f);
torusMesh->setSlices(16);
torusMesh->setRings(32);
Qt3DExtras::QPhongMaterial *torusMaterial = new Qt3DExtras::QPhongMaterial(resultEntity);
Qt3DCore::QTransform *torusTransform = new Qt3DCore::QTransform(resultEntity);
resultEntity->addComponent(torusMesh);
resultEntity->addComponent(torusMaterial);
resultEntity->addComponent(torusTransform);
return resultEntity;
}