Anfängerproblemm mit DirectX



  • Hallo

    Ich muss für die Schule ein Projekt machen und hab mich dazu entschieden ein
    Spiel mittels DirectX zu programmieren. Leider bin ich vor einer Woche auf ein
    Problem gestoßen das ich bis heute nicht lösen konnte. Ich hoffe ihr könnt mir
    dabei helfen.

    Zum lernen benutze ich das buch "jetzt lerne ich Spieleprogrammierung mit
    DirectX". Nun bin ich bei dem Teil des Buches angekommen, der sich um DirectX
    dreht. Beispielprogramm ist ein Fenster mit einem direktX-Element. Hierzu soll
    ich die Funktion Direct3DCreate9() benutzen. Beim compilieren bekomme jedoch
    massig Warnungen und Fehler aus den Dateien

    ...\Microsoft Platform SDK\Include\basetsd.h
    ...\Microsoft Platform SDK\Include\winkt.h
    ...\Microsoft Platform SDK\Include\oaidl.h
    ...\Microsoft Platform SDK\Include\propidl.h

    Wie im buch beschrieben habe ich die include-Ordner in der Compiler Settings
    hinzugefügt und die die headerdateien d3d9.h und d3dx9.h eingebunden.

    Bei den linkern habe ich Ordner
    C:\Programme\Microsoft DirectX 9.0 SDK (October 2005)\Lib\x86
    C:\Programme\Microsoft Platform SDK\Lib
    angegeben und dem Projekt die Dateien dxguid.lip, d3d9.lip und d3dx9.lip hinzugefügt

    Ich hoffe ihr könnt mir helfen. Danke schon mal für die Mühe



  • angegeben und dem Projekt die Dateien dxguid.lip, d3d9.lip und d3dx9.lip hinzugefügt

    soll das nicht .lib sein?

    hast du das SDK ordnungsgemäß installiert...?
    hab auch mit dem buch angefangen und es hat leider so seine macken...



  • Ja das soll .lib heisen

    Ich konnte die meisten fehler jetzt ausmerzen. Jedoch bekomme ich immer noch ein fehler den ich davor auch schon bekommen hab

    undefined reference to Direct3DCreate9@4

    Die Funktion ist neu in dem beispiel und ich denk mal ich brauch sie ahnbedingt. 😕



  • Hast du alle relevanten Libs eingebunden?Ich glaube im Windowsirgedwoverzeichnis
    hat man auch noch eine ältere Version von DX dabei die verlinkt wird.
    Also: Nimm die aktuelle Version und alle *.libs die du brauchst!!!

    muli



  • Wegen Libs einbinden: Ich hatte immer das Problem, dass er .libs, die ich dem Projekt hinzugefügt habe, nie berücksichtigt hat. Hab auch immer solche Fehler erhalten. (ich nutze atm die VC Express Edition)
    Ich habe die lib-Dateien in der Datei C:/Programme/Microsoft Visual Studio 8/VC/VCProjectDefaults/corewin_express.vsprops hinzufügen müssen, damit er sie auch verwendet. Dann hats auch funktioniert.
    Könnte vlt sein, dass es bei dir ähnlich ist.



  • FAQ:

    [...] die Verzeichnisse für (DirectX-) Includes und Libs in der Liste ganz nach oben stellen.


Anmelden zum Antworten