2011-05-03 2 views
0

이것은 해결하기 위해 집단적 천재가 필요했던 장기적인 문제였습니다. 카메라에서 이미지를 가져 와서 OpenGL에 출력하고 있습니다. 오프 스크린 FBO를 통해 이미지를 기록하면 올바르게 출력됩니다.iPhone에서 OpenGL로 디스플레이 자르기를 피하는 방법

그러나 화면에 표시하기 위해 출력하는 내용은 항상 오른쪽 상단에서 자르고/확대됩니다. 예를 들어 네 개의 창으로 된 사진을 찍을 경우 화면 꺼짐 버퍼에 저장된 이미지는 전체 창을 표시하지만 화면에 실제로 나타나는 것은 왼쪽 상단에만 있습니다.

내 꼭지점 데이터에 아무런 쓸모가 없도록 glviewport를 변경하려고 시도했습니다. 유일한 방법은 eagllayer의 contentScaleFactor를 1.4 이상의 값으로 설정하는 것입니다. 이 해킹이 본질적으로하는 일은 FBO를 1.4 배 늘리는 것입니다. 이는 성능에 좋지 않습니다. 이 해킹을 사용하지 않고 어떻게 화면에 제대로 출력 할 수 있습니까? 내가 찾지 못한 것은 아주 단순한 무언가 일 것임에 틀림 없다. 감사합니다.

+0

약간의 코드가 도움이 될 것입니다. 또한 데이터 흐름에 대한 다이어그램이나 설명이 훌륭했습니다. – datenwolf

답변

0

재미있는 방법은 그냥 stackoverflow에 게시하면 종종 내 문제를 해결합니다. glGenFramebuffers가 두 번 호출되어서 뒷면의 폭과 높이가 잘못 설정되었습니다. 고정은 glviewport (디스플레이 너비와 높이로 설정)가 작동하도록 허용했습니다.

관련 문제