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

Aktuelle Zeit: So Nov 23, 2014 13:59

Foren-Übersicht » Sonstiges » Community-Projekte
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 11 Beiträge ] 
Autor Nachricht
BeitragVerfasst: So Mai 29, 2005 11:04 
Offline
DGL Member

Registriert: Mi Dez 15, 2004 20:36
Beiträge: 454
Wohnort: Wien, Österreich
Hi,
Es hat ein Paar Tagen gedauert, aber jetzt ist es fertig. Es gibt noch eine Funktion die ich nicht übersetzt habe, die Funktion:
Code:
  1.  procedure TrimAndSplitVersionString(Buffer: String; var Max, Min: Integer);
. Die Folge ist, dass die Variablen GL_VERSION_N_N und GLU_VERSION_N_N alle auf FALSE gesetzt sind. Ich werde mich bemühen so, schnell wie möglich (einer hat gesagt, dass dies eine gefährliche Aussage ist ;) ), die Funktion zu übersetzen.
Leider läuft deise Version nur unter Win32, und alle wglXXX Funktionen heissen ab sofort _wglXXX ;). Es seiht so aus als wären sie schon in windows.h mit dabei.
Und so funktioniert das Ganze (mit MS VS C++ 6 Standard Edition getestet) :
Ein leeres Projekt (Win32) öffnen und die Dateien "dglOpenGL.h" und "dglOpenGL.c" zum Projekt hinzufügen ( Project/Add/Files...). Dann wieder eine leere Datei offnen, die z.B. heisst "main.c" und zum Projekt hinzufügen (falls es nicht automatisch gemacht wird). In "main.c" muss man nur noch "#include "dglOpenGL.h" " reintippen und das war´s. Also, brauch man nicht mehr die 2 Zeilen:
Code:
  1.  
  2. #include <gl/gl.h>
  3. #include <gl/glu.h>
  4.  

Alle Boolean Variablen , Extensionen, heissen jetzt ext_OLDNAME.

Alle von dglOpenGL.pas bekannten Funktionen sind hier auch erhältlich (InitOpenGL, CreateRenderingContext...).

Um eine aAndere Bibliotek zu laden, muss man in dglOpenGL.h folgenden Zeilen entsprechend ändern:
Code:
  1.  
  2. #define LibName "OpenGL32.dll"
  3. #define GLULibName "GLU32.dll"
  4.  


CreateRenderingContext ist jetzt so deklatiert :
Code:
  1. HGLRC CreateRenderingContext(  
  2.             HDC DC,
  3.             int Options,
  4.             int ColorBits,
  5.             int ZBits,
  6.             int StencilBits,
  7.             int AccumBits,
  8.             int AuxBuffers,
  9.             int Layer);

Und Aufruf sieht dann so aus :
Code:
  1.  
  2.  MyRC = CreateRenderingContext( MyDC, [b]opDoubleBuffered | opGDI[/b], 24, 8, 8, 0, 0, 0);
  3.  


Jetzt brauche ich eure Feedback um eventuelle Fehler zu beheben (die gibt es Bestimmt, nehme ich an ;) ).


Dateianhänge:
DGL.zip [73.04 KiB]
246-mal heruntergeladen

_________________
"Meine Mutter sagt : 'Dumm ist der, der Dummes tut'." - Forrest Gump


Zuletzt geändert von sniper am Mo Jul 18, 2005 14:58, insgesamt 3-mal geändert.
Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: So Mai 29, 2005 12:01 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7599
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Hmmmm....mal ne dumme Frage: Wieso braucht ein C/C++ler unseren Header?

Is ja nicht so das die so arm dran wären und keine Header hätten? NEIN! Die griegen die direkt von der Quelle! Also wieso ist das für die besser den DGL-C-Header zu benutzen? Glaube(!) nicht, dass das in der C Gemeinde jemanden vom Hocker reist.

jm2c :roll:

_________________
Letztes fertiges Projekt: Balance
Für den PBall Manager 2 gibt es ein Update (V1.1)!


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: Mo Jul 18, 2005 00:11 
Offline
DGL Member

Registriert: Mi Dez 15, 2004 20:36
Beiträge: 454
Wohnort: Wien, Österreich
Wieso? Weil die gl/glu Funktionen dynamisch geladen werden, so wie es sein sollte. Das ist ein Grund genug für mich.

