Russian Qt Forum

Qt => 2D и 3D графика => Тема начата: spirits25 от Октябрь 22, 2012, 16:27



Название: QGLSphere и наложение текстуры
Отправлено: spirits25 от Октябрь 22, 2012, 16:27
Доброе время суток.

В примере solarsystem из qt3d имеется вот такой код создания сферы с текстурой:
Код:
    QGLBuilder builder;
    QGLSceneNode *root = builder.sceneNode();
    QUrl url;

    //planetary surface
    QGLMaterial *mat2 = new QGLMaterial;
    url.setPath(QLatin1String(":/planet.jpg"));
    url.setScheme(QLatin1String("file"));
    mat2->setTextureUrl(url);
    m_LoadedTextures.push_back(mat2->texture());
    int planetMat = root->palette()->addMaterial(mat2);

    // create the planet
    builder.newNode()->setObjectName(QLatin1String("Planet"));
    builder<<QGLSphere(0.4);
    builder.currentNode()->setMaterialIndex(planetMat);
    builder.currentNode()->setEffect(QGL::LitModulateTexture2D);

    return builder.finalizedSceneNode();
Тут всё просто и удобно, всё работает.
Как добавить произвольную квадратную текстуру на эту сферу? не вычисляя координаты (взяв любые произвольные), просто добавить любую картинку на эту сферу (не на всю, а на часть)?