0

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

我已经用断点验证了我的 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

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

4

1 回答 1

3

试试glClearColor(0.0, 0.0, 0.0, 1.0);。代码中的最后一个0是 alpha 系数,所以它只是显示GLView.

于 2013-03-30T03:55:32.207 回答