1
Render to Texture 설정을위한 프레임 버퍼 개체를 만듭니다. 그것은 아이폰 시뮬레이터에서 완벽하게 작동하지만 glCheckFramebufferStatus (GL_FRAMEBUFFER) 함수는 FBO 생성이 끝날 때 GL_FRAMEBUFFER_UNSUPPORTED를 반환합니다.장치의 OpenGL ES 2.0에서 GL_FRAMEBUFFER_UNSUPPORTED 가져 오기
GLenum errNo;
GLsizei width = 320;
GLsizei height = 480;
GLuint textureHandle;
GLuint fboHandle;
glGetError();
glGenTextures(1, &textureHandle);
glBindTexture(GL_TEXTURE_2D, textureHandle);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0, GL_RGBA,GL_HALF_FLOAT_OES, NULL);
glGenFramebuffers(1, &fboHandle);
glBindFramebuffer(GL_FRAMEBUFFER,fboHandle);
glFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, textureHandle, 0);
errNo = glCheckFramebufferStatus(GL_FRAMEBUFFER);
if(GL_FRAMEBUFFER_COMPLETE != errNo){
printf("Unable to create FBO. errNo: %x\n",errNo);
}
내가 우둔입니다 : 나는 아이폰 OS 5. 여기
와 아이폰 3GS에서 테스트하고하면 코드입니다. 이 문제를 어떻게 디버깅해야합니까?
확인하려는 GL 오류가 어딘가? (glGetError() 사용). –
내 코드에서 glGetError() 문을 참조하는 경우 이전 오류 번호를 지우는 데 사용됩니다. – kal21
나는 코드에 어떤 문제도 보이지 않는다. 나는이 책에서 모든 API를 두 번 확인했다. 나는 또한 텍스쳐 크기를 32x48로 축소하여 메모리 문제인지를 확인했지만 여전히 동일한 오류를 준다. – kal21