我做了一个新项目并且复制了this guide,但是每当我调用任何OpenGL函数时,它就会标记为// Drawing code here
的地方崩溃。我有这样的有:可可应用程序在OpenGL调用上崩溃
glViewport(0, 0, [self bounds].size.width, [self bounds].size.height);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(0, [self bounds].size.width, [self bounds].size.height, 0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glTranslatef(0.375, 0.375, 0.0);
glClearColor(1, 1, 1, 1);
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(0, 0, 0);
glBegin(GL_LINES);
glVertex2f(10, 10);
glVertex2f(300, 300);
glEnd();
glFlush();
但仅仅调用一个函数的OpenGL崩溃了,报告GDB: Program received signal: "EXC_BAD_ACCESS".
首先,如果没有工作,是代码好?每次被叫时都会在顶端做所有的事情?它应该是2d的,起源于左上角。为什么它会崩溃?我有CoreVideo和OpenGL链接和导入...我想要设置一个Cocoa应用程序来使用OpenGL,这样我就可以专注于游戏代码。
谢谢。
我没有看到标有“此处绘制代码”的位置。 – 2009-11-21 02:19:23
另外,您可以使用调试器(或在Xcode中不运行应用程序时的崩溃日志)来查找导致崩溃的确切函数调用。 – 2009-11-21 02:20:04
@Peter Hosey:哦,它实际上是//在这里添加你的绘图代码。我确实使用过调试器,它在任何OpenGL函数调用中崩溃。但是,如果我使用-drawRect(不使用CVDisplayLink),它就可以工作。嗯... – mk12 2009-11-21 02:36:01