【发布时间】:2011-03-22 12:02:35
【问题描述】:
我是整个 Cocoa/Objective-C 的新手(但在 *nix 上有多年的 C/C++ 经验)。
我正在尝试创建一个充满 NSOpenGLView 的基本 Cocoa 应用程序。我有:
chink.mm
#import <OpenGL/gl.h>
#import "chink.h"
@implementation chinkView
@synthesize window;
- (void) applicationDidFinishLaunching : (NSNotification *)aNotification {
NSLog(@"Danger, Will Robinson! Danger!");
}
- (void) dealloc
{
[window release];
[super dealloc];
}
@end
和 chink.h
@interface chinkView : NSOpenGLView {
NSWindow *window;
}
@property (assign) NSWindow *window;
@end
我有一个像这样的 .xib 设置
https://skitch.com/cront/ri625/chinkxib
“chink View”设置为窗口和文件所有者的委托。
我收到“invalid drawable”错误(甚至在应用程序完成启动之前),据我了解,这意味着它试图在窗口之前实例化 opengl 视图(尽管我可能错了)。
我想要的是创建窗口并在其中设置opengl视图的问题的解决方案。完成此操作后,我编写 OGL 绝对没有问题(就像我说的,我知道 C++),但是所有这些 NS 调用 gunk 对我来说都是陌生的。
我不是在寻找“你为什么不在 SDL/GLUT 中这样做”的答案。只是让它正确创建窗口的代码。
【问题讨论】:
标签: cocoa opengl xcode4 nsopenglview