LINUX.ORG.RU

История изменений

Исправление bad_master, (текущая версия) :

Короче как я понял надо переписать на qt загрузку изображений из LoadWelcome() через qimage и ShowWelcome() тоже придется переписать на qtшный bind() такого вида


    QOpenGLTexture* texture;
    QImage image1;
void MyWidget::initializeGL()
{
	//QOpenGLContext* ctx = new QOpenGLContext();
    QOpenGLFunctions* f = QOpenGLContext::currentContext()->functions();
    f->glClearColor(0,0,0,0); // заполняем экран белым цветом
    glEnable(GL_DEPTH_TEST); // задаем глубину проверки пикселей
    glShadeModel(GL_FLAT); // убираем режим сглаживания цветов
    glEnable(GL_CULL_FACE); // говорим, что будем строить только внешние поверхности
    glPolygonMode(GL_FRONT_AND_BACK, GL_FILL); // фигуры будут закрашены с обеих сторон
	gluLookAt(0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f);
	image1.load("welcome.png"); // загружаем изображение в переменную image1
	// конвертируем изображение в формат для работы с OpenGL:
	texture = new QOpenGLTexture(image1.mirrored());
	texture->setMinificationFilter(QOpenGLTexture::LinearMipMapLinear);
	texture->setMagnificationFilter(QOpenGLTexture::Linear);
}
void MyWidget::Show()
{
	texture->bind();
	//glColor4f(1,0,0,0); // задаем цвет
	glBegin(GL_QUADS); // говорим, что рисовать будем прямоугольник
	// задаем вершины многоугольника
	glTexCoord2f(1, 1);
	glVertex2f(0.5, 0.5);
	glTexCoord2f(0, 1);
	glVertex2f(-0.5, 0.5);
	glTexCoord2f(0, 0);
	glVertex2f(-0.5, -0.5);
	glTexCoord2f(1, 0);
	glVertex2f(0.5, -0.5);
	glEnd();
}

Исходная версия bad_master, :

Короче как я понял надо переписать на qt загрузку изображений из LoadWelcome() через qimage и ShowWelcome() тоже придется переписать на qtшный bind()