2013-01-07 13 views
5

Ich möchte 3D für zwei Zwecke verwenden. Einer ist, Statistiken für meine App auf eine extravagante Weise anzuzeigen, und ein anderer besteht darin, ein einfaches 3D-Spiel zu erstellen..NET 3D, wo soll ich anfangen?

Was ich suche ist eine Bibliothek, die vorzugsweise Open Source ist, also kann ich es in mein C# -Projekt aufnehmen, ohne irgendwelche DLLs zu verwenden, aber wenn es keine andere Option gibt, ist das keine große Sache. Ich verkaufe meine Apps, daher muss ich die Bibliothek für kommerzielle Zwecke nutzen können. Es wäre perfekt, wenn ich in Blender 3D Modelle erstellen und sie einfach in die Bibliothek importieren könnte.

Antwort

5

Haben Sie in Betracht gezogen, MOGRE zu verwenden, was ein .NET-Wrapper für OGRE ist? OGRE ist MIT-lizenziert, also gut für den kommerziellen Gebrauch, und MOGRE scheint LGPL-lizenziert zu sein, also auch für kommerzielle Zwecke (und Sie müssen die Quelle nicht freigeben, wenn Sie dynamisch damit verlinkt sind).

Ein quick search wird Plugins für Blender auftauchen, um in das OGRE-Modellformat zu exportieren, also sollte es Ihnen dort gut gehen.

Sie können auch XNA verwenden, eine verwaltete Bibliothek, die von Microsoft für die Spieleentwicklung geschrieben wurde. In letzter Zeit (Januar 2013) scheint es jedoch so, als ob Microsoft die Leute von XNA für die Windows-Entwicklung und zurück zu nativem Code wegdrängt.

Zum Beispiel in der letzten Link, Pitch XNA als für Xbox Live Indie Games und Windows Phone Spiele und DirectX als für Windows. Ähnlich, die Microsoft Create site, die (wenn ich mich richtig erinnere) verwendet Ressourcen für Windows XNA-Entwicklung, jetzt hat 2 große Kacheln für Windows Phone und XBox, und keine Erwähnung der Windows-Entwicklung. Schließlich gibt es (derzeit) keine Anzeichen dafür, dass XNA-Unterstützung zu Visual Studio 2012 hinzugefügt wurde (aber das könnte daran liegen, dass eine neue Version von XNA für die neue Xbox entwickelt wird, die vermutlich bald kommt).

MonoGame ist eine Open-Source-Implementierung von XNA (ähnlich wie Mono eine Open-Source-Implementierung von .NET ist), aber ich bin mir nicht sicher über seine 3D-Fähigkeiten.

Wenn dies nicht geholfen hat, es gibt viele andere Fragen und Antworten zu diesem Thema:

5

C# für sich ist nur eine Sprache, es hat nicht das Konzept des Renderns für sich. "Einbeziehen von 3D in Ihr Projekt" würde bedeuten, dass die Bibliothek an Ihre Rendering-Engine angepasst werden müsste, und das ist anders, wenn Sie zum Beispiel ein WPF-Projekt oder ein Windows Forms-Projekt haben. Es kann Bibliotheken geben (besonders für Windows Presentation Foundation), aber warum nicht Microsoft XNA? Es läuft in einer verwalteten Umgebung und ermöglicht es Ihnen, Ihr Spiel/Viewer/generelles Projekt vollständig in C# oder einer anderen CLR-Sprache zu erstellen.

Verwandte Themen