我想在更改纹理大小时更新我的NSOpenGLView窗口。没关系。我注册事件发生时,但我无法调整OpenGLView的大小。价值女巫改变是w
和h
。更新NSOpenGLView大小
-(void)initOpenGL {
NSSize size = {w, h};
[self setFrameSize:size];
NSOpenGLContext *glcontext;
glcontext = [self openGLContext];
[glcontext makeCurrentContext];
glMatrixMode(GL_PROJECTION);
glClearColor(0.0, 0.0, 0.0, 1.0);
glClear(GL_COLOR_BUFFER_BIT);
glOrtho(0.0, h, 0.0, w, -1.0, 10.0);
}
当应用程序启动时它的工作原理确定,但是当我经过这些改变大小做[self initOpenGL]
,OpenGL视图,越来越黑了,不能工作了。
我试过了。 Maby我不知道如何使用它,但是在函数witch运行时,我在添加'[glcontext update]'时更改大小,但没有任何结果。 – hockeyman 2012-07-20 10:15:30
试试这个编辑版本。 – andyvn22 2012-07-20 10:22:19
不工作,因为它应该工作。我猜它是因为glOrtho在程序启动时被描述,稍后在调整大小时不会进行编辑。但正如我所看到的,我无法更新glOrtho。如果它现在调整大小几乎没问题,我的意思是它应该设置宽度,但高度保持不变,因为它在启动时保持不变,并且在发布时它的观察只是纹理女巫的一部分。我的意思是,glOrtho是问题 – hockeyman 2012-07-20 11:22:28