0
최근에 UIViewController를 iOS 게임에 추가했는데 몇 가지 어려움이 있습니다. 보기 컨트롤러에 내보기가 추가되어 있고 전화기를 돌릴 때보기가 똑바로 유지되도록 회전합니다. 내 문제는 풍경에있을 때 화면이 세로 모드로 유지되고 하단이 화면을 벗어나고 화면 오른쪽에 아무 것도 그려지지 않을 때입니다. 나는이 문제를 해결하려면 어떻게UIViewController는 뷰를 회전하지만 크기를 조정하지 않습니다.
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
CGRect screenBounds = [[UIScreen mainScreen] bounds];
_glView = [[[OpenGLView alloc] initWithFrame:screenBounds] autorelease];
[self.view addSubview:_glView];
}
return self;
}
:
이 내 UIViewController에 대한 코드?
예, UIView에서입니다. 그리고 코드가 작동했습니다. 그러나 내보기의 내용은 너비가 나쁘다 (OpenGL의 경우). 내 게임이 세로 방향으로 맞추어 져서 늘어난 것을 알 수 있습니다. OpenGL이 세로로 그려지는 것이겠습니까? 나는 그것을 어떻게 풍경으로 만들 것인가? – Bananable
'glViewport'가 자동으로 크기가 조정되지 않는 것처럼 보입니다. 아마도'didRotateFromInterfaceOrientation'에서 수동으로 할 필요가있을 것입니다. 그렇게한다면 프로젝션 매트릭스를 업데이트하는 것을 잊지 마십시오. 아마도'OpenGLView' 클래스는 자신의 구현이 아니라면'resize' 나'reshape'와 같은 편리한 메소드를 가지고있을 것입니다. –
예! 고맙습니다. 저는 영사 매트릭스의 값만 바꾸고 있었고, glViewport는 완전히 잊었습니다. 생명을 구하는 분이 십니다. – Bananable