Erst einmal: Die Sache mit Vista war ein Gedankenspiel von MS um einmal auszuloten, wie weit man sich eines Konkurrenten entledigt bekommt. Das Ding ging sehr nach hinten los ...
OpenGL wird unter Vista i.d.R. nicht emuliert, sondern kann ganz normal verwendet werden.
Die Frage nach der richtigen
API ist ein wenig wie die Suche nach der gesündesten Ernährung.
Doom 3 basiert auf
OpenGL ... und dies nicht einmal auf der neusten Version. Als Entwickler sich gegen
OpenGL zu entscheiden, weil aktuelle Features nicht zur Verfügung stehen, grenzt dort ein wenig an Hohn... oder Selbstüberschätzung. Eine
API nach Ihrer Zukunftssicherheit auszuwählen ist dabei auch grenzwertig... wurde ja bereits ironisch darauf hingewiesen DX 31 und
OpenGL 7 werden definitiv besser sein. Insbesondere bei der 3D-Programmierung gibt es extrem viele Gemeinsamkeiten, so dass man sich als Einsteiger darum weniger sorgen machen sollte. Hat man erst einmal die grundlegenden Prinzipien verstanden und kommt mit Matrizen klar, ist es nur eine
API unter vielen.
Vielmehr sollte die Entscheidung eine Frage der Ideologie sein. Steht man für Freiheit oder nicht. Will man sich von einem Hersteller abhängig machen oder lieber auf einen freien Standard setzen? Hand aufs Herz: Der Spielebereich für Windows ist überschwemmt. Es gibt zig gute kostenlose Titel für Windows und ein weiterer guter Tetris-Clone geht in der Bedeutungslosigkeit unter. Unter Linux sieht das schon wesentlich anderes aus. (Das soll keine Kritik an Linux sein *g) Schaut man dort mal auf aktuelle Projekte, so stellt man fest, dass diese meist auf einem Niveau von < 15 Jahren in der Vergangenheit liegen. Ergo, ein überdurchschittlicher Titeln unter Windows von einem Hobbisten wird in der Bedeutungslosigkeit untergehen, könnte unter Linux ein Hit sein. Ich würde alleine auf Grund dieser Überlegungen jedem 1-Mann-Team empfehlen auf
OpenGL zu setzen, weil man einfach eine viel größere Zielgruppe ansprechen kann. Und kaum einer wird abstreiten können, dass er es nicht cool finden würde sein entwickeltes Projekt auch auf einem Linux-System oder einem Mac laufen zu sehen. Jemand der auf DX setzt, wird sich von diesem Gedanken gleich verabschieden können.
Die Features weswegen viele Leute von
OpenGL enttäuscht waren sind für die meisten Heimnutzer (insbesondere wenn sie erst anfangen zu lernen) ohne uninteressant.
OpenGL ist ein Industriestandard und wird alleine deswegen schon nicht aussterben. Wer schon einmal im industriellen Bereich oder bei einem Arzt etwas gesehen hat, wird feststellen, dass es nirgends D3D gewesen ist. Ergo: Wir haben es hier mit zwei sehr guten APIs zu tun, die lange Zeit erhalten bleiben. Wer eine
API beherrscht, wird schnell auf die andere wechseln können. D3D hat aktuell technologisch die Nase leicht vorn,
OpenGL läuft dafür auf anderen Plattformen.
Ach ja, es versteht sich von selbst, dass mein Beitrag nicht überparteilich ist