Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Fr Jul 04, 2025 13:30

Foren-Übersicht » Programmierung » Einsteiger-Fragen
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 8 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Objekt bewegen
BeitragVerfasst: Sa Okt 26, 2002 17:12 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Okt 26, 2002 16:45
Beiträge: 22
Wohnort: Rostock
Hallo,

ich bin neu hier und habe auch gleich ne N00b-Frage:
Wie bewege ich ein Objekt (bzw. die Szene) auf Tastendruck?
Ich bin am verzweifeln.

Ich habe es so versucht:

Code:
  1. procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  2.  
  3.   Shift: TShiftState);
  4.  
  5. begin
  6.  
  7.  Case Key of
  8.  
  9.   VK_UP: begin
  10.  
  11.           gltranslateF(0.0,0.1,0.0);
  12.  
  13.          end;
  14.  
  15.   VK_DOWN: Begin
  16.  
  17.             gltranslateF(0.0,-0.1,0.0);
  18.  
  19.            end;
  20.  
  21.  end;
  22.  
  23. end;



Aber irgendwie scheint dann nix zu passieren. Das Ereignis wird aber ausgelöst. Das habe ich mit Messageboxes überprüft.
Ich denke mal, ihr könnt mir sicherlich helfen. Aber ich bin kurz vorm Durchdrehen ... :crazy:

_________________
_________ <br> <br>Ex0rzist


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Okt 27, 2002 10:11 
Offline
DGL Member

Registriert: Sa Sep 21, 2002 21:32
Beiträge: 346
Wohnort: Eilsum (Nahe Emden)
Hmmm ... normalerweise sollte gltranslate wirken.... kann es evtl sein, dass du in deiner Prozedur, in der du Renderst, irgendwo "glloadidentity" aufrufst? Daran könnte es liegen.......

_________________
Es sind immer die guten,
welche zu früh von uns gehen müssen...

Meine bislang 13 Open Gl - Tuts findet ihr auf www.dcw-group.net
Neu! Ein großer Teil der Demos nach Kylix übersetzt!


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Okt 27, 2002 12:34 
Offline
DGL Member
Benutzeravatar

Registriert: Di Mai 14, 2002 21:07
Beiträge: 70
Wohnort: Heilbronn/Neckar
Hmm probier mal statt KeyDown das KeyPress Ereignis.
Klingt vielleicht dämlich, aber bei mir ging manchmal das eine manchmal das andere. Und ich weiß nicht worans liegt :?

_________________
<a href='http://aefgames.thechaoscompany.net/' target='_blank'>Artificial Electronic Faction</a>


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Okt 27, 2002 13:50 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Das ist ein fataler OGL-Anfängerfehler...

Du fängst den Tastendruck zwar ab, aber dein glTranslatef(...) bleibt ohne Wirkung, da es ausserhalb von deinem RenderCode genutzt wird, und du in deinem Rendercode wohl die Identitätsmatrix lädst!

Versuchs mal so (Achtung!Pseudocode) :
Code:
  1.  
  2.  
  3. ...
  4.  
  5. var
  6.  
  7.  Position : TVector;
  8.  
  9. ...
  10.  
  11. procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  12.  
  13.  &nbsp;Shift: TShiftState);
  14.  
  15. begin
  16.  
  17. Case Key of
  18.  
  19.  &nbsp;VK_UP: begin
  20.  
  21.  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Position.y := Position.y+0.1;
  22.  
  23.  &nbsp; &nbsp; &nbsp; &nbsp; end;
  24.  
  25.  &nbsp;VK_DOWN: Begin
  26.  
  27.  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;Position.y := Position.y-0.1;
  28.  
  29.  &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; end;
  30.  
  31. end;
  32.  
  33. end;
  34.  
  35.  
  36.  
  37.  
  38.  
  39. procedure Render;
  40.  
  41. begin
  42.  
  43. ...
  44.  
  45. glMatrixMode(GL_MODELVIEW);
  46.  
  47. glLoadIdentity;
  48.  
  49.  
  50.  
  51. glTranslatef(Position.x, Position.y, Position.z);
  52.  
  53. ...
  54.  
  55. end;
  56.  
  57.  

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Okt 27, 2002 15:37 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Okt 26, 2002 16:45
Beiträge: 22
Wohnort: Rostock
Hallo,

