문제

나는 OpenGL을 배우기 시작했고 (Ubuntu) Linux에서 설정하는 방법은 확실하지 않습니다.

나는 이것이 방법 일 수 있다고 생각합니다.

OpenGL은 그래픽 언어 일뿐입니다 사양 (또는 인터페이스) 및 제대로 사용하려면 일부 라이브러리 (특정 OS 용)를 다운로드해야합니다. 구현 OpenGL 사양.

오랫동안 검색 한 후 여러 소스에서 MESA 3D 그래픽 라이브러리가 가장 적합하다는 것을 알았습니다.

또한 SDL (Simple DirectMedia Layer) 라이브러리를 찾았지만 그래픽 외에 다른 모든 것들 (예 : GUI, 사운드, 키보드 및 마우스 입력)에 대한 라이브러리 인 것 같습니다. 그래픽 라이브러리 만 필요하므로 OpenGL 사양을 구현할 수 있습니다.

그래픽 사용자 인터페이스로서 나는 gtkmm 라이브러리를 사용하고 지금까지 "매우 만족 스럽다"고 gtkmm을 "연결"하고 싶습니다. gtkglextmm OpenGL 애니메이션을 창에 그릴 수 있어야합니다. DrawingArea GUI의 GTKMM 전문 용어에서) (그러나 아직 시도하지 않았으므로 작동하기를 바랍니다 :-)).

마지막 문제는 Linux에서 Windows (Mingw Cross Compiler)로의 크로스 컴파일입니다. 지금까지 나는 GTKMM 라이브러리와 함께 수행 한 모든 작업 (Linux에서 Windows까지)을 성공적으로 교차했습니다.

OpenGL과 결합하면 교차 컴파일이 문제가되지 않습니다 (예 : GCC 컴파일러와 컴파일 할 때 특별한 것을 연결해야합니까?

나는 내가 올바른 방향에 있거나 더 쉽게 또는 더 나은 방법을 할 수있는 올바른 방향으로 나를 돌렸다는 것을 확인한 것을 매우 기쁘게 생각합니다.

도움이 되었습니까?

해결책

그래픽 카드 의존적으로 어느 정도까지 독점 드라이버 팩에는 자체 libgl.so가 포함되며 libgl.la (.SO와의 링크) 및 관련 헤더 파일도 포함됩니다.

  • nvidia - OpenGL 라이브러리 및 헤더는 독점 드라이버 패키지에 포함되어 있습니다.
  • Ati fglrx - OpenGL 라이브러리 및 헤더는 독점 드라이버 패키지에 포함되어 있습니다.
  • 오픈 소스 드라이버 - OpenGL 라이브러리 및 헤더는 MESA의 일부로 제공됩니다. 배포에 따라 *-devel 패키지를 설치하여 필요한 헤더 및 링크 가능한 라이브러리를 가져와야 할 수도 있습니다.

Intel 또는 Matrox 카드를 사용하고 있거나 Rage, Radeon 또는 Radeonhd 드라이버가있는 ATI 카드를 실행하는 경우 오픈 소스 드라이버를 사용하고 있습니다.

GLUT는 작업 프로그램의 가장 짧은 경로가 될 것입니다. 그렇지 않으면 OpenGL 컨텍스트 (OS)를 직접 작성하려면 코드를 작성해야합니다.

여전히 문제가있는 경우, 작동하지 않는 것에 대해 더 많이 알려주십시오.

편집하다 다음은 관련이 있거나 유용 할 수있는 샘플 명령/코드입니다.

GCC 컴파일 :

gcc -lGL glprogram.c -o glprogram

포함 :

#include <GL/gl.h>
#include <GL/glu.h>
#include <GL/glut.h>

다른 팁

올바른 패키지가 주어진 상자에서 모두 작동해야합니다.

즉, 여기에 빌드 의존의 관련 덩어리가 있습니다. rgl 패키지 (OpenGL 장치에 제공되는 패키지 아르 자형) 에 데비안. 처럼 우분투 패키지 빌드에 동일한 설정을 사용하므로 실제로 설정해야합니다.

libgl1-mesa-dev | libgl-dev, libglu1-mesa-dev | libglu-dev, \
libpng12-dev, libx11-dev, libxt-dev, x11proto-core-dev

그만큼 | 대안을 의미하므로 MESA 기반 패키지 또는 그래픽 카드와 일치하는 패키지 (다양한 NVIDIA-* 패키지)를 사용할 수 있습니다.

어딘가에서 OpenGPL 예제를 가져 와서 시도하십시오.

당신은 올바른 방향으로 가고 있습니다. Ubuntu Linux에서 앱을 개발하기 위해 Eclipse CDT + SDL + OpenGL을 사용했습니다 (이 자습서를 설정에 사용했습니다. http://www.ferdychristant.com/blog/articles/domm-72mppe) 그런 다음 Dev C ++로 Windows에서 내 앱을 성공적으로 컴파일했습니다.

나는 Linux 영역에서 큰 도움이되지 않습니다. 그리고 나는 그것이 OpenGL과 관련하여 시간 뒤에 있습니다. 그러나 그것은 보입니다 Nehe에는 새로운 튜토리얼 세트가 있습니다 그들이 멋진 기본 코드를 구성하는 곳.

그들이 사이트에서 말한 것처럼 :

새로운 튜토리얼을 작성할 때 몇 가지 목표가 있습니다.

  • 깨끗하고 단순하며 일관된 코딩 표준을 사용하여 쓰기
  • 최신 C ++를 사용하여 쓰십시오
  • 완전히 남아 있습니다 크로스 플랫폼 (결국 Opengl의 힘입니다)
  • 사람들이 우리의베이스 코드를 기반으로 자신의 레슨을 제출하도록 영감

그래서 나는 적어도 그들의 코드를 시험해 보는 것을 강력히 추천합니다. Nehe는 아주 좋은 튜토리얼을 만드는 오랜 전통을 가지고 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top