Здравствуйте, Vlad_, Вы писали:
V_>Есть ли в GL какой нить аналог директа V_>
V_>surface->IsLost( ) == DDERR_SURFACELOST
V_>
V_>Проблема в следующем, программа перестает выводить текстуры на экран, после того, как скринсайвер или игра запускались в полноэкранном режиме.
Думаю что с этим вопросом лучше на GameDEV.ru А вообще похоже что проблема у тебя где то, как часто пользуешься glGetError() для диагностики (например на этапе загрузки текстуры)?
Здравствуйте, Vlad_, Вы писали:
V_>Есть ли в GL какой нить аналог директа V_>
V_>surface->IsLost( ) == DDERR_SURFACELOST
V_>
V_>Проблема в следующем, программа перестает выводить текстуры на экран, после того, как скринсайвер или игра запускались в полноэкранном режиме.
Вероятно Вы при переходе в полноэкарнный режим и обратно пересоздаёте окно, хотя это не обязательно, из-за чего теряете контекст или что-то типа того...
---=== С наилучшими пожеланиями, Phoenics ===--- _
Здравствуйте, Phoenics, Вы писали:
P>Здравствуйте, Vlad_, Вы писали:
V_>>Есть ли в GL какой нить аналог директа V_>>
V_>>surface->IsLost( ) == DDERR_SURFACELOST
V_>>
V_>>Проблема в следующем, программа перестает выводить текстуры на экран, после того, как скринсайвер или игра запускались в полноэкранном режиме.
P>Вероятно Вы при переходе в полноэкарнный режим и обратно пересоздаёте окно, хотя это не обязательно, из-за чего теряете контекст или что-то типа того...
Если бы сам переходил в полноэкранный, там вопросов бы не было.
Проблема немного в другом, программа в полноэкранный режим не переходит, нет такого функционала.
Программа висит в окне, но если любая другая програма (игра, скринсайвер) запускались в полноэкранном, то в моей программе вывод портится.
glIsTexture, glGetError ошибку не возвращают. Думал по контексту (wgl...Context) ошибку определить, но тоже не получилось.
Вот и ломаю голову, как в gl отлавливать такую ситуацию. На директе проблем не возникало.
Здравствуйте, Vlad_, Вы писали:
V_>Есть ли в GL какой нить аналог директа V_>
V_>surface->IsLost( ) == DDERR_SURFACELOST
V_>
V_>Проблема в следующем, программа перестает выводить текстуры на экран, после того, как скринсайвер или игра запускались в полноэкранном режиме.
Попробуй две вещи:
1. Смотреть что возвращает glIsTexture?
2. Или просто всё освобождай/загружай заново при каждой потере/получении фокуса.
Здравствуйте, Vlad_, Вы писали:
V_>Есть ли в GL какой нить аналог директа V_>
V_>surface->IsLost( ) == DDERR_SURFACELOST
V_>
V_>Проблема в следующем, программа перестает выводить текстуры на экран, после того, как скринсайвер или игра запускались в полноэкранном режиме.
Насколько я знаю OpenGL сама дублирует текстуры в оперативке и восстанавливает их при необходимости. Если этого не происходит, то это очень интересный вопрос Если функция glIsTexture возвращает true и драйвера работают нормально, то могу только посоветовать Direct3D
G>Насколько я знаю OpenGL сама дублирует текстуры в оперативке и восстанавливает их при необходимости. Если этого не происходит, то это очень G>интересный вопрос
На сколько знаю я драйвер может выгружать в оперативку наименее используемые текстуры.
G>Если функция glIsTexture возвращает true и драйвера работают нормально, то могу только посоветовать Direct3D
Я вот не пойму, обращаешься с вопросом по OpenGL и тут же тебе Direct3D все начинают советовать, скажите на Windows мир сошелся? Других операционных систем не существует?
А между прочим OpenGL это кроссплатформенная библиотека. И игры ID Software работают и под Windows и под MacOSX.
Я вот не пойму, обращаешься с вопросом по OpenGL и тут же тебе Direct3D все начинают советовать, скажите на Windows мир сошелся? Других операционных систем не существует?
А между прочим OpenGL это кроссплатформенная библиотека. И игры ID Software работают и под Windows и под MacOSX.
OpenGL это не кроссплатформенная библиотека, а кроссплатформенные header-ы. В реальных приложениях, где кроме вывода треугольников нужно сделать что то ещё, вся эта кроссплатформенность идёт лесом. В плане мультимедийных технологий весь мир таки на Windows сошёлся, причём уже давно и бесповоротно
И не надо тут про ID Software приводить, лучше зайдите в любой магазин торгующими играми, и посмотрите сколько там игр на OpenGL сделано, а сколько на DirectX
Здравствуйте, gmGreen, Вы писали:
G>OpenGL это не кроссплатформенная библиотека, а кроссплатформенные header-ы. В реальных приложениях, где кроме вывода треугольников нужно сделать что то ещё, вся эта кроссплатформенность идёт лесом. В плане мультимедийных технологий весь мир таки на Windows сошёлся, причём уже давно и бесповоротно
расскажи это макинтошам
G>И не надо тут про ID Software приводить, лучше зайдите в любой магазин торгующими играми, и посмотрите сколько там игр на OpenGL сделано, а сколько на DirectX
Что, под Мак есть аналог DirectX который поддерживается ведущими мировыми производителями железа?
крупные конторы обычно делают 2 вида рендера..
Верно. Никакой принципиальной разницы между DirectX и OpenGL нет, весь вопрос толко в юзабилити. ИМХО если вы хотите написать 3D для Windows, то нужно брать DirectX и не выёживаться
G>Что, под Мак есть аналог DirectX который поддерживается ведущими мировыми производителями железа?
мультимедиа и directX — это одно и то же?. о_О
G>
G>крупные конторы обычно делают 2 вида рендера..
G>Верно. Никакой принципиальной разницы между DirectX и OpenGL нет, весь вопрос толко в юзабилити. ИМХО если вы хотите написать 3D для Windows, то нужно брать DirectX и не выёживаться
брать нужно то, что хочется, удобней использовать, знакомо, легко для освоения, дешевле.. а просто брать ДХ — это религия.. +)
Я имел в виду мультимедийные програмные технологии с поддержкой самого нового железа. И здесь у DirectX конкурентов нет(в Windows разумеется)
брать нужно то, что хочется, удобней использовать, знакомо, легко для освоения, дешевле.. а просто брать ДХ — это религия.. +)
Если дома чего написать для себя, то пожалуйста, но в комерческих разработках у DirectX конкурентов нет(в Windows разумеется)
И это не религия, а обычный прагматизм
Здравствуйте, gmGreen, Вы писали:
G>И не надо тут про ID Software приводить, лучше зайдите в любой магазин торгующими играми, и посмотрите сколько там игр на OpenGL сделано
Ну, каг бэ, под PlayStation все сделаны под OpenGL