2010-12-13 3 views
5

웹 게임을위한 간단한 봇을 만들려고하므로 화면의 픽셀 색상을 읽을 수 있기를 바랍니다. GetPixel()을 사용하여 Windows에서이 작업을 수행했지만 OS X에서이 작업을 처리 할 수 ​​없습니다. 온라인에서 찾고 glReadPixel을 발견했습니다. XCode에서 간단한 명령 줄 도구를 만들 때 다음 코드를 입력했습니다. 그러나, 나는 그것을 작동하게하는 것처럼 보일 수 없다. 나는이에서 EXC_BAD_ACCESS 오류가 계속 : 화면에서 픽셀을 읽는 방법?

GLfloat r; 
glReadPixels(0, 0, 1, 1, GL_RED, GL_FLOAT, &r); 

나는 위의 코드는 R로 (0,0)의 픽셀의 빨간색 값을 저장 거라 생각 했어요. 오, 천천히하기 때문에 스크린 샷 방식을 사용하지 않는 것이 좋습니다. 어떤 도움이 필요합니까?

P. 커맨드 라인 툴을 사용하면, 이미 화면에서 클릭 할 수있는 커맨드 라인 툴이 있기 때문에, 최종 목표는 bash 스크립트 또는 applescript를 만드는 것입니다.

+0

'glReadPixels()'를 호출 할 때 활성 OpenGL 컨텍스트가 있습니까? – genpfault

+0

Nope. 올바른 방향으로 나를 가르쳐 주시겠습니까? – hassaanm

+0

활성 OpenGL 컨텍스트를 주 화면으로하고 싶습니다. – hassaanm

답변

4

glReadPixels은 프레임 버퍼 (그래픽 카드가 그려지는 영역)에서 픽셀을 읽는 데에만 관심이 있습니다.

"화면"에서 픽셀을 읽는 것이 OpenGL과 전혀 관련이 없습니다. 이를 위해 시스템 고유의 기능이 필요합니다.

+0

오 감사합니다. Mac에서 스크린 픽셀을 얻을 수있는 방법을 알고 싶습니까? – hassaanm

+0

아니, 나는 맥을 괴롭히지 않는다. :) – Kos

관련 문제