2010-05-19 91 views
2

我一直在編寫一段時間,並希望開始研究編程遊戲。我知道該行業的標準語言是C++,對於3D圖形來說,主要選擇是Direct 3D和OpenGL之間,但是最廣泛使用的GUI框架是什麼?我目前在Mac上,所以如果本機Windows API是答案,那麼跨平臺選擇是什麼?遊戲編程 - 圖形用戶界面

爲了清楚起見,我不是在尋找人們的最愛,而只是普通或標準遊戲行業的選擇,以便我能夠學習和熟悉它。

感謝, 斯賓塞

回答

5

我不認爲有特別廣泛的使用框架。在遊戲應用程序內部,我們傾向於推出我們自己的用戶界面,或者使用引擎隨附的用戶界面。

遊戲往往有很多自定義的藝術和動畫難以用通用小部件實現;而且大多數工具包不能很好地與D3D或OpenGL配合使用,或者對Xbox和PS3具有良好的端口。所以你會看到很多從頭開始構建的UI實現,它們最終都會對紋理多邊形和字體字形進行直接繪製調用。

在「膠水屏幕」遊戲外,安裝程序和應用程序的其他非D3D的部分,通常我們只是使用的操作系統有問題的原生API,可可或(呃)MFC。

3

我很抱歉地說,但沒有一個。每個遊戲都需要一個特殊的UI,並且有很少的公共UI框架可以啓動d3d/ogl(並且足夠可定製的太慢)。

最好的辦法是坐下來思考一下你的用戶界面,在一張紙上畫出每一個可能的用戶界面小部件,試着看看你能消除什麼(你真的真的很想保持它簡單可能),然後從頭開始實施你真正需要的用戶界面。

當我這樣做時,我試圖使它容易擴展,可調整大小的對話框和類似Swing的容器爲您調整控件,理論上非常酷,但它實現了它的噩夢,花了我幾個月的時間纔得到它對。堅持基礎,你應該沒問題!

6

Scaleform用於很多AAA遊戲。不幸的是,它帶有一個價格標籤來匹配!它基本上允許您在Flash中開發UI,然後將其導入到遊戲中(因爲設計人員通常非常熟悉Adobe的工具,這使得它們變得非常容易)。

對於開源解決方案,實際上有不少。 CEGUI是相當受歡迎的(儘管它傾向於遭受「廚房水槽」綜合徵 - 因爲它擁有除廚房水槽以外的所有東西)。我也看到了GLOAwesomium(這實際上很有趣)。

除此之外,大多數遊戲引擎(例如Unity,UDK等)都有自己的內置GUI框架。

+0

Scaleform的性能和內存特性如何?我們最後一次看它,它看起來太笨重,不足以證明價格的合理性,但如果Ubi和EA在廣泛使用它,也許它會得到改善。 – Crashworks 2010-05-19 04:57:22

+0

我從來沒有用過它,但他們的客戶名單正在迅速增長。 – 2010-05-19 06:08:39

+0

@Crashworks--對我們來說同樣的體驗加上他們的開發支持有點零星。它在PS3上也非常優化,但那是幾年前。有興趣知道它是否從那時起有所改進。 – zebrabox 2010-05-19 12:49:45

3

http://librocket.com/是一個非常好的UI工具包。它使用html/css佈局verbage來描述你的窗口和樣式,並允許你在你選擇的任何系統中進行渲染。

我們之所以選擇它,是因爲它爲我們提供了客戶端用戶界面的靈活性。