2012-01-10 47 views
1

我有一個場景,我添加和操作對象(我在製作渲染器)。GLUT:在運行時添加菜單項

我希望我添加的每個照相機/物體出現在子菜單上。我正在使用freeglut。

我當前只是調用initMenu()函數,該函數創建菜單,每次添加或刪除一個對象時,都會在我的對象數據庫上運行一個循環。但它非常緩慢。

回答

0

這很簡單。當你第一次創建你的子菜單中,您收到的內部ID作爲返回值:

int submenu = glutCreateMenu(menu); 

後來,當你想另一個菜單項添加到這個子菜單中,你必須設置:

glutSetMenu(submenu); 

然後你就可以在新的價值簡單地添加到菜單:

glutAddMenuEntry("New submenu entry", 55); 

雖然freeglut不提供文檔,你可以嘗試,如果它涵蓋了glut documentation。 (雖然我不知道freeglut覆蓋了多少功能)。