2011-11-24 81 views
0

看來,世界上大多數流行的遊戲都是使用C++開發的。但是微軟的遊戲平臺XNA Studio是基於C#編程的,我沒有發現任何使用XNA開發的流行遊戲。你在XNA上找到的電子書也少了,甚至谷歌搜索的問題也不會給你太多幫助。學習XNA遊戲開發。這值得麼?

人們是否不使用XNA作爲遊戲平臺? XNA是否值得學習遊戲開發,還是應該考慮其他平臺?

+3

XNA開發了大量着名/衆所周知的遊戲:http://gamedev.stackexchange。com/questions/1667 /着名遊戲寫在網絡和xna – thedaian

+0

那些不是那麼受歡迎,我猜 – Nipuna

+2

定義「流行」。 Terraria和Magicka都賣得相當不錯,並且在玩家中非常有名。你不會找到用XNA編寫的Halo,但你無法在C++中自己製作Halo。 – thedaian

回答

0

要小心你的投資。考慮您的應用程序在C#中的可移植性

+2

您可以在基本上每個主要平臺上運行C#代碼。我已經在PC,Xbox 360,Windows Phone 7,iOS,Android和Silverlight(網絡)上運行XNA遊戲。它足夠便攜。 –

+1

MonoGame讓您可以輕鬆移植您的遊戲。 http://monogame.codeplex.com/ – JoeMoe1984

6

瞭解如何開發遊戲。語言和平臺就是這些,語言和平臺。如果您瞭解製作遊戲需要做什麼,可以輕鬆將其移植到任何平臺。另外,如果遊戲在Xbox Live Arcade上,那麼它已經用XNA開發了。 XBLA是推出獨立遊戲的絕佳平臺,因此對於初學者來說(我認爲)是一個小團隊,我會推薦它。

+2

「如果遊戲在Xbox Live Arcade上,那麼它是使用XNA開發的。」 XBLA中有許多XNA遊戲是真的,但並不是那麼多。你的意思是XBLIG?一切都是XNA那裏。 – Elideb

3

我有一個理論 - 無可否認,我不能用數據或經驗來支持它--C#和XNA爲C++和DirectX做了一個很好的「墊腳石」。

良好的C#代碼在結構上與優秀的C++代碼非常相似。良好的XNA圖形代碼在操作上與Direct3D代碼非常相似。

使用C#/ XNA編寫不好的代碼的方法很少。如果你從C#開始,你不必花費時間學習,然後解除C++使壞習慣的壞習慣。在學習的時候,你不會陷入許多令人討厭的低級別問題。一旦你已經學會了如何編寫「正確」的方式,以及遊戲/圖形編程如何工作,那麼使用C++和DirectX提供的原始功能應該相當簡單。


此外,爲了駁斥XNA幾乎沒有參考材料的指控:那簡直是不真實的。網上有一個巨大的XNA社區,MSDN上有很棒的參考資料,還有大量的教程。而第一方samples on App Hub是第二無所謂。

還有很多着名的XNA遊戲。可以肯定的是,它們不是AAA遊戲 - 但是不管怎麼說,你都不會選擇「C++和DirectX」作爲製作其中一個平臺的平臺。您會選擇虛幻引擎或源引擎或類似的。

1

不要學習XNA。學習C#,使用XNA作爲墊腳石。它現在是遊戲開發最有前景的高級語言。它可以在Unity(所有平臺,但Linux和WP7),XNA(所有Microsoft平臺),Silverlight(Windows 8,Web和WP7,可能Xbox),PlayStation套件(PS3,Vita,Xperia)中使用,並且所有其餘的部分。 幾乎沒有哪種語言可以提供如此多的選擇,而無需學習C++。

XNA可以作爲遊戲開發中常見問題的良好參考,照顧像低級圖形編程或通用資產管理這樣的討厭東西。它也很容易與腳本語言(IronPython,Lua)集成,這在現代遊戲中很常見。