- glPushMatrix();
- try
- glTranslatef(XPos, YPos, 0.0);
- x1 := -Trunc((iFrameWidth * ScaleX) / 2.0);
- y1 := -Trunc((iFrameHeight * ScaleY) / 2.0);
- x2 := +Trunc((iFrameWidth * ScaleX) / 2.0);
- y2 := +Trunc((iFrameHeight * ScaleY) / 2.0);
- if Animation then begin
- // Animiertes Sprite, Texturkoordinaten wurden zuvor berechnet
- Frame := ActiveFrame;
- if Assigned(Frame) then begin
- with Frame do begin
- glBegin(GL_QUADS);
- glTexCoord2f(TC[0].cx, TC[0].cy); glVertex3f(x1, y1, ZPos);
- glTexCoord2f(TC[1].cx, TC[1].cy); glVertex3f(x2, y1, ZPos);
- glTexCoord2f(TC[2].cx, TC[2].cy); glVertex3f(x2, y2, ZPos);
- glTexCoord2f(TC[3].cx, TC[3].cy); glVertex3f(x1, y2, ZPos);
- glEnd;
- end;
- end;
- end else begin
- // Nicht animiertes Sprite, normale Texturkoordinaten koennen
- // verwendet werden
- glBegin(GL_QUADS);
- glTexCoord2f(0, 0); glVertex3f(x1, y1, ZPos);
- glTexCoord2f(1, 0); glVertex3f(x2, y1, ZPos);
- glTexCoord2f(1, 1); glVertex3f(x2, y2, ZPos);
- glTexCoord2f(0, 1); glVertex3f(x1, y2, ZPos);
- glEnd; // <-- Zeile 893
- end;
- finally
- glPopMatrix;
- end;