Был сделан screen saver использующий OpenGL и MFC, у меня release версия работает замечательно, у моих друзей — черный экран. Необходимые библиотеки у них есть
(opengl32.dll, mfc42.dll). Есть идеи почему возникает проблема?
Здравствуйте Богин Илья Владимирович, Вы писали:
БИВ>Был сделан screen saver использующий OpenGL и MFC, у меня release версия работает замечательно, у моих друзей — черный экран. Необходимые библиотеки у них есть БИВ>(opengl32.dll, mfc42.dll). Есть идеи почему возникает проблема?
Скорее всего проблема чисто графическая. Сравни видеоадаптер, разрешение, глубину цвета у себя и у нех.
Кстати OpenGL32 и MFC42.dll бывают РАЗНЫХ версий
Здравствуйте adontz, Вы писали:
A>Здравствуйте Богин Илья Владимирович, Вы писали:
БИВ>>Был сделан screen saver использующий OpenGL и MFC, у меня release версия работает замечательно, у моих друзей — черный экран. Необходимые библиотеки у них есть БИВ>>(opengl32.dll, mfc42.dll). Есть идеи почему возникает проблема?
A>Скорее всего проблема чисто графическая. Сравни видеоадаптер, разрешение, глубину цвета у себя и у нех. A>Кстати OpenGL32 и MFC42.dll бывают РАЗНЫХ версий
Да действительно, спасибо! Я поменял у себя на компьютере цветность с 16 бит на 32 бита,
и получил точно описанную друзьями картину.
Re[2]: Screen saver работает не на всех компьютерах
Здравствуйте Lafkadio, Вы писали:
L>Корректирую вопрос "Что может вызвать неработоспосбность на 32-битном цвете, если при 16-цветном все было в порядке?"
Скинсейвер 3D или 2D ?
В любом случае проверь вездели рисуемая глубина цвета соответствует экранной.
проверь формат видео буфферов.
Здравствуйте adontz, Вы писали:
A>Скинсейвер 3D или 2D ? A>В любом случае проверь вездели рисуемая глубина цвета соответствует экранной. A>проверь формат видео буфферов.
Не успел я обрадоваться, что ошибка локализована, как оказалось, что у кого-то он не работает и на 16-битном цвете. Ну ладно, если я смогу заставить работать его у себя
в 32-битном цвете это уже будет шаг вперед.
Screensaver — 3D, правда совсем простой, кубы(auxSolidCube) и 3d-шрифты(GLFontType).
Цвет я вроде-бы вручную использую только в виде GLColor3D()
PIXELFORMATDESCRIPTOR pfd =
{
sizeof(PIXELFORMATDESCRIPTOR),
1,
PFD_DRAW_TO_WINDOW|
PFD_SUPPORT_OPENGL|
PFD_DOUBLEBUFFER,
PFD_TYPE_RGBA,
24, //здесь я ставил разные цифры, результат один
0,0,0,0,0,0,
0,0,0,0,0,0,0,
32,
0,0,
PFD_MAIN_PLANE,
0,
0,0,0
};
Re[5]: Screen saver работает не на всех компьютерах
A>Откуда такая уверенность что всегда поддерживается 32-х битный z-буфер ? A>НЕ ВСЕГДА!!! A>[/c]
Согласен, я изменил его на 16 битный, но у меня на компьютере он все равно не идет в 32-цветном режиме, правда,если в PIXELFORMATDESCRIPTORS.dwFlags заменить PFD_DOUBLEBUFFER
на PFD_SUPPORT_GDI он работает как в 16-цветном, так и в 32-цветном, но в обоих режимах с крайне неприятным миганием.