Как сделать приложения OpenGL в 64-битных окнах
Эксперты OpenGL,
Мой проект компилируется, соединяется и запускается в xp32, тогда я попытался перекрестно скомпилировать его на x64, и я столкнулся с множеством вопросов.
- Там нет встроенного 64-разрядного SDK OpenGL SDK, поэтому я ссылаюсь на что?
- Я видел, как кто-то сказал, что x64-приложения используют 32-битную opengl-dll. Я попытался запустить свое скомпилированное 64-битное приложение в xp64 с драйверами на мою видеокарту (radeon 4850), то же самое я использую на xp32, и я получил эту типичную ошибку "bla bla bla", возможно, переустановка вашего приложения решит проблему "
- Если я использую драйверы видеокарты, как сохранить работу с другими Картами, должен ли я строить версию для каждого? (не имеет смысла). Должен ли я загружать доступную библиотеку динамически? (то же самое не имеет смысла)
- Какова эталонная реализация для x64? где я могу найти его libs для ссылки на?
Я действительно потерялся в этом вопросе. Я много раз искал и ничего не нашел, что помогло мне разобраться до момента.
Итак, каков путь? Что я хочу знать, чтобы создавать собственные x64 OpenGL-приложения?
Любая помощь очень ценится!
Ответы
Ответ 1
64-битная библиотека импорта OpenGL включена в Windows SDK и устанавливается на %ProgramFiles%\Microsoft SDKs\Windows\<version>\Lib\x64\OpenGL32.lib
. Соответствующая DLL называется opengl32.dll
и находится в %SystemRoot%\system32
. 32-разрядная версия также называется opengl32.dll
и находится в %SystemRoot%\syswow64
на 64-битной Windows.
Вы не можете загружать 32-разрядные библиотеки DLL в 64-разрядный процесс, поэтому все, что вы читали о x64-приложениях с 32-разрядной DLL OpenGL, было неверным. Существует определенно 64-битная OpenGL DLL, но у нее есть "32" в ее имени, возможно, облегчить перенос.