我做了一個新項目並且複製了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