_________________
"Meine Mutter sagt : 'Dumm ist der, der Dummes tut'." - Forrest Gump


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: Mo Jul 18, 2005 09:24 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jul 17, 2002 12:07
Beiträge: 976
Wohnort: Tübingen
Naja, ich denke mal, ein CGL-Header (Tata tata tusch tusch) kann nicht schaden, vielleicht sogar aus Werbezwecken für uns. Ich mein, wenn unser Header wirklich so gut ist, dass er sich verbreitet, dann wird sich der ein oder andere C`ler bestimmt überlegen, warum sein Lieblings-Header von der Delphi-Community kommt. Ich habe mal ne Zeit lang auch C/C++ geproggt, und das Header-Wirrwarr ist da total chaotisch, musste, während ich an einem Projekt gearbeitet habe, fünfmal(!) den Header wechseln.
Auf jedem Fall schöne Arbeit sniper!

_________________
"Du musst ein Schwein sein in dieser Welt, sangen die Prinzen, das ist so 1.0. Du musst auf YouTube zeigen, dass dir dein Schweinsein gefällt, das ist leuchtendes, echtes Web 2.0."
- Hal Faber

Meine Homepage: http://laboda.delphigl.com


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: Mo Jul 18, 2005 09:34 
Offline
DGL Member

Registriert: Mo Apr 05, 2004 19:51
Beiträge: 105
Immerhin sind alle Extensions auf einem Haufen, ohne dass man sich da mit inkompatiblen Headern rumschlagen müsste... Find ich auf jeden Fall nicht uninteressant.


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: Mo Jul 18, 2005 14:47 
Offline
Forenkatze
Benutzeravatar

Registriert: Mi Okt 22, 2003 18:30
Beiträge: 1851
Wohnort: Närnberch
Programmiersprache: Scala, Java, C*
Etwas befremdlich wirkt das Ganze aber schon... DGL-Header für C. ^^

_________________
"Für kein Tier wird so viel gearbeitet wie für die Katz'."
Aktuelle Projekte: www.swiftsteel.org + JSixAxis


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: Mo Jul 18, 2005 15:31 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 14, 2004 18:56
Beiträge: 804
Wohnort: GER/OBB/TÖL-WOR/Greiling
tja, das ist wohl porting in seiner reinsten form, wenn auch einer unerwarteten! :mrgreen:
von c nach delphi nach c...

ich frag mich, wann die ersten in der c-welt ausgelacht werden, weil sie einen delphi-header verwenden. und vor allem wann die ersten ausgelacht werden, weil sie die standard-header verwenden! :twisted:

_________________
Bild

"User Error. Replace User and hit Continue."


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: Mo Jul 18, 2005 17:36 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 02, 2003 12:47
Beiträge: 300
Wohnort: Marburg
Naja, wenn nun ein DGLer in C rumprobieren will, ist der Header doch echt super oder? (Hatte ich irgendwann mal vor gehabt)

_________________
Nothing, oh sweet nothing,
today we are doing nothing at all...
http://www.geo-progs.de


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: Mo Jul 18, 2005 18:15 
Offline
Forenkatze
Benutzeravatar

Registriert: Mi Okt 22, 2003 18:30
Beiträge: 1851
Wohnort: Närnberch
Programmiersprache: Scala, Java, C*
Irgendwie scheint der Schuss mit dem DGL-Header nach hinten los zu gehen... 8)

_________________
"Für kein Tier wird so viel gearbeitet wie für die Katz'."
Aktuelle Projekte: www.swiftsteel.org + JSixAxis


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: Mo Jul 18, 2005 18:38 
Offline
DGL Member

Registriert: Do Apr 08, 2004 16:55
Beiträge: 516
Wieso nicht in C#? :(

_________________
Shareholder und Leitender Entwickler bei Pipedream-Games.

Zitat: Siehst du diesen Park da unten? Jeden Tag lernen sich darin Menschen kennen und verlassen einander. Und du hast dein ganzes Leben Zeit darin zu gehen.


Nach oben
 Profil  
 
 Betreff des Beitrags:
BeitragVerfasst: Di Jul 19, 2005 06:58 
Offline
Forenkatze
Benutzeravatar

Registriert: Mi Okt 22, 2003 18:30
Beiträge: 1851
Wohnort: Närnberch
Programmiersprache: Scala, Java, C*
@sniper_w: Zwecks Fehler im Header:
Fehler #1 ist ganz klar, dass der Header nur unter Win32 funktioniert. Damit hast du nämlich schonmal einen der Vorteile vom DGL-Header und von OpenGL zunichte gemacht, nämlich die Verfügbarkeit auf anderen Systemen.
Fehler #2: Du verwendest C, C++??? Bist du des Wahnsinns? :mrgreen:

Nachtrag zu Fehler #2: Wenn es wenigstens C# wäre, dann wär das ja nicht so schlimm. Aber C / C++... in einem Delphi-Forum.... ;)

Fehler #3: Die Namensänderung der wgl-Routinen.

_________________
"Für kein Tier wird so viel gearbeitet wie für die Katz'."
Aktuelle Projekte: www.swiftsteel.org + JSixAxis


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 11 Beiträge ] 
Foren-Übersicht » Sonstiges » Community-Projekte


Wer ist online?

Mitglieder in diesem Forum: Yahoo [Bot] und 0 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