Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

buggypixels

Treue Seele

Beiträge: 125

Wohnort: Meerbusch

Beruf: Programmierer

  • Private Nachricht senden

11

03.02.2011, 14:17

Welche API Du verwenden solltest hängt auch stark von dem jeweiligen Spiel ab. Wenn Du kleine "casual games" erstellen willst, dann solltest Du DirectX9 verwenden. Selbst wenn WindowsXP in der Martverteilung stark abnimmt, so ist gerade diese Zielgruppe dann eher was für Dich. Bei größeren Spielen ist das kein Problem. Das ist eh dann eher was für Hardcore Gamer und die sind in den meisten Fällen auf dem neusten Stand.
OpenGL ist nur sehr, sehr bedingt zu empfehlen. Die Treiberuntertsützung für OpenGL ist immer noch äußerst mangelhaft. Für mache Chipsätze gibt es fast gar keine vernünftige OpenGL Unterstützung (vor allem Intel).
Also ich würde Dir DirectX11 empfehlen.

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

12

03.02.2011, 14:28

Ja Intel ist meiner Erfahrung nach nicht unproblematisch mit OpenGL. ATi und NVIDIA haben dagegen sehr guten OpenGL Support. Abgesehen davon finde ich die API von Direct3D um Lichtjahre besser als die von OpenGL. Schon zwei Gründe warum ich unter Windows nie freiwillig OpenGL verwenden würde. Auf anderen Plattformen bleibt einem derzeit leider ohnehin nichts anderes übrig als OpenGL...

Wie schon gesagt würde ich D3D9 genau dann nehmen wenn du XP noch unterstützen willst (buggypixels hat ja schon gute Gründe genannt wann man das vielleicht möchte und wann nicht) und sonst D3D11. Einem Anfänger würde ich etvl. noch D3D9 empfehlen weil es weniger steile Lernkurve hat und es im Moment noch viel mehr Material dazu gibt.

13

03.02.2011, 14:44

Also ich würde schon gerne D3D11 benutzen. Schon allein weil die API verbessert wurde (meine Meinung)
und endlich diese schei* Lost-Devices weg sind.
Allerdings haben viele Casual Gamer immernoch XP, die ja so gesehen meine Hauptzielgruppe sind mit 2D.
Aber D3D9 nervt mich einfach mit dem Ressource Zeugs. (Texture laden ... Device lost ... Texture weg)
Ich weiß es einfach nicht :(

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

14

03.02.2011, 14:57

Naja Lost Devices zu behandeln ist jetzt nicht sooo ein großes Problem, oder? ;)

15

03.02.2011, 18:32

Ne nicht soo schwer, aber es nervt :D
Ich mein, wenn ich alle Texturen im Managed Pool lade, dann ist es sowieso kein Problem.
Ich würde es dann einfach so machen:

C-/C++-Quelltext

1
2
3
4
5
// Extrem abgekürtzt ^^
if( FAILED ( device->Present() ) )
{
    device->Reset(&params);
}


Aber es sind trotzdem viele Dinge schöner und vor allem einfacher in dem neuen D3D11 bzw. D3D10.

Werbeanzeige