2012-06-29 4 views
9

코어 프로파일을 사용하는 OS X Lion 또는 OS X Mountain Lion에서 GLUT를 사용할 수 있습니까 (GLSL 1.50을 사용할 수 있습니까?).OpenGL 3.2 코어 프로파일이있는 OS X의 GLUT

내장 된 GLUT를 사용할 수 있습니까? 아니면 FreeGLUT과 같이 타사 라이브러리를 사용해야합니까?

OS X에서 XCode 프로젝트 또는 메이크 파일을 사용할 수있는 간단한 'Hello world'응용 프로그램이 있습니까?

답변

16

OpenGL 3.2의 기본 지원을 위해서는 Mac OS X Lion (OS X 10.7 이상) 이상이 필요합니다. 는 OpenGL 3.2 핵심 프로필을 사용하려면, 당신의 main α- 함수에

glutInitDisplayMode(GLUT_3_2_CORE_PROFILE | ... | ...); 

를 추가합니다.

std::printf("%s\n%s\n", 
     glGetString(GL_RENDERER), // e.g. Intel HD Graphics 3000 OpenGL Engine 
     glGetString(GL_VERSION) // e.g. 3.2 INTEL-8.0.61 
     ); 
+1

안녕하세요. 나는 os X Mavericks를 가지고 있으며이 솔루션은 여전히 ​​작동하지 않습니다. 이걸 좀 도와 주실 래요? 여기 내 코드는 https://gist.github.com/dhirajbodicherla/11238004 – Dhiraj

+1

끝내 주셔서 감사합니다 ...저기서 GLUT에 관한 잘못된 정보를 많이 얻었습니다. 나는 2.1 땅에 머물러야한다는 것을 거의 확신했습니다 ... –

+0

GLUT와 FreeGLUT 코어 프로파일을 구성 할 때 오류를 유발하는 것 같습니다. 현재로서는 OSX에서 코어 프로파일을 사용하기 위해 다른 윈도우 라이브러리를 사용해야 할 것입니다. – Rebs

0

GLUT는 원하는 OpenGL 컨텍스트 버전을 지정하는 기능을 제공하지 않으므로 OpenGL 3.2를 지원하지 않습니다. 또한 GLUT의 기능은 OpenGL 3.2 코어 프로파일과 함께 사용할 수없는 API에 의존합니다.

FreeGLUT 또는 GLFW로 전환해야합니다.

+0

그러나 FreeGLUT은 OS/X에서 OpenGL 3.2를 지원합니까? 이것에 대한 세부 사항을 찾을 수 없었습니다. – Mortennobel

+1

사실, 나는 모른다. 나는 그랬다고 생각했지만, API 문서에 힌트가 없다는 것을 인정해야한다 (꽤 불완전하다.). 개인적으로 OpenGL 3.2를 확실히 지원하는 GLFW를 사용합니다. – flyx

+3

또한 OS/X에서 3.2 용 GLFW를 권장합니다. 그것은 나를 위해 일한 유일한 lib입니다. SDL 2는 호환성을 주장하지만 OS/X에서 모든 종류의 문제에 부딪혔습니다. –

0

flyx가 틀리면 OpenGL 3.2는 코어 및 호환성 프로파일 (3.3 제외)을 추가 한 버전입니다. 그러나 Apple은 호환성 프로파일을 전혀 지원하지 않습니다 (이유가 없으며 단지 호환되지 않습니다). GLUT는 프레임 워크로서 xcode로 제공되며 여러분은 그렇게 사용할 수 있습니다. 따라서 완전히 비표준적이고 플랫폼 별 방식으로이 작업을 수행 할 수 있습니다.