Как сделать программирование OpenGL 3 на OS X с GeForce 9400 - PullRequest
5 голосов
/ 14 марта 2011

У меня есть MacBook Pro с графической картой GeForce 9400.Википедия сказала, что эта карта поддерживает OpenGL 3.

Но заголовок и библиотека, поставляемые с OS X 10.6, похоже, только для OpenGL 2 (я проверил файлы в /usr/X11/include/).

Мне нужнозаниматься программированием на OpenGL 3Могу ли я сделать это с моим текущим оборудованием и ОС?Что мне нужно получить и установить?

Ответы [ 5 ]

2 голосов
/ 14 марта 2011

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

Я полагаю, что Lion обновит OpenGL до версии 3.2 для OS X (чего, к сожалению, пока недостаточно для более полезной версии 3.3).

Примечание: Я не владею Mac, это просто попытка изучить современный OpenGL на стороне Windows и копаться, чтобы понять, насколько портативным он будет.

Редактировать: в этой теме на официальных форумах OpenGL более подробно. Хотя (см. Комментарии ниже к этому ответу) может быть не совсем понятно, почему производители не могут предоставить драйверы, совместимые с OpenGL 3+, кажется довольно ясным, что в OS X нет способа использовать полностью совместимый с OpenGL 3.3 код и шейдеры. Некоторые обходные пути предоставлены. в этой теме, а также в моей первой ссылке.

1 голос
/ 01 декабря 2011

Лучшее место для проверки поддержки OpenGL в различных сочетаниях OSX и Mac: http://developer.apple.com/graphicsimaging/opengl/capabilities/

См. Подстраницу "Core" для 10,7 +

OpenGL 3.2 с GLSL 1.5 на 10.7.2 не так уж и плох.

0 голосов
/ 14 марта 2011

Разработчик Windows OpenGL здесь.В Windows 7 официально поддерживается только OpenGL 1.4, но каждый обходит это ограничение, запрашивая, какие функции доступны во время выполнения.

В OSX я ожидаю, что вы можете сделать то же самое.Самый простой способ сделать это с помощью библиотеки расширений OpenGL: http://www.opengl.org/sdk/libs/GLEW/

0 голосов
/ 14 марта 2011

(Отказ от ответственности: эта информация основана на использовании Windows OpenGL и замене wgl на glX. Но я проверил, что соответствующие расширения существуют в земле GLX)

Вы не найдете поддержку OpenGL 3 ни в одном заголовочном файле. Скорее вам нужно расширение GLX_ARB_create_context .

Другие ответы, вероятно, верны относительно отсутствия поддержки в OSX, но даже когда поддержка приходит, вам придется использовать glXGetProcAddress и загрузить расширение. (Разве производители видеокарт не могут добавить поддержку этих расширений через драйвер? Почему для этого требуется «поддержка ОС»?)

0 голосов
/ 14 марта 2011

Ваше текущее оборудование может поддерживать OpenGL 3, но не ОС.Mac OS X 10.7 (Lion) должна поддерживать OpenGL 3, что является решением только в том случае, если вы можете ждать много месяцев.

В настоящее время вы можете переключиться на другую операционную систему, такую ​​как Windows или Linux.Вам придется загружаться с этой другой операционной системы, поскольку системы виртуальных машин предоставляют виртуальные видеокарты гостевым операционным системам, и ни у одной из них нет совместимых с OpenGL 3 виртуальных видеокарт.

...