我想用3D來達到兩個目的。一種是以一種奇特的方式顯示我的應用程序的統計數據,另一種是製作一個簡單的3D遊戲。.NET 3D,從哪裏開始?
我在找的是一個最好是開源的庫,所以我可以在不使用任何dll的情況下將它包含在C#項目中,但如果沒有其他選項,那沒什麼大不了的。我出售我的應用程序,因此我需要能夠將該庫用於商業目的。如果我可以在Blender 3D中創建模型並將它們輕鬆導入到庫中,這將是完美的。
我想用3D來達到兩個目的。一種是以一種奇特的方式顯示我的應用程序的統計數據,另一種是製作一個簡單的3D遊戲。.NET 3D,從哪裏開始?
我在找的是一個最好是開源的庫,所以我可以在不使用任何dll的情況下將它包含在C#項目中,但如果沒有其他選項,那沒什麼大不了的。我出售我的應用程序,因此我需要能夠將該庫用於商業目的。如果我可以在Blender 3D中創建模型並將它們輕鬆導入到庫中,這將是完美的。
你有沒有考慮過使用MOGRE,這是一個.NET包裝OGRE? OGRE是麻省理工學院許可的,對於商業用途來說很好,而MOGRE似乎是LGPL許可的,所以也適用於商業用途(如果你動態鏈接它,你不必釋放源代碼)。
A quick search將打開Blender的插件以導出爲OGRE的模型格式,因此您應該在那裏很好。
您還可以使用XNA,這是由Microsoft爲遊戲開發編寫的託管庫。然而,最近(2013年1月),微軟似乎將人們從XNA推向Windows開發領域,並回歸本地代碼。
例如,在上一個鏈接中,他們認爲XNA是用於Xbox Live獨立遊戲和Windows Phone遊戲,而DirectX是用於Windows。同樣,如果我記得正確的話,那麼現在Windows Phone和XBox有2個大的圖塊,並且沒有提到Windows的開發。最後,目前還沒有XNA支持被添加到Visual Studio 2012中的跡象(但可能是因爲新XNA的新版本正在爲新的Xbox開發,這大概是即將推出的)。
MonoGame是XNA的開源實現(很像Mono是.NET的開源實現),但我不確定它的3D功能。
如果這並沒有幫助,也有很多關於這個主題的其他問題和解答:
C#本身只是一種語言,它沒有自己的渲染概念。 「在你的項目中包含3D」意味着該庫必須適應你的渲染引擎,如果你有WPF項目或Windows窗體項目,這就不同了。可能有庫(尤其是Windows Presentation Foundation),但爲什麼不使用Microsoft XNA?它運行在一個託管環境中,它允許您完全使用C#或任何其他CLR語言構建遊戲/查看器/常規項目。
統一由讓您可以創造最佳的交互式娛樂或多媒體體驗。 http://unity3d.com/promo/unity4/?gclid=CMOSnf281bQCFUbf4AodohUAQQ