Im folgenden Post beziehe ich mich vorallem auf Direct3D, wenn ich von DirectX spreche. Für andere Bereiche wie Ein- und Ausgabe, Sound oder Netzwerk gilt aber das selbe.
Weil Anfänger denken "DirectX ist cool, damit werden fast alle großen Spiele gemacht, also lern ich es". Wenn du etwas weiter bist und dir klar wird, dass es viel effektiver ist mit Engines wie Ogre3D oder Irrlicht zu arbeiten, wirst du vielleicht umsteigen, denn du willst ja eigentlich Spiele Programmieren und keine Engine.
Bei der Entscheidung hilft zu verstehen was eine Engine überhaupt ist. Es ist "lediglich" mindestens eine Abstraktionsschicht zwischen dem Spiel und der API(DirectX oder OpenGL). Das vereinfacht das Entwickeln des Spiels enorm und selbst wenn man direkt mit DirectX ein Spiel entwickelt, wird nebenebei soetwas wie eine Engine entstehen oder man versinkt früher oder später im Chaos. Allerdings ist es sehr schwierig ein solches Projekt zu Planen. Es ist schwierig genug ein Spiel zu entwickeln und wenn man sich zusätzlich noch mit der API herumschlagen muss übernimmt man sich als Anfänger oder Fortgeschrittener einfach.
Kurz gesagt bringt direkte Arbeiten mit DirectX für einen Anfänger oder Fortgeschrittenen, der ein Spiel entwickeln will, garnichts. Wenn überhaupt jemand einen Vorteil daraus schlagen kann, dann ein Profi, der wird aber auch lieber eine vorhandene Engine erweitern, als eine eigene zu schreiben. Vorausgesetzt natürlich, er möchte auch ein Spiel entwickeln.
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »NachoMan« (09.11.2012, 17:08)