Russian Qt Forum

Qt => 2D и 3D графика => Тема начата: fanat9 от Ноябрь 17, 2005, 01:08



Название: help: Прозрачность в QGLWidget. Solved.
Отправлено: fanat9 от Ноябрь 17, 2005, 01:08
Кто-нибудь использовал прозрачность в OpenGL ? Что не так:

Берем "HelloGL example" из QT4.0.1
В main.cpp изменяем настройки QGLFormat:

Код:

#include <QApplication>
#include <QGLFormat>
#include "window.h"

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QGLFormat f;
    f.setAlpha(true);
    QGLFormat::setDefaultFormat(f);
    Window window;
    window.show();
    return app.exec();
}

В glwidget.cpp задаем цвет и выставляем alpha:
Код:

trolltechGreen = QColor(0,255,0);
trolltechGreen.setAlpha(10);

Компилируем. Прозрачностью и не пахнет. Что не так ?


Название: help: Прозрачность в QGLWidget. Solved.
Отправлено: fanat9 от Ноябрь 17, 2005, 02:05
Нужно было инициализировать blending например так:
Код:

glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);

<MODERATOR>
Пожалуста пользуйтесь тегом code
</MODERATOR>