2009-12-23 3 views
0

그래서 Xcode 3.2.1을 사용 중이며 iPhone OpenGL ES1 프로젝트를 만들려고합니다. OpenGL 프로젝트의 기본 템플릿은 괜찮지 만 코드 분할을 시도하여 drawView() 호출에서 모든 것이 프레임 당 수행되는 것은 아닙니다.어떻게 OpenGL ES1 iPhone에서 glFrustrum을 사용합니까

나는 조명을 설정하고, 깊이 테스트를 켜고, 도려내기를 켜고, 맑은 색을 설정하는 별도의 setupRC 메소드를 가지고있다. 이것은 EAGLView의 초기화에서 호출되며 이것은 정상적으로 작동합니다.

나는 glViewport() 및 glFrustrum() 호출을 가져 와서 ES1Renderer.m 파일의 resizeFromLayer() 메서드 끝에 넣었습니다. 앱이 시작될 때와 앱의 크기가 다시 조정될 때 적중됩니다.

이제 문제는 모든 물체가 잘 리거나 잘린 것처럼 절름 거리는 것 같습니다. 나는 카메라의 위치와 각도를 조정하려고 시도했지만 여전히 모든 물체는 잘려져있다. 나는 먼 것을 1000.0f에서 30000.0f로 늘렸고 여전히 같은 결과를 얻는다. 미친 것은 drawView()에서 glViewport() 및 glFrustrum()을 호출하면 모든 프레임이 올바르게 보입니다. 아무것도 잘라내어 내가 원하는 것처럼 보이지 않습니다. frustrum 및 viewport 호출을 읽은 모든 것에서는 창/크기가 조정되고 크기가 조정될 때 호출해야합니다. 그러나 프로젝트의 모든 프레임을 호출하지 않으면 작동하지 않습니다. 어떤 아이디어? 이 절두체/뷰포트 상황을 얻으려고 노력에서 사전

답변

0

드로잉을 시작하기 전에 어딘가에 다른 번역 작업을하고 있을지 궁금합니다. 어쩌면 당신이 생각하는 곳에서 시작 하는지를 확인하기 위해 모든 것을 그리기 전에 loadIdentity()를 수행 할 수 있습니다.