Cocoa OpenGL总是白色的

时间:2013-03-30 02:20:52

标签: objective-c cocoa opengl

每次我用OpenGL视图运行我的Cocoa App时,我都会看到一个白色的窗口。我期望发生的是一个黑色的窗口会出现。

我已经通过断点验证了我的drawRect方法被调用。

以下代码。

·H

#import <Cocoa/Cocoa.h>
#import <OpenGL/OpenGL.h>
#import <GLUT/GLUT.h>

@interface OpenlGLTest : NSOpenGLView

- (void) drawRect:(NSRect)dirtyRect;
@end

的.m

#include <OpenGL/gl.h>
#import "OpenlGLTest.h"

@implementation OpenlGLTest

- (void)drawRect:(NSRect)bounds
{
    glClearColor(0, 0, 0, 0);
    glClear(GL_COLOR_BUFFER_BIT);
    glFlush();
    [self setNeedsDisplay:YES];
}
@end

我的项目构建没有警告和错误。我不知道为什么我的屏幕是白色而不是黑色。

1 个答案:

答案 0 :(得分:3)

试试glClearColor(0.0, 0.0, 0.0, 1.0);。代码中的最后0是alpha系数,所以它只显示GLView背后的任何内容。