DirectX ist eine Spieleumgebung, die sich um Netzwerkspiele, Grafikdarstellung, Eingabegeräte (Joystick, Gamepad, usw), Sound usw kümmert.
Der Teil, der die 3D-Grafiken anzeigt, heißt Direct3D. Er ermöglicht einen hardwarebeschleunigten (also der Grafikchip rechnet wirklich, nicht die CPU) Zugriff auf die Grafikkarte und ist somit schneller als zum Beispiel selbstgerechnete Grafiken, die in einer 2D-Umgebung gezeichnet werden (ist ja ohne weiteres möglich, macht die GraKa ja auch, nur ist es für den Programmierer dreidimensional). Die meisten (nicht alle) Spiele brauchen es, weil Grafik über die Windows-Funktionen (also den Canvas) zu langsam wäre, weil dieser nicht hardwarebeschleunigt ist, das Depth-Sorting, Größenadaption bei größerer Entfernung vom Betrachter, Lichtberechnungen etc. übernimmt also die CPU und man muss es selbst implementieren. Da das ein relativ großer Aufwand wäre, und man ja nicht jedesmal das
Rad neu erfinden will, gibt es einige Grafikschnittstellen, die diese Berechnungen bereits in Funktionen gekapselt haben und zusätzlich den Code auf der Grafikkarte berechnen lassen. Man braucht
DirectX (oder besser Direct3D) also nicht unbedingt, um dreidimensionale Grafiken darzustellen. Die andere bekannte, und überdies plattformübergreifende Grafikumgebung ist
OpenGL. Eine dritte, über die ich nicht sehr viel weiß, ist SDL, der Simple Directmedia Layer, der ebenfalls plattformübergreifend ist.
Tutorials gibt es tatsächlich viele, sowohl für
OpenGL, als auch für Direct3D, musst nur mal googlen.
Dann gibt es noch die Kapselungen der beien Grafikumgebungen, weil beide in der nativen
API immer noch recht aufwändig sind. Die mit abstand leistungsfähigste für
OpenGL ist
GLScene, für
DirectX ist die beliebteste DelphiX (Link hab' ich nicht), die wird aber seit einiger Zeit nicht mehr weiterentwickelt und ist bei
DirectX 7 stecken geblieben. Was im
DirectX-Bereich an Komponenten gerade so aktuell und auch leistungsfähig ist, weiß ich leider auch nicht.