[Erfahrungsbericht] Erste Schritte mit Dx9 und dann sowwas!



  • Hier ein Erfahrungsbericht :
    Nochdem ich die plötzliche Begeisterung für die Spieleprogrammierung entdeckte erlitt ich gesternen einen brutalen Rückschlag.

    Ich schöckere also bereits seit einigen Wochen in diverse Tutorials, lese aufmerksam ein paar Berichte zu DirectX und stelle bereits erste Anfängerfragen in Foren 🙂

    Ich lade mir also gestern dieses 220MB DirectX SDK dingsda in der Version 9 herunter, mache dann Platz auf der HDD frei und installiere das Ding.

    So, ich starte VC++ 6 und siehe da: Ich kann ein Dx-Projekt erstellen mit z.B. einem drehbaren Dreieck. Soweit so gut.

    Ich lade nun meine kürzlich gefundene Lieblingstutorialseite in den Browser und beginne den Text zu lesen, dann den Code zu tippen, dann zu kompilieren und auszuführen... BAM es läuft nicht. Okok, vielleicht ists weil ich ein Notebook mit 32MB GK habe, aber die Geforce onboard sollte ja wohl doch schon Dx unterstützen. Die DxProjekte-Samples funktinoieren schliesslich auch.

    Dann sehe ich es... das Turorial ist für Dx Version 8. Na gut, kompilieren ging ja irgendwie trotzdem. Dennoch ändere ich kurzherum alle '8' im Code in ne 9 🤡

    Die Header schluckt er, aber dann kommt das ewige meckern des Compilers: "This f*** function does not handle 2 Parameters.". Super!! Undefined bla blar... also etwa so, als ob ich den Linuxkernel im VC++ kompileren will (hehe, okok ich übertreibe)

    Ein Kurzvergleich in der online MSDN zeigt, dass einige Methoden von der 8er auf die 9er Version zwar immer noch gleich heissen, doch die Anzahl Parameter nich identisch sind.
    Die machen es scheinbar Anfängern wirklich nicht leicht und die Tutorials demnach unbrauchbar, wenn man nicht dieselbe Version hat. "Jaja, da muss man halt das Programm selber umschreiben".... muuuahhh sag ich da nur, denn als Dx_Anfänger hat man eh schon Probleme mit dem ganzen neuen Zeugs und betrachtet halt Vieles noch als "gegeben" an.

    However, ich versuche es zu einem späteren Zeitpunkt nochmals. Schade. Ist echt nicht leicht, den Einstieg zu finden und zu meistern.



  • Man könnte ja auch einfach nen DX9 Tutorial nehmen...



  • User-- schrieb:

    Man könnte ja auch einfach nen DX9 Tutorial nehmen...

    Man könnte ja auch einfach OpenGL mit passendem Tutorial nehmen.

    SCNR



  • Richtig schlimm wird es erst dann, wenn man merkt, dass man mit dem Aufrufen von ein paar DirectX Funktionen noch nicht automatisch ein Grafikprogrammierer geworden ist und man immer noch nicht verstanden hat wie z. B. ein Dreieck richtig geclippt wird oder es texturiert wird



  • Man hätte auch einfach ein DirectX 9 Buch nehmen können...
    Ich verstehe echt nicht warum du dich so aufregst...warum sollte es eine neue DirectX version geben wenn sich nichts geändert hat? Natürlich ändern sich Variablennamen und Funktionsparameter teilweise. Wenn die Programmierer von DX (Microsoft) immer nur die alten Funktionen genutzt hätten und ein paar extrafunktionen eingebaut hätten, dann würden wir jetzt noch sowas wie "CopySurfaceToBackbuffer(bla,bla,bla,bla,bla,bla,bla,bla,bla)" geben(ist jetzt aber ausgedacht), da sie ja leider nicht die Argumente rausnehmen konnten, da ja irgendwelche uralt Codes nicht mehr laufen könnten... 💡



  • LJ_1102 schrieb:

    [...] Ich verstehe echt nicht warum du dich so aufregst...warum sollte es eine neue DirectX version geben wenn sich nichts geändert hat? [...]

    Oder welchen Sinn sollte es sonst machen, die Funktionen anders zu benennen?



  • sky21 schrieb:

    Schade. Ist echt nicht leicht, den Einstieg zu finden und zu meistern.

    Soll ja auch nicht leicht sein. Sonst könnt jeder sein eigenes Spiel programmieren. 🤡



  • sky21 schrieb:

    Viel Dummblah.

    Vielleicht will Microsoft einfach nicht, das jeder Dummkopf, der es nicht gebacken kriegt, 'ne Doku zu lesen an DX scheitert und so nur tolle DX Apps entstehen. Programmieren ist eben mehr als sinnlos 8 durch 9 zu ersetzen.

    Bye, TGGC (Das Jahr des Helden)



  • Programmieren ist eben mehr als sinnlos 8 durch 9 zu ersetzen.

    mmh... das haben wir doch seit DX 3 so gemacht? 😉



  • #define 8 9 👍



  • oder man fängt einfach mit ner 3D Engine an...ogre zB....da kannste Dx und OpenGl mit coden und glücklich sein....


Anmelden zum Antworten