erstmal danke für eure Antworten, aber irgendwie bekomme ich es nicht hin.
Ich habe jetzt mal einen Testknopf eingebaut. Das OnClick-Ereignis sieht so aus:
Code:
  1. procedure TForm1.Button1Click(Sender: TObject);
  2.  
  3. var x : Single;
  4.  
  5. i : Integer;
  6.  
  7. begin
  8.  
  9. x := 0.0;
  10.  
  11. For i := 0 to 20 do
  12.  
  13.  begin
  14.  
  15.  &nbsp;glrotateF(x,0,1,0);
  16.  
  17.  &nbsp;DrawScene;
  18.  
  19.  &nbsp;SwapBuffers(DC);
  20.  
  21.  &nbsp;x := x+2.0;
  22.  
  23.  end;
  24.  
  25. end;

Dabei sollte sich das Objekt schön um die Y-Achse drehen.
DrawScene sieht so aus:
Code:
  1. procedure TForm1.DrawScene;
  2.  
  3. begin
  4.  
  5.  glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
  6.  
  7.  glFlush();
  8.  
  9.  DrawPyramid;
  10.  
  11.  DrawCube;
  12.  
  13.  SwapBuffers(DC);
  14.  
  15. end;

Damit sollte es ja normalerweise klappen. Falls der Code für den Würfel und die Pyramide wichtig ist, hier ist er:
Code:
  1. procedure TForm1.DrawPyramid;
  2.  
  3. begin
  4.  
  5.  glBegin(GL_LINE_LOOP);
  6.  
  7.  &nbsp;glVertex3f(-0.3,0.3,0.3);
  8.  
  9.  &nbsp;glVertex3f(0.3,0.3,0.3);
  10.  
  11.  &nbsp;glVertex3f(0.3,0.3,-0.3);
  12.  
  13.  &nbsp;glVertex3f(-0.3,0.3,-0.3);
  14.  
  15.  glEnd;
  16.  
  17.  glBegin(GL_LINE_LOOP);
  18.  
  19.  &nbsp;glVertex3f(-0.3,0.3,0.3);
  20.  
  21.  &nbsp;glVertex3f(0.3,0.3,0.3);
  22.  
  23.  &nbsp;glVertex3f(0,0.6,0);
  24.  
  25.  glEnd;
  26.  
  27.  glBegin(GL_LINE_LOOP);
  28.  
  29.  &nbsp;glVertex3f(-0.3,0.3,-0.3);
  30.  
  31.  &nbsp;glVertex3f(0.3,0.3,-0.3);
  32.  
  33.  &nbsp;glVertex3f(0,0.6,0);
  34.  
  35.  glEnd;
  36.  
  37.  glBegin(GL_LINE_LOOP);
  38.  
  39.  &nbsp;glVertex3f(-0.3,0.3,0.3);
  40.  
  41.  &nbsp;glVertex3f(-0.3,0.3,-0.3);
  42.  
  43.  &nbsp;glVertex3f(0,0.6,0);
  44.  
  45.  glEnd;
  46.  
  47.  &nbsp;glBegin(GL_LINE_LOOP);
  48.  
  49.  &nbsp;glVertex3f(0.3,0.3,0.3);
  50.  
  51.  &nbsp;glVertex3f(0.3,0.3,-0.3);
  52.  
  53.  &nbsp;glVertex3f(0,0.6,0);
  54.  
  55.  glEnd;
  56.  
  57. end;
  58.  
  59.  
  60.  
  61. procedure TForm1.DrawCube;
  62.  
  63. begin
  64.  
  65.  glBegin(GL_LINE_LOOP);
  66.  
  67.  &nbsp;glVertex3f(0.3, 0.3, 0.3);
  68.  
  69.  &nbsp;glVertex3f(-0.3, 0.3, 0.3);
  70.  
  71.  &nbsp;glVertex3f(-0.3, -0.3, 0.3);
  72.  
  73.  &nbsp;glVertex3f(0.3, -0.3, 0.3);
  74.  
  75.  glEnd;
  76.  
  77.  glBegin(GL_LINE_LOOP);
  78.  
  79.  &nbsp;glVertex3f(0.3, 0.3, -0.3);
  80.  
  81.  &nbsp;glVertex3f(0.3, -0.3, -0.3);
  82.  
  83.  &nbsp;glVertex3f(-0.3, -0.3, -0.3);
  84.  
  85.  &nbsp;glVertex3f(-0.3, 0.3, -0.3);
  86.  
  87.  glEnd;
  88.  
  89.  &nbsp;glBegin(GL_LINE_LOOP);
  90.  
  91.  &nbsp;glVertex3f(-0.3, 0.3, 0.3);
  92.  
  93.  &nbsp;glVertex3f(-0.3, 0.3, -0.3);
  94.  
  95.  &nbsp;glVertex3f(-0.3, -0.3, -0.3);
  96.  
  97.  &nbsp;glVertex3f(-0.3, -0.3, 0.3);
  98.  
  99.  glEnd;
  100.  
  101.  glBegin(GL_LINE_LOOP);
  102.  
  103.  &nbsp;glVertex3f(0.3, 0.3, 0.3);
  104.  
  105.  &nbsp;glVertex3f(0.3, -0.3, 0.3);
  106.  
  107.  &nbsp;glVertex3f(0.3, -0.3, -0.3);
  108.  
  109.  &nbsp;glVertex3f(0.3, 0.3, -0.3);
  110.  
  111.  glEnd;
  112.  
  113.  glBegin(GL_LINE_LOOP);
  114.  
  115.  &nbsp;glVertex3f(-0.3, 0.3, -0.3);
  116.  
  117.  &nbsp;glVertex3f(-0.3, 0.3, 0.3);
  118.  
  119.  &nbsp;glVertex3f(0.3, 0.3, 0.3);
  120.  
  121.  &nbsp;glVertex3f(0.3, 0.3, -0.3);
  122.  
  123.  glEnd;
  124.  
  125.  glBegin(GL_LINE_LOOP);
  126.  
  127.  &nbsp;glVertex3f(-0.3, -0.3, -0.3);
  128.  
  129.  &nbsp;glVertex3f(0.3, -0.3, -0.3);
  130.  
  131.  &nbsp;glVertex3f(0.3, -0.3, 0.3);
  132.  
  133.  &nbsp;glVertex3f(-0.3, -0.3, 0.3);
  134.  
  135.  glEnd;
  136.  
  137. end;


