Использование OpenGL с Visual Studio 2013 Express

Чтобы дать вам представление о том, что я действительно пытаюсь сделать. Моя цель — создать программу на С ++ в Visual Studio и с помощью OpenGl отобразить черный экран и белую точку в середине экрана.

Прежде чем я смогу добраться до части кодирования, я должен как-то включить библиотеку OpenGL.

Глядя на документацию OpenGL, они говорят, что она уже установлена, мне просто нужно ее инициализировать.

Я бы предпочел не выполнять всю работу по инициализации, так как она уже выполнялась несколько раз, например, FreeGLUT, но у меня есть две реальные проблемы, которые я в настоящее время просто не понимаю.

1) Как мне скомпилировать FreeGlut?
Я скачал исходный код для FreeGLUT здесь http://prdownloads.sourceforge.net/freeglut/freeglut-3.0.0.tar.gz?download

Я настроил его с помощью CMAKE в совместимый с Visual Studio 2013 проект.
но как только я открываю его в Visual Studio и пытаюсь скомпилировать, я получаю кучу ошибок, говорящих:

Error C1083: Cannot open include file: 'EGL/egl.h': No such file or directory   c:\freeglut-3.0.0\include\gl\freeglut_std.h 136 1   One_static

2) Как только я его скомпилирую, как мне связать его с моим проектом c ++, чтобы я мог сделать

#include<FreeGLUT.h>

или же

#include <GL/glut.h>

?

-1

Решение

Скорее всего, CMake настроил это неправильно; EGL используется во встроенных системах (например, Android, телевизионных приставках и т. Д.), А не в Windows. Дважды проверьте, что CMake делает что-то разумное там.

После того, как вы создали FreeGLUT, скопируйте его в удобное для вас место (не копируйте в каталог установки Visual Studio) и добавьте каталоги, в которые вы поместили FreeGLUT, в пути поиска компилятора и компоновщика вашего собственного проекта OpenGL (доступно в конфигурации Visual Studio Build).

Лично я размещаю специально созданные библиотеки на

C:\local\include\ (заголовочные файлы)

а также

C:\local\lib ( .lib, .a а также .dll файлы)

Я также склонен давать библиотекам такой инфикс архитектуры, как x86_32 или же x86_64, например freeglut-x86_64.dll, Маловероятно, что Windows когда-либо получит какой-то «толстый бинарный файл», в котором можно объединить код для нескольких архитектур.

Для удобства поместите путь DLL в системный путь поиска DLL. При развертывании вашей программы скопируйте необходимые библиотеки DLL в тот же каталог, что и файлы EXE.

1

Другие решения


По вопросам рекламы [email protected]