2011-09-20 71 views

回答

3

XNA是一個框架用於製作遊戲,目前是Windows Phone SDK的一部分。 (這個名字有點誤導 - 你可以製作PC,Xbox 360和手機平臺的程序,但是MS最近決定更多地推動手機市場)。框架通常表明需要足夠的編程知識,並且很少進行「拖放」工作。

該框架的設計已經從頭開始用於遊戲,儘管最近它也已經適用於Windows Phone 7應用程序。也就是說,它爲內置定時器,精靈渲染和複雜的數學函數等遊戲提供了很多幫手功能。這讓程序員有更多的時間專注於渲染,音頻等遊戲邏輯和更復雜的實現。因此,對於有經驗的程序員來說,很容易就能夠更快地潛入並創建遊戲,但它並不是限制性的,它不會一直握住你的手。可用的各種引擎顯示XNA的靈活性。最好的引擎非常強大,能夠生成AAA級圖形,並且還有專用於音頻(如Xact內置)或物理(如BEPU或LibJigX)的引擎。

3

XNA是一個遊戲庫。

遊戲庫在代碼級別。它包裝了一大堆有用的圖形,聲音和其他遊戲相關的代碼(類,方法等),供您在代碼中調用和集成。您仍然在爲您的遊戲設計整個代碼(類,方法等),但擁有一個有用的庫使其更加方便(更多 - 這種方式您不必與圖形卡通信直)。 XNA有一些相當複雜的幫手代碼,就像它會爲你創建廣告牌矩陣一樣,但即使如此......你仍然有責任將幫助代碼放在正確的位置。

遊戲引擎基本上是您正在使用的應用程序。你可以定義某些參數,它們通常會提供大量的自由度和靈活性(通常通過腳本語言)和可以完成的任務,但最終你並沒有編寫遊戲的基本代碼。這意味着你只能走得太遠,改變很多。你不能混淆遊戲循環,你不能爲某些低級別的事情編寫自己的算法(不知道他們讓你改變什麼,可能每個引擎都不相同)。他們會自動處理大量的碰撞和東西......但這意味着自由的限制。

+0

因此,XNA遊戲工作室是一種遊戲sdk?和遊戲引擎包裝起來,並提供一些自定義用戶界面的視覺工作室? – thReality

+0

我可能已經將遊戲引擎整合到了Visual Studio中,但是不,XNA不是遊戲引擎。你可以在XNA中編寫一個。 – 2011-09-20 09:20:51

0

取決於你的意思是「在線」。

如果你的意思是基於瀏覽器 - 那麼NO。 Flash/Silverlight/Unity是要走的路。

如果你的意思是在線互動,那麼Yes - 你的遊戲將是一個在客戶端運行的XNA應用程序。請注意,在這種情況下,客戶/用戶「必須」在基於Windows的環境(PC/Win電話)上。