Как получить OpenGL, работающий на OSX

Я обычно программирую в Windows, но я получил MacBook Pro из своей школы, таким образом, я пытаюсь сделать приложение OpenGL для OSX. Я загрузил и установил XCode, но у меня нет подсказки, как получить простое движение приложения OpenGL. Я предпочел бы не использовать Objective C, но я определенно не хочу использовать ИЗБЫТОК. Кто-то может указать на меня в правильном направлении?

12
задан Ernesto Rojo Jr 6 July 2010 в 17:13
поделиться

4 ответа

Самая большая разница между OpenGL на OS X по сравнению с практически всеми остальными - это расположение заголовочных файлов. На OS X:

#include <OpenGL/gl.h>
#include <OpenGL/glu.h>
#include <GLUT/glut.h>

Если вы хотите держаться подальше от Objective-C/Cocoa и GLUT, вы можете попробовать SDL, который является кроссплатформенной игровой библиотекой (окна, 2D графика, звук, ввод и т.д.).

Edit: забыл про флаги компилятора, которые выложил mipadi, а именно:

-framework OpenGL
11
ответ дан 2 December 2019 в 07:02
поделиться

При использовании OpenGL в Mac OS X следует помнить о двух вещах:

Во-первых, вам необходимо связать структуру OpenGL. Вне Xcode вы можете передать компоновщику флаг -framework :

$ gcc -framework OpenGL -o my_opengl_program my_opengl_program.c

(обратите внимание, что этот флаг работает только в OS X).

Если вы используете Xcode, вы можете просто добавить OpenGL.framework к связанным фреймворкам.

Во-вторых, вы префикс OpenGL / > перед заголовками OpenGL. Например, чтобы включить gl.h , используйте:

#include <OpenGL/gl.h>

В противном случае программирование с OpenGL в Mac OS X почти такое же.

1
ответ дан 2 December 2019 в 07:02
поделиться

Поскольку вы программируете на Mac, вы можете использовать любой язык, который вам знаком. XCode поддерживает компиляцию C ++, поэтому, если вы знакомы с OpenGL в Windows, это простой переход, хотя вам нужно будет использовать правильные методы для создания окна OSX (скорее всего, какао).

Если вам нужен python, PyOpenGL - это привязка python к OpenGL, которая является кроссплатформенной.

1
ответ дан 2 December 2019 в 07:02
поделиться

Библиотека, не относящаяся к Objective-C, это AGL.

0
ответ дан 2 December 2019 в 07:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: