我正在使用GLKit的GLKViewController/GLKView來做一些基本的OpenGL繪圖。爲什麼在ViewDidLoad中沒有設置GLKView的DrawableWidth?
我想設置了視區viewDidLoad方法。閱讀GLKView引用之後,我想我能做到這一點是這樣的:
- (void)viewDidLoad
{
[super viewDidLoad];
self.context = [[EAGLContext alloc] initWithAPI:kEAGLRenderingAPIOpenGLES2];
if (!self.context) {
NSLog(@"Failed to create ES context");
}
GLKView *view = (GLKView *)self.view;
view.context = self.context;
glViewport(0, 0, view.DrawableWidth, view.DrawableHeight);
}
的問題是,無論DrawableWidth
和DrawableHeight
屬性是零。這是爲什麼?當GLKView調用DrawInRect時,它們被設置並且它們的值是我所期望的。
感謝您的澄清,我想我應該只使用'view.frame.size'來進行設置。 – 2012-03-04 19:40:41
'viewDidLoad'也不是使用'view.frame.size'的好時機。 http://stackoverflow.com/a/9540935/77567 – 2012-03-04 19:44:57
有用的文章,謝謝! – 2012-03-04 22:55:21