簡體   English   中英

MonoGame 只是 XNA 嗎?

[英]Is MonoGame just XNA?

所以我想學習 C# 和 XNA,但經過一些研究,我注意到 XNA 顯然已經死了,並且有一個名為 MonoGame 的替代庫使用 XNA 框架。

那么,我可以為 MonoGame 使用 XNA 課程/教程,還是編程方式的主要差異取決於您使用的內容,從而使 XNA 教程對 MonoGame 完全無用?

幾乎。

MonoGame不使用 XNA框架,它是XNA框架的重新實現。 不同之處在於MonoGame中的所有代碼都經過重新編寫,其行為與XNA框架完全相同。

你可能想知道為什么有人想要重新實現已經存在的東西。 嗯,你說XNA“死了”可以這么說。 實際上,如果需要,您仍然可以使用XNA框架,但Windows 8或更高版本不再支持Microsoft。

然而,這並不是MonoGame的主要原因。 真正的原因是XNA只適用於Microsoft平台(例如Windows,XBox,Windows Phone)。 MonoGame的目的是允許現有的XNA代碼輕松移植到其他平台(例如iOS,Android,Mac OS X,Linux,Windows 8,Windows Phone 8,PlayStation Mobile和OUYA控制台)

是的,您可以在大多數時間使用XNA課程/教程進行MonoGame。 MonoGame的代碼和行為與XNA框架完全一樣。 我說有意,因為它並不完美,但它確實運作良好,並且有很多游戲已經使用MonoGame來證明它。

盡管不受支持,XNA仍然可以在Windows 8上使用。 為此,您必須先安裝其他組件。 您必須下載Windows Live Games可再發行,然后下載XNA,它將在Windows 8上運行。

2022 年更新的答案,craftworkgames 回答得最好:

是的,您可以在大部分時間使用 MonoGame 的 XNA 課程/教程。 MonoGame 的代碼和行為旨在與 XNA 框架完全相同。 我說是有意的,因為它並不完美,但它確實運行良好,並且已經有很多游戲使用 MonoGame 來證明這一點。

以下操作方法是 willthiswork89 答案的更新擴展/擴展。 我不建議使用它,但它值得一個現代的答案。


只要安裝了DirectX9運行時庫,XNA 程序就可以繼續運行 Windows 11。不要忘記在 DX9 安裝后重新啟動。

XNA 安裝程序將無法在現代版本的 Windows 上運行。 開始運行 安裝程序並在第一個提示符處打開 window(以允許安裝程序提取文件,但在它刪除它們之前),並在%tmp%%temp%中找到臨時文件,在文件資源管理器中鍵入,然后排序按日期(文件夾名稱是 GUID 和最新的)並手動執行(雙擊)找到的每個 .MSI 文件。

模板是另一回事(MS VS > 2013)。 我建議下載一個完整的 XNA 示例.SLN項目,並在更新過程之后對其進行清理,以提供一個起點。

您可能仍然需要更新項目引用(名稱匹配,但版本可能不同)。

注意: GamerServices大部分(如果不是完全的話)已經不存在了。


我建議使用 MonoGame < 4.0 作為 XNA 的跨平台替代品。 而不是使用這個答案,因為 Monogame 功能完整且跨平台。

如果你更喜歡舊的.sln項目風格,或者需要 .Net 框架 4.5,那么看看 Monogame 3.7。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM