Float & D3DVECTOR



  • Ich versuche, die x-Werte von zwei Vectoren(D3DVECTOR => 3x float) zu addieren, aber es entsteht eine sehr hohe negative Zahl. Woran liegt das?(ich benutze Inline-Assembler von VC 6.0)

    float tmp;
        _asm {
            xor edi,edi
            xor esi,esi
            lea edi,v1
            lea esi,v2
            fld [edi]
            fld [esi]
            fadd
            fstp tmp;
            wait
    


  • Ah, ja, ich hab vergessen zu erwähnen, dass v1 und v2 zwei D3DVECTOR-Typen sind.



  • Ich kenn mich mit der FPU leider nicht so gut aus, aber:
    Muss man bei FLD nicht die Größe angeben, also ob du einen float, double oder long double laden willst?
    Entsprechend bei FSTP, wobei hier der Compiler ja die Möglichkeit hat das selbst zu managen.


Anmelden zum Antworten