Das OFFIZIELLE PROFAN SUPPORT FORUM
Einsteigerfragen
PROFAN-Programmierung
Helfer & Tools
Anregungen & Vorschläge
PROFAN-NEWS
Die Regeln!
2 - PROFAN-Programmierung

 Neues Thema  |  Zur Übersicht  |  Suchen  |  Einloggen   Vorherige Nachricht  |  Nächste Nachricht 
 Re: Hat jemand eine elegantere Lösung zu diesem oGL-Thema??
Autor: Heinz Brill (---.dip0.t-ipconnect.de)
Datum:   15.07.21 08:19

Ich habe jetzt zwar nicht viel Ahnung von OGL, aber evtl.
könnte man das doch etwas umorganisieren. Wie ich das
sehe, wird in der Schleife jedesmal neu gezeichnet.

Mein Vorschlag wäre :

Die Quads in einer Liste zu zeichnen -> OGL("StartList", N) ... OGL("EndList")
und dann mit OGL("DrawList", N ) auf den Bildschirm bringen.
Dann mit oGL("Rotate", WX, WY, WZ) das Koordinatensystem
rotieren lassen. Das wäre weniger Rechnerei mit den Koordinaten.

Oder so ähnlich, wie in dem Beispiel mit mit den Planeten in den
mitgelieferten Demos.

Ich denke, daß es dann auch nicht mehr ruckelt.

Hier noch was zum Anschauen :
https://xprofan.net/intl/de/quelltexte/album-ogl/

oder sowas :
 declare st%, btn1%, btn2%, btn3%
 declare rtri!, rquad!
  
  proc DrawGLScene
    oGL("Clear")
    oGL("Origin", 0, 0, -6) 
    oGL("Color", 1, 0, 0, 1) 
    oGL("Rotate", 0, rtri!, 0)
    oGL("Rotate", rquad!, 0, 0)
    oGL("Quad", 2, 3)
    oGL("Show")
    rtri! = rtri! + 9
    rquad! = rquad! - 5
  endproc
  
  ' Hauptprogramm
  
  ' -------------
  
  declare ende%
  Window 600, 400
  st%    = @Create("Static", %HWnd, 300, 50, 200, 100)
  btn1%  = @Create("Button", %HWnd, "Start", 10, 10, 60, 25)
  btn2%  = @Create("Button", %HWnd, "Stop", 80, 10, 60, 25)
  btn3%  = @Create("Button", %Hwnd, "Ende", 150, 10, 60, 25)
  
   
  oGL("Init", st%, 0, 0, 0, 0)
  oGL("PosMode", 1)
  
  
  ende%   = 0
  
 setTimer 50 ' max 50 Frames /sek.
  
  WhileNot ende%
    WaitInput
    if isKey(27)
      ende% = 1
    endif
  	If @Clicked(btn1%)
  	   ShowWindow(st%, 1)
  	ElseIf @Clicked(btn2%)
  	    ShowWindow(st%, 0)
  	ElseIf @Clicked(btn3%)
  	   ende% = 1
  	EndIf
  	Case %Key = 2 : ende% = 1
    DrawGLScene()
  EndWhile
  
 killTimer
  
 end
 


H.Brill
XProfan X4 + FreeProfan

Nachricht bearbeitet (15.07.21 09:48)

 Beitrag beantworten  |  Foren-Liste  |  Alle Antworten   Neuerer Beitrag  |  Älteres Thema 

 Beiträge Autor  Datum
 Hat jemand eine elegantere Lösung zu diesem oGL-Thema??  Neu
Markus Barkholz 14.07.21 20:02 
 Re: Hat jemand eine elegantere Lösung zu diesem oGL-Thema??  Neu
Heinz Brill 15.07.21 08:19 
 Re: Hat jemand eine elegantere Lösung zu diesem oGL-Thema??  Neu
Markus Barkholz 15.07.21 20:09 
 Re: Hat jemand eine elegantere Lösung zu diesem oGL-Thema??  Neu
Heinz Brill 16.07.21 07:06 
 Re: Hat jemand eine elegantere Lösung zu diesem oGL-Thema??  Neu
Markus Barkholz 02.08.21 21:17 
 Re: Hat jemand eine elegantere Lösung zu diesem oGL-Thema??  Neu
Heinz Brill 03.08.21 07:25 
 Re: Hat jemand eine elegantere Lösung zu diesem oGL-Thema??  Neu
Markus Barkholz 06.08.21 22:12 
 Re: Hat jemand eine elegantere Lösung zu diesem oGL-Thema??  Neu
Heinz Brill 07.08.21 07:24 
 Re: Hat jemand eine elegantere Lösung zu diesem oGL-Thema??  Neu
Sven Bader 06.09.21 13:48 


 Foren-Liste  |  Zur Registrierung 
 Benutzerlogin
 Benutzername:
 Passwort:
 Login-Daten speichern:
   
 Passwort vergessen?
E-Mail-Adresse oder Username unten eingeben. Dann wird Dir per e-Mail ein neues Passwort zugeschickt.

phorum.org