Einzelnen Beitrag anzeigen

Benutzerbild von bigben37
bigben37

Registriert seit: 19. Dez 2007
Ort: Freiburg
116 Beiträge
 
Delphi 2009 Professional
 
#2

AW: [OpenGl] Anfängerfrage - Rechteck bewegen

  Alt 8. Apr 2011, 16:39
Hallo SunSet,

das Problem besteht darin, dass das OpenGL Koordinatensystem mit all seinen Transformationen am Anfang jedes Renderns auf seinen Ursprungszustand gesetzt wird. Also verschiebst du bei deinem Klick das Rechteck immer um die gleiche Strecke.
Deshalb nimmst du am besten eine Variable, in der du die Strecke zum verschieben speicherst, diese dann beim Key Event veränderst und dann das Koordinatensystem transformierst und schließlich das Quad zeichnest.

Noch eine Anmerkung: Das Transformieren vor glBegin aufrufen:
Delphi-Quellcode:
procedure Render;
begin
  //Initialisieren ...

  glTranslated(dx, 0, 0); //dx immer im OnKey ändern

  glBegin(GL_QUADS);
  //hier jetzt dein quad
end;
Benjamin
Optimismus ist nur ein Mangel an Information
  Mit Zitat antworten Zitat