Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.051 Beiträge
 
Delphi 12 Athens
 
#3

AW: OpenGL glScaleF funzt nicht richtig

  Alt 24. Okt 2011, 15:13
Dein Code habe ich mir nicht angeguckt, aber Funktionen wie Scale usw beziehen sich immer auf alles, außer Du grenzt das mit PushMatrix/Popmatrix ab.
Das ist nicht ganz richtig: glScaleF bezieht sich auf alles, was danach kommt.

Das gilt übrigens auch für das glTranslateF, wobei ich mich zunächst wunderte, daß du nicht auch eine additive Verschiebung bemängelst - bis mir dann die Sequenz

Delphi-Quellcode:
  
  If i <> 1 then
   glTranslatef(-APosX[i-1], -APosY[i-1], 0);
auffiel, mit der du das glTranslateF des ersten Dreiecks wieder rückgängig machst. Natürlich kannst du das für das glScaleF genauso machen, aber der empfohlene Mechanismus ist hier tatsächlich glPushMatrix/glPopMatrix. Dabei ist allerdings zu beachten, daß der Matrix-Stack nur eine sehr geringe Tiefe hat.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat