2 kleine Fragen



  • HI!
    Also meine erste Frage:

    Ich wollte zum Spaß nen Quader animieren, ist auch nicht sonderlich schwer. Also mal ich mir den aufn Blatt auf (auch nich schwer ;)). Dann habe ich die linke Seite gerendert. Wenn ich diese Seite auf dem Blatt male, ist ja die Y Achse bei der vorderen "Linie" und bei der hinteren gleich hoch, sonst sieht es aus als ob die Höhe von vorne nach hinten abnehmen würde. Wenn ich jedoch bei den vorderen 2 Punkten und den hinteren 2 Punkten (NUR von der linken Seite) den selben Abstand wähle, sieht die hintere Seite gestampft aus :). Wenn ich mit der Z koordinate 5 nach vorne gehe, dann muss die Höhe der hinteren Linie 3Mal so groß sein wie die, der Hinteren. Klar ist, dass sich die Höhe verändert, da es ja realistisch wirken soll, jedoch wie berechnet man wie hoch der Höhenunterschied sein muss, damit es nach einem gleichhohen Quader aussieht?

    Frage 2:

    Wenn man einen Indexbuffer benutzt, legt man ja beim Createn nicht fest, welchen VertexBuffer es verwenden soll. Woher weiß das DX? Nur durch SetStreamSource? Kann ich dann 2 VertexBuffer und nur einen Indexbuffer verwenden und einfach nach dem Drawn des ersten VertexBuffers die StreamSource auf den 2. VertexBuffer setzen?

    Danke

    Kevin (bitte bitte TGGC zieh mich nicht runter 😢 )



  • Ganz einfach bei SetIndicies kannst du auch nen Streamangeben, und je nachdem welcher VB auf dem Stream ist wie der Indicies werd diese Daten aus dem entsprechenden VB genommen.



  • Frage 1:

    ?
    Dein Quader sieht verzerrt aus? Dann solltest du mal mit der Projection-Matrix herumspielen (aspect, fovy) bis die Winkel und Seitenverhältnisse deinen Vorstellungen genügen. z.B. so

    FLOAT fAspect = m_d3dsdBackBuffer.Width / (FLOAT)m_d3dsdBackBuffer.Height;
    D3DXMatrixPerspectiveFovLH( &matProj, D3DX_PI/4, fAspect,1.0f, 100.0f );
    

    Frage 2:

    dafür gibts

    IDirect3DDevice8::SetIndices

    das du vorm rendern mit deinem IndexBuffer als argument aufrufst



  • DANKE!!

    Mit welcher Matrix ist da eher rumzuspielen? Projektionsmatrix oder Sicht? fAspect hat leider nicht viel gebracht 😞



  • Projektionsmatrix... hab ich dich schon gesagt. PI/4 ist eigentlich am naturgetreuesten, auch wenn PI/3 oft benutzt wird. Ist letzendes eine Geschmacksfrage.


Log in to reply