Ich verwende kein glLoadIdentity, aber trotzdem passiert nichts. 8O
Was mache ich nur falsch. :?:<span style='font-size:25pt;line-height:100%'>[/size][size=24]</span>

_________________
_________ <br> <br>Ex0rzist


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Okt 27, 2002 15:45 
Offline
Fels i.d. Brandung
Benutzeravatar

Registriert: Sa Mai 04, 2002 19:48
Beiträge: 3830
Wohnort: Tespe (nahe Hamburg)
Auch kein glLoadIdentity zu verwenden kann tödlich sein ;)

Am besten wir ändern die Philosophie in deinem Programm so wie SOS es vorschlägt. Wenn eine Taste gedrückt wird nehmen wir mal ne Rotation an, dann würdest Du einfach bei einem Links druck den Winkel in einer Variable verändern.

Code:
  1. pseudo:
  2.  
  3. IF VK_LEFT THEN x:=x+1;
  4.  
  5. IF VK_RIGHT THEN x:=x-1
  6.  
  7.  
  8.  
  9. // im render que
  10.  
  11. //szene löschen, bla bla
  12.  
  13. glLoadIdentity;
  14.  
  15. glrotate(x,0,1,0);
  16.  
  17. drawit;
  18.  
  19.  


Somit hast Du ständig Kontrolle auf den Winkel und mußt nicht mehr kompliziert bei der Tasten_Verarbeitungen mit Matrizen arbeiten ;) Das sollte klappen!

Auch solltest Du glFlush mit vorsicht geniesen! Da dieses meines erachtens speziell für das Rendern auf zwei PCs konzipiert wurde. Das Swap ist besser ;) Vor allem am Ende des Que ;)

_________________
"Light travels faster than sound. This is why some people appear bright, before you can hear them speak..."


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Okt 27, 2002 16:01 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Okt 26, 2002 16:45
Beiträge: 22
Wohnort: Rostock
Hallo nochmal,

