2009-09-07 6 views
10

ARM/Linux에서 OpenGL ES로 개발하기 시작했습니다. 전체 화면으로 그려보고 싶지만 시작해야할 위치를 모르겠습니다.Linux에서 OpenGL ES로 무언가를 그리는 방법?

나는 이 아니며,은 iPhone 또는 Android에서 개발 중입니다. 이것은 Linux/OpenGL ES 질문입니다.

가 나는는하지만 그 주제에 대한 자료를 찾을 수 없습니다, 당신이 나를 도울 수있는 라이브러리없이 의 OpenGL ES으로 프레임 버퍼에 그릴 수 알고?


나는 그것을 수행하는 방법을 보여주는 코드를 가지고 있지 않지만 basicly 당신은 OpenGL을 대상으로 드 프레임 버퍼 장치를 사용하여 | ES 작업.

답변

2

HereSDL을 OpenGL ES와 함께 사용하는 방법을 보여주는 자습서입니다. OpenPandora 플랫폼을위한 것이지만, 리눅스를 실행하기 때문에 적절한 라이브러리 버전을 얻을 수 있다면 바탕 화면에 적용 할 수 있어야합니다.

SDL 사용은 Linux에서 이러한 종류의 프로그래밍으로 다소 표준 적입니다. 당연히 더 긴 경로로 이동하여 창을 직접 열고 GL 렌더링 컨텍스트를 첨부 할 수는 있지만 대개 SDL의 관련 부분을 배우는 것이 더 쉽습니다. 또한 거의 항상 필요한 입력 읽기 용 API를 제공합니다.

+0

저는 리눅스와 프레임 버퍼 디바이스를위한 일반 OpenGL ES 구현물을 사용하고 싶지 않습니다. – amirouche

3

데스크톱 Linux에는 OpenGLES가 아니라 OpenGL이 제공된다는 사실을 잊지 마십시오! 그들은 유사하지만 호환되지는 않습니다. ARM과 같은 데스크톱 Linux 플랫폼에서 OpenGLES에 대한 작업을 수행하려면 OpenGLES 에뮬레이터 라이브러리가 필요합니다. 죄송합니다, 추천 할 수없는, 나 자신을 찾고 있어요.

OpenGLES는 그림을 그리는 과정 만 처리합니다. 또한 물건을 그리는 창을 만드는 과정을 처리하는 창 라이브러리와 창에서 돌아 오는 입력 이벤트를 다루는 이벤트 라이브러리가 필요합니다.

SDL은 다른 두 개의 라이브러리와 마찬가지로 마지막 두 가지를 제공합니다. Khronos는 자체적으로 윈도우 라이브러리로 EGL을 표준화했으며 이벤트 라이브러리로 OpenKODE를 표준화했습니다 ...하지만 리눅스에서 오픈 소스 구현을 어디에서 얻을지는 실제로 알지 못합니다. (나는 임베디드 플랫폼을위한 EGL과 OpenKODE를하는 회사에서 일하므로 오픈 소스 버전을 찾지 않아도된다!)

4

ARM은 OpenGL 2.0을 지원하는 GPU가 거의 없다. Mali Developer 사이트에서 Linux에서 실행되는 몇 가지 예제 및 에뮬레이터를 찾을 수 있습니다. 물론 이것은 주로 ARM GPU를 대상으로하는 것이지만 OpenGL ES 프로그래밍 가능성을 검사하는 데 사용할 수있을 것이라고 확신합니다.

5

임베디드 플랫폼을 타겟으로 개발 중입니까? 그렇다면 호스트 시스템에서 소프트웨어 구현을 사용한 다음 임베디드 장치에서 실제 드라이버를 사용할 수 있습니다.

리눅스에서 OpenGLES 1.1을 지원하기위한 작은 프로젝트가 dlges입니다. 시도해 볼 수도 있습니다 mesa.

OpenGLES 호출을 지원하는지 확인하고 볼 수있는 OpenGL 헤더가 드라이버 자체에있을 수 있습니다. 또는 OpenGL 코드를 OpenGL ES처럼 보이도록 함수 포인터를 설정할 수 있습니다.

행운을 빈다.

관련 문제