|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
16.02.2009, 19:44 | #1 |
Новичок
Джуниор
Регистрация: 16.02.2009
Сообщений: 2
|
OpenGL + GDI в Windows Vista
Появилась проблема при использовании GDI поверх OpenGL в Висте. Мной было замечено что если GDI графику рисовать до любых операций OpenGL то все что было нарисовано в GDI стираеться и прорисовываеться то что было нарисовано OpenGL. Как будто OpenGL рисуеться в отдельный буфер который при какждом вызове glFlush() выводиться на екран при этом стирая все что было до этого нарисовано в GDI. Одно из легких решений проблемы - рисовать GDI объекты после прорисовки всех елементов в OpenGL, но возникала та же проблема при делении екрана на четыре части. После прорисовки одного екрана, прорисовка OpenGL елементов следующего затирает GDI елементы предыдущего. Я попытался прорисовывать все на екран а потом скопировать содержимое екрана при помощи CDC::BitBlt и вывести этот буфер с использованием glDrawPixels но оказалось что GDI объекты прорисовываються после выхода из функции CView::OnDraw, тоисть захват екрана при помощи CDC::BitBlt в конце прорисовки функции OnDraw не включает в себя GDI объекты.
Как вариант рисовать GDI объекты в буфер а потор рисовать при помощи OpenGL не опробован, надеюсь на более легкий способ решение броблемы. Помогите с решением данной проблемы. |
16.02.2009, 20:57 | #2 |
Старожил
Регистрация: 22.05.2007
Сообщений: 9,085
|
может быть всё рисовать посредством OpenGL и не извращаться?
|
17.02.2009, 17:18 | #3 |
Форумчанин
Регистрация: 10.12.2007
Сообщений: 158
|
Эм... А Вы glViewport не пробовали использовать для того, чтоб ограничить область вывода? Или у Вас перекрываются 3д и GDI объекты?
Вообще я соглашусь с pu4koff - юзайте glut |
18.02.2009, 16:26 | #4 |
Новичок
Джуниор
Регистрация: 16.02.2009
Сообщений: 2
|
к сожалению до меня уже написана большая часть кода посредством GDI поверх OpenGL. Переписывать займет очень много времени.
обьекты рисуються все вместе. ГДI всегда поверх ОпенЖЛ Последний раз редактировалось MaTBeu; 18.02.2009 в 17:23. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Delphi под windows Vista | Pitbull | Софт | 8 | 21.06.2008 16:20 |
Вопросы по Windows Vista | Almaas | Windows | 3 | 05.05.2008 07:50 |
Помогите - Значки в Windows Vista | Алексей_C | Общие вопросы Delphi | 5 | 19.11.2007 01:27 |
Windows Vista | Yar | Свободное общение | 1 | 27.09.2007 21:48 |
Windows Vista ultimate | oLMeR | Свободное общение | 16 | 31.07.2007 07:44 |