2011-09-09 5 views
0

ARM 플랫폼 중 하나에서 qt + OpenGl + SimpleGl을 사용할 수 있었으며 OpenGL 예제 프로그램을 실행할 수있었습니다. 그래픽 플러그인으로 작업하는 qt + Webkit도 있습니다.Qt + OpenGl + SimpleGl

일반 그래픽 화면을 사용하는 대신 모든 것에 simpleGl 컨텍스트를 사용하고 싶습니다. 따라서 simpleGl로 Qt + Webkit을 실행하려고하면 빈 화면이 나타납니다.

QT는 이것을 지원합니까? 그렇다면 어떻게해야할까요?

+2

"SimpleGL"이란 무엇입니까? –

+0

SimpleGl은 단일 풀 스크린 서피스 컨텍스트를 제공하는 egl 플러그인입니다. http://qt.gitorious.org/qt-labs/simplegl – hari

답변

1

예,이 올바른지 : 어쩌면 나는 당신의 질문에 다소 관련이 생각이 Qt는 분기를 보라. OpenGLframebuffer으로 바로 그립니다. simplegl 드라이버는 QWS의 래스터 페인트 엔진을 사용하여 그려지는 것을 처리하지 않으므로 검정색 만 보일 수 있습니다.

"모든 것"에 simplegl을 사용하면 EGL 전체 화면 창에서 OpenGL을 사용하여 모든 것을 그려야 함을 의미합니까? 이는 일부 가정 하에서 가능합니다. Qt OpenGL paint engine을 사용하여 렌더링 할 모든 응용 프로그램을 작성해야합니다 (OpenGL 그래픽 시스템은 Qt/E으로 지원되지 않습니다). QtWebKit에도 가능합니다. 지금하고 있습니다. 그렇다고해서 모든 것이 하드웨어 가속을 사용하여 렌더링된다는 의미는 아닙니다. 실제로 모든 하드웨어를 가속화하려면 응용 프로그램을 "올바른 방법"으로 작성해야합니다. 이 경우 마우스 포인터를 다른 방법으로 처리해야한다고 생각하십시오.

다른 방법은 raster paint engine을 사용하는 Qt 응용 프로그램의 사용을 허용하도록 simplegl 드라이버를 수정하는 것입니다. 이는 몇 가지 한계점을 가지고 가능합니다. Qt은 blit을 사용하여 OpenGL 이상의 창을 배치 할 수 있습니다. 이것을 수행하는 방법을 알고 싶다면 Qt 소스 트리 안의 프레임 버퍼 드라이버를 찾으십시오. 그런 다음 일반적인 Qt 응용 프로그램과 OpenGLQt 응용 프로그램을 어떤 방식 으로든 가질 수 있습니다. 나는 이것도하고있다. 모든 것이 어쨌든 끝날 수는 없습니다.

편집 : 이미 수행 했겠지만,이 경우 http://doc.qt.io/qt-4.8/qt-embeddedlinux-opengl.html에 많은 관심을 기울여야합니다.