Zu .Net und
OpenGL:
Es gibt demnächst auch eine .Net Version des DGL Headers und zwar im Gegensatz zu Tao,CSGL usw.. ohne externe
DLL's.
Wer C# und
OpenGL einsetzen möchte, sollte sich
www.3d-seite.de/csopengl mal ansehen. Auch hier nur eine .cs Datei. Es geht also auch elegant unter .Net und das ist wichtig.
Bei den ganz normalen Sachen unterscheiden sich
OpenGL und Direct3D nicht viel: Shader,Vertex Buffer,Texturen usw.. Das heißt alles nur anders. Direct3D hat wesentlich mehr Zusatz und Mathefunktionen gleich dabei, während sich
OpenGL eigentlich aufs Zeichnen beschränkt. Allerdings ist es natürlich manchmal sinnvoll seine eigenen Vector oder Mesh Klasse zu machen, weil man da viel mehr anpassen kann. Die Direct3D Funktionsaufrufe sind aufgrund des anderen Treibermodels viel teurer als bei
OpenGL, aber das soll in der nächsten Version angepaßt werden. Die eigentliche Stärke von
OpenGL liegt bei den Extensions, über die man neue Hardware Funktionen einfach per Treiberupdate verwenden kann, während man bei
DirectX auf eine neue Version warten muß.
Man hat also heutzutage die freie Auswahl und es spricht auch nichts dagegen
OpenGL mit z.B. DirectSound/DirectInput zu kombinieren.