also das mit der globalen Variable habe ich ausprobiert. Mir scheint, als würde er nur das erste Bild zeichnen. Ich habe in der Schleife den Wert für die Zeichenfarbe immer geändert. Aber trotzdem passiert nichts dergleichen.
Ich wäre euch sehr verbunden, wenn ihr nochmal bitte meinen Code durchgucken könntet.
Hier ist die Unit:
Code:
  1. unit main1;
  2.  
  3.  
  4.  
  5. interface
  6.  
  7.  
  8.  
  9. uses
  10.  
  11.  &nbsp;Windows, Messages, SysUtils, Classes, Graphics, Controls,
  12.  
  13.  &nbsp;Forms, Dialogs,GL, GLU, ExtCtrls, StdCtrls;
  14.  
  15.  
  16.  
  17. type
  18.  
  19.  &nbsp;TForm1 = class(TForm)
  20.  
  21.  &nbsp; &nbsp;Panel1: TPanel;
  22.  
  23.  &nbsp; &nbsp;Timer1: TTimer;
  24.  
  25.  &nbsp; &nbsp;Button1: TButton;
  26.  
  27.  &nbsp; &nbsp;procedure FormCreate(Sender: TObject);
  28.  
  29.  &nbsp; &nbsp;procedure FormDestroy(Sender: TObject);
  30.  
  31.  &nbsp; &nbsp;procedure FormPaint(Sender: TObject);
  32.  
  33.  &nbsp; &nbsp;procedure Timer1Timer(Sender: TObject);
  34.  
  35.  &nbsp; &nbsp;procedure Button1Click(Sender: TObject);
  36.  
  37.  &nbsp;private
  38.  
  39.  &nbsp; hrc : HGLRC;
  40.  
  41.  &nbsp; DC :HDC;
  42.  
  43.  &nbsp; Procedure SetDCPixelFormat(Handle: HDC);
  44.  
  45.  &nbsp; Procedure DrawScene;
  46.  
  47.  &nbsp; Procedure DrawPyramid;
  48.  
  49.  &nbsp; Procedure DrawCube;
  50.  
  51.  &nbsp; procedure OnIdle(Sender:TObject;var Done:Boolean);
  52.  
  53.  &nbsp; &nbsp;{ Private-Deklarationen}
  54.  
  55.  &nbsp;public
  56.  
  57.  &nbsp; &nbsp;{ Public-Deklarationen}
  58.  
  59.  &nbsp;end;
  60.  
  61.  
  62.  
  63. var
  64.  
  65.  &nbsp;Form1: TForm1;
  66.  
  67.  &nbsp;FrameRate: Integer;
  68.  
  69.  &nbsp; GradX : Single = 0.0;
  70.  
  71.  &nbsp; Farbe : Single = 1.0;
  72.  
  73.  
  74.  
  75. implementation
  76.  
  77.  
  78.  
  79. {$R *.DFM}
  80.  
  81.  
  82.  
  83. procedure TForm1.onidle(Sender:TObject;var Done:Boolean);
  84.  
  85. begin
  86.  
  87. inc(Framerate);
  88.  
  89. Done:=FALSE;
  90.  
  91. end;
  92.  
  93.  
  94.  
  95. procedure TForm1.SetDCPixelFormat(Handle: HDC);
  96.  
  97. var
  98.  
  99.  pfd: TPixelFormatDescriptor;
  100.  
  101.  nPixelFormat : Integer;
  102.  
  103. begin
  104.  
  105.  FillChar(pfd,SizeOf(pfd),0);
  106.  
  107.  with pfd do
  108.  
  109.  &nbsp;begin
  110.  
  111.  &nbsp; nSize := SizeOf(pfd);
  112.  
  113.  &nbsp; nVersion := 1;
  114.  
  115.  &nbsp; dwFlags := PFD_DRAW_TO_WINDOW or PFD_SUPPORT_OPENGL or PFD_DOUBLEBUFFER;
  116.  
  117.  &nbsp; iPixelType := PFD_TYPE_RGBA;
  118.  
  119.  &nbsp; cColorBits := 24;
  120.  
  121.  &nbsp; cDepthBits := 32;
  122.  
  123.  &nbsp; iLayerType := PFD_MAIN_PLANE;
  124.  
  125.  &nbsp;end;
  126.  
  127.  nPixelFormat := ChoosePixelFormat(Handle,@pfd);
  128.  
  129.  SetPixelFormat(Handle, nPixelFormat,@pfd);
  130.  
  131. end;
  132.  
  133.  
  134.  
  135. procedure TForm1.DrawPyramid;
  136.  
  137. begin
  138.  
  139.  glBegin(GL_LINE_LOOP);
  140.  
  141.  &nbsp;glVertex3f(-0.3,0.3,0.3);
  142.  
  143.  &nbsp;glVertex3f(0.3,0.3,0.3);
  144.  
  145.  &nbsp;glVertex3f(0.3,0.3,-0.3);
  146.  
  147.  &nbsp;glVertex3f(-0.3,0.3,-0.3);
  148.  
  149.  glEnd;
  150.  
  151.  glBegin(GL_LINE_LOOP);
  152.  
  153.  &nbsp;glVertex3f(-0.3,0.3,0.3);
  154.  
  155.  &nbsp;glVertex3f(0.3,0.3,0.3);
  156.  
  157.  &nbsp;glVertex3f(0,0.6,0);
  158.  
  159.  glEnd;
  160.  
  161.  glBegin(GL_LINE_LOOP);
  162.  
  163.  &nbsp;glVertex3f(-0.3,0.3,-0.3);
  164.  
  165.  &nbsp;glVertex3f(0.3,0.3,-0.3);
  166.  
  167.  &nbsp;glVertex3f(0,0.6,0);
  168.  
  169.  glEnd;
  170.  
  171.  glBegin(GL_LINE_LOOP);
  172.  
  173.  &nbsp;glVertex3f(-0.3,0.3,0.3);
  174.  
  175.  &nbsp;glVertex3f(-0.3,0.3,-0.3);
  176.  
  177.  &nbsp;glVertex3f(0,0.6,0);
  178.  
  179.  glEnd;
  180.  
  181.  &nbsp;glBegin(GL_LINE_LOOP);
  182.  
  183.  &nbsp;glVertex3f(0.3,0.3,0.3);
  184.  
  185.  &nbsp;glVertex3f(0.3,0.3,-0.3);
  186.  
  187.  &nbsp;glVertex3f(0,0.6,0);
  188.  
  189.  glEnd;
  190.  
  191. end;
  192.  
  193.  
  194.  
  195. procedure TForm1.DrawCube;
  196.  
  197. begin
  198.  
  199.  glBegin(GL_LINE_LOOP);
  200.  
  201.  &nbsp;glVertex3f(0.3, 0.3, 0.3);
  202.  
  203.  &nbsp;glVertex3f(-0.3, 0.3, 0.3);
  204.  
  205.  &nbsp;glVertex3f(-0.3, -0.3, 0.3);
  206.  
  207.  &nbsp;glVertex3f(0.3, -0.3, 0.3);
  208.  
  209.  glEnd;
  210.  
  211.  glBegin(GL_LINE_LOOP);
  212.  
  213.  &nbsp;glVertex3f(0.3, 0.3, -0.3);
  214.  
  215.  &nbsp;glVertex3f(0.3, -0.3, -0.3);
  216.  
  217.  &nbsp;glVertex3f(-0.3, -0.3, -0.3);
  218.  
  219.  &nbsp;glVertex3f(-0.3, 0.3, -0.3);
  220.  
  221.  glEnd;
  222.  
  223.  &nbsp;glBegin(GL_LINE_LOOP);
  224.  
  225.  &nbsp;glVertex3f(-0.3, 0.3, 0.3);
  226.  
  227.  &nbsp;glVertex3f(-0.3, 0.3, -0.3);
  228.  
  229.  &nbsp;glVertex3f(-0.3, -0.3, -0.3);
  230.  
  231.  &nbsp;glVertex3f(-0.3, -0.3, 0.3);
  232.  
  233.  glEnd;
  234.  
  235.  glBegin(GL_LINE_LOOP);
  236.  
  237.  &nbsp;glVertex3f(0.3, 0.3, 0.3);
  238.  
  239.  &nbsp;glVertex3f(0.3, -0.3, 0.3);
  240.  
  241.  &nbsp;glVertex3f(0.3, -0.3, -0.3);
  242.  
  243.  &nbsp;glVertex3f(0.3, 0.3, -0.3);
  244.  
  245.  glEnd;
  246.  
  247.  glBegin(GL_LINE_LOOP);
  248.  
  249.  &nbsp;glVertex3f(-0.3, 0.3, -0.3);
  250.  
  251.  &nbsp;glVertex3f(-0.3, 0.3, 0.3);
  252.  
  253.  &nbsp;glVertex3f(0.3, 0.3, 0.3);
  254.  
  255.  &nbsp;glVertex3f(0.3, 0.3, -0.3);
  256.  
  257.  glEnd;
  258.  
  259.  glBegin(GL_LINE_LOOP);
  260.  
  261.  &nbsp;glVertex3f(-0.3, -0.3, -0.3);
  262.  
  263.  &nbsp;glVertex3f(0.3, -0.3, -0.3);
  264.  
  265.  &nbsp;glVertex3f(0.3, -0.3, 0.3);
  266.  
  267.  &nbsp;glVertex3f(-0.3, -0.3, 0.3);
  268.  
  269.  glEnd;
  270.  
  271. end;
  272.  
  273.  
  274.  
  275. procedure TForm1.FormCreate(Sender: TObject);
  276.  
  277. begin
  278.  
  279. DC := GetDC(Panel1.Handle);
  280.  
  281. SetDCPixelFormat(DC);
  282.  
  283. hrc := wglCreateContext(DC);
  284.  
  285. Application.OnIdle:=Form1.OnIdle;
  286.  
  287. end;
  288.  
  289.  
  290.  
  291. procedure TForm1.FormDestroy(Sender: TObject);
  292.  
  293. begin
  294.  
  295. wglDeleteContext(hrc);
  296.  
  297. end;
  298.  
  299.  
  300.  
  301. procedure TForm1.DrawScene;
  302.  
  303. begin
  304.  
  305.  glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
  306.  
  307.  glLoadIdentity;
  308.  
  309.  glRotateF(GradX,0.0,1.0,0.0);
  310.  
  311.  glColor3F(Farbe,Farbe,Farbe);
  312.  
  313.  DrawPyramid;
  314.  
  315.  DrawCube;
  316.  
  317.  SwapBuffers(DC);
  318.  
  319. end;
  320.  
  321.  
  322.  
  323. procedure TForm1.FormPaint(Sender: TObject);
  324.  
  325. begin
  326.  
  327. wglMakeCurrent(DC, hrc);
  328.  
  329. DrawScene;
  330.  
  331. wglMakeCurrent(0,0);
  332.  
  333. end;
  334.  
  335.  
  336.  
  337.  
  338.  
  339. procedure TForm1.Timer1Timer(Sender: TObject);
  340.  
  341. begin
  342.  
  343. Form1.Caption := 'FPS: '+FloatToStr(Framerate/100);
  344.  
  345. FrameRate := 0;
  346.  
  347. end;
  348.  
  349.  
  350.  
  351.  
  352.  
  353.  
  354.  
  355. procedure TForm1.Button1Click(Sender: TObject);
  356.  
  357. var
  358.  
  359. i : Integer;
  360.  
  361. begin
  362.  
  363. For i := 0 to 20 do
  364.  
  365.  begin
  366.  
  367.  &nbsp;DrawScene;
  368.  
  369.  &nbsp;GradX := GradX+2.0;
  370.  
  371.  &nbsp;Farbe := Farbe - 0.05;
  372.  
  373.  &nbsp;Form1.Caption := IntToStr(i);
  374.  
  375.  &nbsp;Sleep(100);
  376.  
  377.  end;
  378.  
  379. end;
  380.  
  381.  
  382.  
  383. end.

_________________
_________ <br> <br>Ex0rzist


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Okt 27, 2002 16:28 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Okt 26, 2002 16:45
Beiträge: 22
Wohnort: Rostock
Finallly ...

ich habs jetzt doch hinbekommen. Ich habe nach jedem Positionsänderung einfach ein Form1.Paint hinzugefügt und schon läuft es.

Trotzdem danke für eure Bemühungen.

Bis zur nächsten N00b-Frage :wink:

_________________
_________ <br> <br>Ex0rzist


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 8 Beiträge ] 
Foren-Übersicht » Programmierung » Einsteiger-Fragen


Wer ist online?

Mitglieder in diesem Forum: Google [Bot] und 28 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.014s | 16 Queries | GZIP : On ]