directx 3d



  • Hi Leute,
    ich wollt mal anfangen mit directx zu programmieren. Dazu hab ich auch ein Tutorial gefunden und wollt natürlich gleich mal ausprobieren ob das auch funktioniert. Ich bin so weit gekommen:

    #include <windows.h>
    #include<d3d9.h>
    #pragma comment (lib, "d3d9.lib")
    
    LPDIRECT3D9 d3d;    // the pointer to our Direct3D interface
    LPDIRECT3DDEVICE9 d3ddev;    // the pointer to the device class
    
    //void initD3D(HWND hWnd);    // sets up and initializes Direct3D
    void render_frame(void);    // renders a single frame
    void cleanD3D(void);    // closes Direct3D and releases memory
    
    void initD3D(HWND hwnd)
    {
        d3d = Direct3DCreate9(D3D_SDK_VERSION);    // create the Direct3D interface
    
        D3DPRESENT_PARAMETERS d3dpp;    // create a struct to hold various device information
    
        ZeroMemory(&d3dpp, sizeof(d3dpp));    // clear out the struct for use
        d3dpp.Windowed = TRUE;    // program windowed, not fullscreen
        d3dpp.SwapEffect = D3DSWAPEFFECT_DISCARD;    // discard old frames
        d3dpp.hDeviceWindow = hwnd;    // set the window to be used by Direct3D
    
        // create a device class using this information and information from the d3dpp stuct
        d3d->CreateDevice(D3DADAPTER_DEFAULT,
                          D3DDEVTYPE_HAL,
                          hwnd,
                          D3DCREATE_SOFTWARE_VERTEXPROCESSING,
                          &d3dpp,
                          &d3ddev);
    
        return;
    }
    
    /*  Declare Windows procedure  */
    HRESULT CreateDevice(
        UINT Adapter,
        D3DDEVTYPE DeviceType,
        HWND hFocusWindow,
        DWORD BehaviorFlags,
        D3DPRESENT_PARAMETERS *pPresentationParameters,
        IDirect3DDevice9 **ppReturnedDeviceInterface
    );
    

    Und jetzt kommt da immer ne Fehlermeldung:

    [Linker error] undefined reference to Direct3DCreate9@4' [Linker error] undefined reference toWinMain@16'
    ld returned 1 exit status

    Und jetzt weiß ich nich was ich machen soll dass es weitergeht...
    Kann mir da wer weiterhelfen?

    MfG Daniel



  • wenn du mit der fehlermeldung nix anfangen kannst, solltest du dich ned mit directx befassen sondern mit den grundlagen der programmierung.

    #pragma comment(lib, "deinelib.lib")
    


  • ja aber welche lib muss ich denn da einbinden?

    woher soll ichs denn wissen wenn das bei mir noch nie vorkam? 😕



  • was weiss ich, d3d9.lib oder was weiss ich was directx noch für müll braucht. google selbst.



  • folgende lib's gibt es:

    dinput8.lib
    dxguid.lib
    dsound.lib
    d3dx9.lib
    d3d9.lib
    dxerr9.lib

    Du brauchst, aber für dein Beispiel nur diese:

    d3d9.lib

    wenn das nicht funktioniert, dann include:

    d3dx9.lib

    hinzu.. ansonsten einfach alle..



  • @asdca:
    wenn du keinein bock hast, leuten zu helfen, dann lass es einfach.
    Deine arrogante Art geht einen auf den Sack.



  • ich helf den leuten mehr als du, du teppichflicker.



  • @asdca: Bist ja mal ein richtig armer Knilch wa. Muss ich vlad_tepesch mal recht geben, wenn du nicht helfen willst bringen deine unqualifizierten Aussagen rein gar nichts. Dann vllt. besser Klappe halten



  • der knilch bist du hier. ich kann programmieren im ggs zu dir, weil ich die entsprechenden bücher gelesen habe und nicht nur im winapi forum frage um meine friends in der skool mit irgendwelchen kiddie progs zu beeindrucken. Wenn ihr euch mühe gebt und ich erkenne, daß ihr euch echt vorher informiert habt über google, faq und sufu, dann helfe ich auch gerne. das fällt jedem auf, der meine posts aufmerksam liest. schmarotzer die fertigen code hingeklatscht haben wollen, kriegen von mir eben eiskalt eins auf die mütze, heul halt.



  • Also du Vollhegel, ich bin seit 4 Jahren Anwendungsentwickler und schreibe nicht irgendwelche Kiddie Progs. Und jetzt erzähl mir doch mal wo hier irgendwer nach fertigem Quellcode gefragt hat. Klar ist das ein Anfängerfehler wenn man die Libs nicht einbindet. Wenn man aber nicht weiß woher der Fehler kommt hat man auch nicht viel Ansatz danach zu googlen. Und Bücher gelesen habe ich selbst genug. Und dennoch habe ich hin und wieder fragen. Wenn hier jemadn nach fertigem Code gefragt hätte würde ich deine Aussage jetzt verstehen aber so ist das echt arm. Aber egal mit so einem wie dir will ich mich auch gar nicht rumstreiten. Wenn in deinen Augen jemand eine dumme Frage stellt, die es im übrigen nicht gibt, dann antworte doch einfach gar nicht. Es gibt genug andere die keine Probleme damit haben ne kurze Hilfestellung zu geben.



  • CrazyPlaya schrieb:

    Also du Vollhegel, ich bin seit 4 Jahren Anwendungsentwickler und schreibe nicht irgendwelche Kiddie Progs. Und jetzt erzähl mir doch mal wo hier irgendwer nach fertigem Quellcode gefragt hat. Klar ist das ein Anfängerfehler wenn man die Libs nicht einbindet. Wenn man aber nicht weiß woher der Fehler kommt hat man auch nicht viel Ansatz danach zu googlen. Und Bücher gelesen habe ich selbst genug. Und dennoch habe ich hin und wieder fragen. Wenn hier jemadn nach fertigem Code gefragt hätte würde ich deine Aussage jetzt verstehen aber so ist das echt arm. Aber egal mit so einem wie dir will ich mich auch gar nicht rumstreiten. Wenn in deinen Augen jemand eine dumme Frage stellt, die es im übrigen nicht gibt, dann antworte doch einfach gar nicht. Es gibt genug andere die keine Probleme damit haben ne kurze Hilfestellung zu geben.

    FULL ACK



  • CrazyPlaya schrieb:

    Klar ist das ein Anfängerfehler wenn man die Libs nicht einbindet. Wenn man aber nicht weiß woher der Fehler kommt hat man auch nicht viel Ansatz danach zu googlen.

    Das is nen Scherz, oder? 😮

    http://www.google.de/search?hl=de&q=[Linker+error]+undefined+reference+to+`Direct3DCreate9%404'+&btnG=Google-Suche&meta=



  • also ich hatte das ganze ja eigentlich mit dev c++ gemacht. Ich hab alle libs die mRXXo freundlicherweise genannt hat eingebunden aber es kam immer noch ...

    dann hab ichs mal mit visual c++ gemacht und da hats funktioniert

    woran kann das liegen?



  • versuchs ma hier mit:

    http://free.pages.at/tron2d/DX9-Devpack/DirectX90c.DevPak

    aber wiseo willst du den dev c++ benützen wenn du visual studio hast?



  • doppel post sry!


Anmelden zum Antworten