[D3D9] Wieso sehe ich nichts



  • En schwaarzen Bildschirm habig, en schwaarzen Bildschirm, das ganze Wochenende, Scheeeeeisse !!!!!

    // Ein IDirect3DVertexBuffer9 mit den Vertexkoordinaten erstellen
    pDev->CreateVertexBuffer( 4*sizeof(Vertex),D3DUSAGE_WRITEONLY,VrtFvf,D3DPOOL_MANAGED,&vbPlane,0);
    Vertex *pVrt = 0x00;
    vbPlane->Lock(0,4*sizeof(Vertex),(void**)&pVrt,0);
    pVrt[0].x = pVrt[2].x = pVrt[2].z = pVrt[3].z = -0.5f;//-sPlane/2.0f;
    pVrt[0].z = pVrt[1].x = pVrt[1].z = pVrt[3].x = 0.5f;//sPlane/2.0f;
    pVrt[0].y = pVrt[0].u = pVrt[0].v = pVrt[1].y = pVrt[1].v = pVrt[2].y = pVrt[2].u = pVrt[3].y = 0.0f;
    pVrt[1].u = pVrt[2].v = pVrt[3].u = pVrt[3].v = 1.0f;
    vbPlane->Unlock();
    
    // Diverse Renderstates setzen
    pDev->SetRenderState(D3DRS_LIGHTING,false);
    
    // Den Vertex- Stream und Shader definieren
    pDev->SetStreamSource(0,vbPlane,0,sizeof(Vertex));
    pDev->SetFVF(VrtFvf);
    
    // Kamera konfigurieren
    D3DXMatrixPerspectiveFovLH(&mxProj,D3DX_PI/4,1280.0f/1024.0f,1.0f,100.0f);
    D3DXMatrixLookAtLH(&mxView,&D3DXVECTOR3(0.0f,5.0f,0.0f),&D3DXVECTOR3(0.0f,-1.0f,0.0f),&D3DXVECTOR3(0.0f,1.0f,0.0f));
    D3DXMatrixIdentity(&mxWorld);
    
    pDev->SetTransform(D3DTS_PROJECTION,&mxProj);
    pDev->SetTransform(D3DTS_VIEW,&mxView);
    pDev->SetTransform(D3DTS_WORLD,&mxWorld);
    

    Nein jetzt mal im Ernst, wieso sehe ich den Fussboden nicht ? Die Kamera ist 5 Units über dem Boden und der pAt Vektor schaut direkt auf dem Boden ! Ich bin echt nächstens am durchdrehen, dass ist doch völlig unlogisch ?!

    Gruss Ishildur

    Edit : Bonuspunkte für lustige Beschreibung, Abzug für Topicüberschrift. Deshalb : Neu gemacht 🙂

    [ Dieser Beitrag wurde am 19.01.2003 um 17:39 Uhr von Headhunter editiert. ]



    1. Culling ausschalten
    2. Weißen Ambient Light setzen
    3. Kannst du überhaupt etwas zeichnen (irgendwas) ?
    4. Camera was verschieben
    5. Rückgabewerte testen !


    1. Culling ausschalten

    Wieso, die Seite stimmt ja, aber wie auch immer, ich habs schnell gemacht und es hat nichts geändert !

    1. Weißen Ambient Light setzen

    Das halte ich für überflüssig da ich das Lighting abgeschaltet habe

    1. Kannst du überhaupt etwas zeichnen (irgendwas) ?

    Ja, wenn ich den pAt Vektor folgendermassen setzte (0.0f,0.0f,1.0f) dann sehe ich etwas, allerdings auch nicht das, was man erwarten sollte ! Man sieht zwar den Boden, allerdings mit einem Pitch von ca. 45 GRAD bzw. 0.3926 RAD.

    1. Camera was verschieben

    Wozu soll den das gut sein ??? (Sorry, nicht bös gemeint) Meine Kamera steht in der Mitte des Universums, genau wie der Boden auch !

    1. Rückgabewerte testen !

    Wie gesagt, rendern tut er schon, allerdings nicht, wie man es erwartet bzw. wie ich es erwarte 😉 !

    [ Dieser Beitrag wurde am 19.01.2003 um 18:02 Uhr von Ishildur editiert. ]



  • Leere mal den Bildpuffer auf Rot anstatt auf Schwarz, vielleicht sieht man dann was.



  • Das hat auch nichts gebracht ! Nebenbei bemerkt verwende ich auch eine Textur, was in dem Codeausschnitt allerdings nicht ersichtlich ist !

    Ich kann mir eigentlich nur vorstellen, dass die Daten im lokalen Koordinatensystem im VertexBuffer fehlerhaft sind, aber die habe ich inzwischen zig mal überprüft !!!

    Ich weis echt langsam keinen Rat mehr, das ist so frustrierend, ich sehe einfach keinen Fehler und es nun wirklich so ein einfaches Beispiel, da kann doch gar nichts schiefgehen ?!



    1. Kannst du überhaupt etwas zeichnen (irgendwas) ?

    Ja, wenn ich den pAt Vektor folgendermassen setzte (0.0f,0.0f,1.0f) dann sehe ich
    etwas, allerdings auch nicht das, was man erwarten sollte ! Man sieht zwar den Boden, allerdings mit einem Pitch von ca. 45 GRAD bzw. 0.3926 RAD.

    Was meinst du damit ? Kann es sein dass deine Projektionsmatrix kaputt ist ?


Anmelden zum Antworten