每次我用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
我的项目构建没有警告和错误。我不知道为什么我的屏幕是白色而不是黑色。
答案 0 :(得分:3)
试试glClearColor(0.0, 0.0, 0.0, 1.0);
。代码中的最后0
是alpha系数,所以它只显示GLView
背后的任何内容。