moBi
2010-03-14, 23:01:05
Konkret geht es darum, dass ich langfristig eine 2D-Anwendung in Verbindung mit Compute Shader oder OpenCL entwickeln möchte, z.B. Strömungssimulation auf der GPU. Ich kenne mich weder mit Direct3D noch mit OpenGL aus, finde die Thematik allerdings äußerst spannend und hoffe auch mal beruflich in dem Bereich tätig zu werden. Mir ist auch klar, dass das seine Zeit dauern wird. Da ich eher in C# zu Hause bin, würde ich das am liebsten damit realisieren, allerdings verträgt sich anscheinend managed Code nicht so gut mit CS und OpenCL, wodurch ich folgende Möglichkeiten sehe:
- "The Open Toolkit project" mit OpenGL/CL für C#
- SlimDX mit D3D11 und CS für C#
- SlimDX mit Direct2D und CS für C#
- C++ und eine Auswahl von Oben
Es stellt sich für mich zum einen die Frage, ob ich es überhaupt in C# machen soll und die Wrapper brauche, oder das ganze gleich "richtig" angehe und mich nochmal tiefer in C++ einarbeite. Dann hört man hier oft, dass man Direct3D OpenGL vorziehen sollte, wenn man es denn kann. Und schließlich stellt sich für mich noch die Frage, ob Direct2D oder D3D11. Zu Direct2D hab ich gelesen, dass es der quasi Nachfolger von GDI und wohl ziemlich aufgebläht und kompliziert ist, wodurch Viele das ganze einfach in D3D umsetzen.
Man kann es wohl so zusammenfassen:
- C# oder C++
- OpenGL oder Direct2D oder D3D11
- Alles egal, nach Vorliebe
- "The Open Toolkit project" mit OpenGL/CL für C#
- SlimDX mit D3D11 und CS für C#
- SlimDX mit Direct2D und CS für C#
- C++ und eine Auswahl von Oben
Es stellt sich für mich zum einen die Frage, ob ich es überhaupt in C# machen soll und die Wrapper brauche, oder das ganze gleich "richtig" angehe und mich nochmal tiefer in C++ einarbeite. Dann hört man hier oft, dass man Direct3D OpenGL vorziehen sollte, wenn man es denn kann. Und schließlich stellt sich für mich noch die Frage, ob Direct2D oder D3D11. Zu Direct2D hab ich gelesen, dass es der quasi Nachfolger von GDI und wohl ziemlich aufgebläht und kompliziert ist, wodurch Viele das ganze einfach in D3D umsetzen.
Man kann es wohl so zusammenfassen:
- C# oder C++
- OpenGL oder Direct2D oder D3D11
- Alles egal, nach Vorliebe