跳至內容

影片遊戲設計/程式設計/框架

來自華夏公益教科書,開放世界開放書籍

一般架構問題

[編輯 | 編輯原始碼]

遊戲的框架基本上是所有用於遊戲建立的程式設計,但並不直接實現任何遊戲玩法。 這可能是管理顯示、檔案訪問、聲音和其他外設的程式碼。

沒有一個適合所有影片遊戲的框架。 每款遊戲都需要選擇元件和策略來將它們連結在一起。 使用免費提供的或甚至授權流行框架的好處是,您無需“重新發明輪子”,並且可以在解決問題和擴充套件功能方面獲得支援和協作。 實際上,建立您自己的框架的唯一優勢是可以控制它,這可能是由於需要實現其他反對的東西,或者只是為了從特定工作中獲得經濟補償並將其許可給其他人。

選擇 API(應用程式程式設計介面)

[編輯 | 編輯原始碼]

有很多適用於遊戲程式設計的 API。 API 範圍從專門(僅圖形,例如 OpenGL)到非常非常廣泛(視窗、圖形、網路等在 ClanLib 中可用)

  • OpenGL -- 特別是,這是一個圖形庫。 一些其他 API 可以很好地與 OpenGL 整合(例如 SDL)。 它也是跨平臺的。
  • DirectX -- 由 Microsoft 提供的一組 API,專門用於執行 Windows 的機器,儘管它也存在於其他 Microsoft 平臺上(xbox 1 使用修改版本的 DirectX API)。 它們包括聲音、音樂、圖形、輸入和網路。
  • SDL(簡單直接媒體層) -- 一個基於 C 的良好庫,非常便攜,雖然相當底層,但它足夠完整可以控制聲音、圖形和輸入(來自操縱桿、鍵盤、滑鼠和 CD-Rom)。 zlib/png 許可證。
  • SFML -- 一個面向物件的 C/C++/.Net API,支援音訊、圖形、視窗處理、多執行緒、網路和輸入(來自滑鼠、鍵盤和操縱桿)。
  • Allegro -- 一個易於使用的 C/C++ 程式庫。 跨平臺(支援 Windows、DOS、Mac OS X、UNIX 和 BeOS)。 提供用於圖形、聲音、輸入和計時器的函式。
  • ClanLib -- 一個 C++ 工具包和 OpenGL 2.0 包裝器。
華夏公益教科書