Zeichnen von Dreieck (TriangleStrip) + Textur hat kleinen Fehler



  • Ich zeichne durch folgenden Source eine Textur auf einem Quadrat:

    void DrawTexture(IDirect3DTexture9* Texture)
    {
      Device->SetTexture(0, Texture);
      Device->DrawPrimitive(D3DPT_TRIANGLESTRIP, 0, 2);
    }
    

    Das erste Dreieck (also das:)

    .
    |\ 
    .-.
    

    wird schön gezeichnet und die Textur passt perfekt.
    aber die andere Hälfte wird nur in 1 Farbe gezeichnet, welche in der Textur enthalten ist!
    Wenn ich die Textur weglasse, passts perfekt!
    Woran kann das liegen?



  • Texturkoordinaten.

    Bye, TGGC \-/



  • Ich hab mich jetzt etwas mit den Texturkoordinaten beschäftigt, aber ich komm nicht weiter. Hier mal wie ich meine Vertices definiere:

    CUSTOMVERTEX V[] = 
      {
        {  0, 100, 0.5f, 0.5f, 0xffffffff, 0.0f, 1.0f,},
        {  0,   0, 0.5f, 0.5f, 0xffffffff, 0.0f, 0.0f,},
        {100, 100, 0.5f, 0.0f, 0xffffffff, 1.0f, 1.0f,},
        {100,   0, 0.5f, 0.0f, 0xffffffff, 1.0f, 0.0f,},
      };
    

    Aber es klappt nicht



  • Wie sieht denn dein FVF aus?



  • Des Sieht so aus

    struct CUSTOMVERTEX
    {
      FLOAT x, y, z, rhw;
      DWORD color;
      float tv, tu;
    };
    
    #define D3DFVF_CUSTOMVERTEX (D3DFVF_XYZRHW|D3DFVF_DIFFUSE | D3DFVF_TEX1)
    

    Ich hab auch schon probiert, tv und tu auszutauschen, hat aber auch nicht geklappt



  • Gibts in deiner SDK Doku das Kapitel "TLVertex Type"?

    Bye, TGGC \-/


Anmelden zum Antworten