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

Aktuelle Zeit: Fr Jul 18, 2025 16:34

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 7 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Welche Parameter für InitOpenGL?
BeitragVerfasst: Sa Jun 03, 2006 18:29 
Offline
DGL Member

Registriert: Sa Jun 03, 2006 17:21
Beiträge: 7
Hi Leute,

Zur Benutzung des dglOpenGL-Headers muß man ja zuerst InitOpenGL aufrufen. Laut Dokumentation hat diese Funktion keine Parameter. Das stimmt jedoch nicht: die Funktion ist deklariert als
Code:
  1.  
  2. function InitOpenGL(LibName: String; GLULibName : String): Boolean;
  3.  

sie hat also zwei Parameter, LibName und GLULibName. Nach der Implementierung der Funktion zu urteilen sind das beides Namen von DLLs (eine für OpenGL und eine für GLU), die mit LoadLibrary geladen werden sollen. Wie heißen die beiden DLLs denn? Und ich glaube auch nicht, daß ich die auf meinen Rechner habe...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Jun 03, 2006 19:08 
Offline
Ernährungsberater
Benutzeravatar

Registriert: Sa Jan 01, 2005 17:11
Beiträge: 2068
Programmiersprache: C++
Was für eine Version hast du?
Weil es mit Defaultwerten versehen wurde und somit nur optionale Parameter sind.
Default für Windows: Libname = 'OpenGL32.dll'; GLULibName = 'GLU32.dll'


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Jun 03, 2006 22:09 
Offline
Fels i.d. Brandung
Benutzeravatar

Registriert: Sa Mai 04, 2002 19:48
Beiträge: 3830
Wohnort: Tespe (nahe Hamburg)
Schaue Dir bitte auch die Vordeklaration an, die vermutlich deine Frage direkt beantwortet:
Code:
  1. {$IFDEF Win32CLR}
  2. function InitOpenGL(LibName: string = 'OpenGL32.dll'; GLULibName: string = 'GLU32.dll'): Boolean;
  3. {$ELSE}
  4. function InitOpenGL(LibName: string = 'libGL.so.1'; GLULibName: string = 'libGLU.so.1'): Boolean;
  5. {$ENDIF}

Entsprechende DLLs sollte durchaus auf einem aktuellen System anzufinden sein, eine Änderung wird vermutlich nur dann sinnvoll sein, wenn man ein alternatives System wie z.B. Mesa versucht zu implementieren oder halt eien andere Plattform hat (s. zweite Deklaration). Der Aufruf der InitOpenGL ohne Parameter wird also durchaus für Dich ausreichend sein und bestens funktionieren. Klemmt es den irgendwo?

_________________
"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 Jun 04, 2006 23:11 
Offline
DGL Member

Registriert: Sa Jun 03, 2006 17:21
Beiträge: 7
ich verwende die Delphi3-kompatible Version von Mars, in der hat InitOpenGL keine Defaultparameter (kann es sein, daß Delphi3 solche noch nicht unterstützt?).
Übrigens scheint Mars in der Implementierung von InitOpenGL ein bißchen was vergessen zu haben: mit GetProcAddress verlinkt sind nur die wgl- und glu-Funktionen, die ganzen gl-Funktionen dagegen allesamt nicht! Deswegen ist mein Programm anfänglich immer abgestürzt, ich hab das jetzt mal selbst nachträglich eingefügt, und jetzt geht's.
Könnt ihr Mars bitte mal verhauen? :wink:


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jun 04, 2006 23:18 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Dez 28, 2002 11:13
Beiträge: 2244
Das war noch eine ganz alte Version. Da muß man glaube ich noch LoadExtensions oder so ähnlich aufrufen, denn die meisten OpenGL Funktion können widersinnigerweise nur mit initialisiert werden, nachdem der RenderContext erstellt wurde.
In der aktuellen Version spielt das keine Rolle mehr, eine Funktion wird beim ersten Aufruf initialisiert.
Mars war schon sehr lange nicht mehr aktiv (17 Sep 2005), denke nicht dass da noch mal ein Update erscheint.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jun 04, 2006 23:31 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Hast du diese Version über den Link im Wiki erhalten?

_________________
Blog: kevin-fleischer.de und fbaingermany.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jun 09, 2006 20:11 
Offline
DGL Member

Registriert: Sa Jun 03, 2006 17:21
Beiträge: 7
LarsMiddendorf hat geschrieben:
Das war noch eine ganz alte Version. Da muß man glaube ich noch LoadExtensions oder so ähnlich aufrufen, denn die meisten OpenGL Funktion können widersinnigerweise nur mit initialisiert werden, nachdem der RenderContext erstellt wurde.
ah danke, das war's. Die Funktion heißt ReadExtensions :)

Da hätte Mars aber ruhig ein bißchen Dokumentation zu schreiben können. War zwar ein Beispielprogramm dabei, das aber war ein bißchen undurchschaubar, weil die Funktionen aus dem Header ziemlich tief im Sourcecode versteckt waren.

@Flash: ja genau von da.


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


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 6 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.009s | 16 Queries | GZIP : On ]