2010-04-20 33 views
1

我用OpenGL編寫了一個Perl腳本。它調用glutMainLoop()讓用戶查看一些東西,然後用戶關閉窗口,但我想讓他繼續使用腳本並重新打開一個新窗口並看到其他的東西。那可能嗎?我發現可以執行這條指令:如何在OpenGL中用Perl退出之後啓動新的glutMainLoop()?

glutSetOption(GLUT_ACTION_ON_WINDOW_CLOSE,GLUT_ACTION_GLUTMAINLOOP_RETURNS); 

在窗口關閉後返回代碼。但是如果我再次打電話給glut*函數,它告訴我,如果我不打電話給glutInit,就不能打電話給我,如果我打電話給glutInit,它告訴我我不能再打電話給它!有一些竅門嗎?

回答

0

你不知道。 OpenGL says:「這個例程在GLUT程序中最多隻能調用一次。」

聽起來像你需要使用OpenGL沒有GLUT,或者至少沒有glutMainLoop。或者,也許你可以使用空閒的回調或定時器回調來繼續從主循環內部進行無窗口處理。

+0

我看到,可能最好遠離GLUT。我會嘗試SDL。 – sangaran 2010-04-22 09:48:07

相關問題