Форум программистов, компьютерный форум, киберфорум
OpenGL
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 15.12.2015
Сообщений: 18
1

Не отрисовывает дополнительные объекты

08.12.2016, 13:15. Показов 1077. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, пишу прогу которая отрисовывает дом, взависимости от выбраных параметров. Столкнулся с такой проблемой. Данный код отрисовывает текстуру двух окон.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
glBindTexture(GL_TEXTURE_2D, _textureWindow);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
    glBegin(GL_QUADS);  // Window Left
    glTexCoord3f(0.0, 1.0, 1.0001); glVertex3f(-1.5, -0.3, 1.0001);
    glTexCoord3f(1.0, 1.0, 1.0001); glVertex3f(-0.75, -0.3, 1.0001);
    glTexCoord3f(1.0, 0.0, 1.0001); glVertex3f(-0.75, -0.8, 1.0001);
    glTexCoord3f(0.0, 0.0, 1.0001); glVertex3f(-1.5, -0.8, 1.0001);
    glEnd();
 
    glBegin(GL_QUADS);  // Window Right
    glTexCoord3f(0.0, 1.0, 1.0001); glVertex3f(1.5, -0.3, 1.0001);
    glTexCoord3f(1.0, 1.0, 1.0001); glVertex3f(0.75, -0.3, 1.0001);
    glTexCoord3f(1.0, 0.0, 1.0001); glVertex3f(0.75, -0.8, 1.0001);
    glTexCoord3f(0.0, 0.0, 1.0001); glVertex3f(1.5, -0.8, 1.0001);
    glEnd();
    glPopMatrix();
Если я добавлю еще отрисовку третьего окна, но с расположением другим - его не нарисует.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
glBindTexture(GL_TEXTURE_2D, _textureWindow);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
    glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
    glBegin(GL_QUADS);  // Window Left
    glTexCoord3f(0.0, 1.0, 1.0001); glVertex3f(-1.5, -0.3, 1.0001);
    glTexCoord3f(1.0, 1.0, 1.0001); glVertex3f(-0.75, -0.3, 1.0001);
    glTexCoord3f(1.0, 0.0, 1.0001); glVertex3f(-0.75, -0.8, 1.0001);
    glTexCoord3f(0.0, 0.0, 1.0001); glVertex3f(-1.5, -0.8, 1.0001);
    glEnd();
 
    glBegin(GL_QUADS);  // Window Right
    glTexCoord3f(0.0, 1.0, 1.0001); glVertex3f(1.5, -0.3, 1.0001);
    glTexCoord3f(1.0, 1.0, 1.0001); glVertex3f(0.75, -0.3, 1.0001);
    glTexCoord3f(1.0, 0.0, 1.0001); glVertex3f(0.75, -0.8, 1.0001);
    glTexCoord3f(0.0, 0.0, 1.0001); glVertex3f(1.5, -0.8, 1.0001);
    glEnd();
    glPopMatrix();
 
        glBegin(GL_QUADS);  // (third window)
    glTexCoord3f(0.0, 1.0, 1.0001); glVertex3f(1.5 +1, -0.3, 1.0001);
    glTexCoord3f(1.0, 1.0, 1.0001); glVertex3f(0.75 +1, -0.3, 1.0001);
    glTexCoord3f(1.0, 0.0, 1.0001); glVertex3f(0.75 +1, -0.8, 1.0001);
    glTexCoord3f(0.0, 0.0, 1.0001); glVertex3f(1.5+1, -0.8, 1.0001);
    glEnd();
    glPopMatrix();
Но если я закоментирую отрисовку второго окна и оставлю отрисовку третьего окна, тогда все отлично - его нарисует
Объясните в чем проблема?Как ее решить, чтобы отрисовало 3 окна и больше?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.12.2016, 13:15
Ответы с готовыми решениями:

Передать в event дополнительные объекты
Всем привет. Делаю фильтры для DataGrid в WPF, столкнулся с проблемой, получается слишком много...

Не отрисовывает поверхность
Добрый день. Мне необходимо отрисовать циклическую поверхность, состоящую из полуокружнеостей....

Pyqt threads не отрисовывает chart
Здравствуйте. Пытаюсь сделать отрисовку множества Парето. Но выдает следующие сообщения, и...

Тестовое MVVM приложение не отрисовывает вью
Добрый день, пробую научиться MVVM, нашел на хабре статейку. Но там столько ошибок в коде... В...

1
Модератор
3388 / 2160 / 352
Регистрация: 13.01.2012
Сообщений: 8,378
08.12.2016, 13:39 2
Лучший ответ Сообщение было отмечено illision1 как решение

Решение

illision1, может нужно glPopMatrix вызывать после третьего, а не до него?
1
08.12.2016, 13:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.12.2016, 13:39
Помогаю со студенческими работами здесь

Написать программу которая отрисовывает 5 квадратов
Написать программу которая отрисовывает 5 квадратов показанных на прикрепленном рисунке

Graphics не отрисовывает изображение при загрузке контрола
контрол: class ChartContainer:System.Windows.Forms.PictureBox { public...

QGraphicsView слишком часто отрисовывает сцену = тормоза
Не могу сообразить, как сделать так, чтобы сцена (модель) рассчитывалась часто, а представление...

Где можно взять компонент который отрисовывает Текст с 'обрезанием'
Где можно взять компонент который отрисовывает Текст с 'обрезанием' Типа: '...ProjectsCode' для...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru