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

Aktuelle Zeit: Di Jul 15, 2025 20:24

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



Ein neues Thema erstellen Auf das Thema antworten  [ 10 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Problem beim Compilieren
BeitragVerfasst: Mo Feb 21, 2005 16:22 
Offline
DGL Member

Registriert: Di Jan 25, 2005 15:38
Beiträge: 13
Tach,

ich benutzte das NonVCL Template dieser Seite und bekomme beim Compilieren immer den Fehler auf dem Bild im Attachment. Was kann man dagegen machen? Der Header ist der neuste von dieser Seite hier.

Vielen Dank.


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Feb 21, 2005 16:31 
Offline
DGL Member

Registriert: Mi Dez 15, 2004 20:36
Beiträge: 454
Wohnort: Wien, Österreich
Es sieht nicht so aus als wäre die Meldung von Compiler sonder eine Laufzeitfehler. Meiner Meinung nach , es handelt sich um etwas, was hier schon so oftmals erwähnt würde. Die Funktion CreateWindowEx (oder CreateWindow), bevor sie zurückkommt, sendet eine WM_SIZE (oder WM_SIZING) Nachricht an das Fenster. In dem Augenblich gibt es nocht kein RC (function CreateRenderingContext) oder gar DC (GetDC) und auch OpenGL "function pointers"-(alle glXX Befehle) sind alle auf nil gestezt. Und wenn du sie zum ersten Mal in WM_SIZE(oder WM_SIZING) z.B. via glResize(width,height) zu aufrufen versuchst, dann ist es eine AccessV.

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


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Feb 21, 2005 21:36 
Offline
DGL Member

Registriert: Di Jan 25, 2005 15:38
Beiträge: 13
Ok, ich schau mir das template dann mal an. Ist dann wohl falsch, sollte man vielleicht auch einmal ändern, den veraltete Sachen auf der Hp machen sich nicht so gut;-)

MFG


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Feb 22, 2005 00:19 
Offline
Fels i.d. Brandung
Benutzeravatar

Registriert: Sa Mai 04, 2002 19:48
Beiträge: 3830
Wohnort: Tespe (nahe Hamburg)
Also sowohl die Interpretation des einen, noch die Aussage des anderen kann ich wirklich ohne ein lächeln im Gesicht über mich ergehen lassen. Den ich halte es für einen klassiven Fall von: Wer lesen kann, ist im Vorteil und empfehle entweder den Beipackzettel des Headers zu lesen oder zumindest unser FAQ:

http://wiki.delphigl.com/index.php/FAQ
F : Ich habe früher den mit Delphi gelieferten OpenGL-Header (OpenGL.pas) benutzt, und bin auf euren Header umgestiegen. Die Programme lassen sich dann zwar ohne Änderungen kompilieren, aber beim Start erhalte ich eine Zugriffsverletzung an Adresse 0.
A : Um unseren Header flexibler zu machen, haben wir in Sachen Initialisierung etwas geändert. Vor dem Aufruf (am besten direkt nach Programmstart) des ersten GL-Befehles, muss erstmal InitOpenGL() aufgerufen werden, so dass die OpenGL-Funktionszeiger zugewiesen werden. Desweiteren sollte darauf geachtet werden, dass vor dem Aufruf eines glBefehls der Context aktiviert wird. Danach kann ganz normal weitergearbeitet werden. Diese Änderung wurde deshalb getätigt, weil wir mit unserem Header auch das dynamische Laden anderer OpenGL-Implementationen (z.B. MESA) ermöglichen wollten.

Des Weiteren verweise ich darauf, dass dies ein kostenfreier Service ist, der in der Freizeit gemacht wird und keineswegs Anspruche an sich stellt ein Out-Of-The-Box zu sein. Deswegen reicht es eben nicht immer für ein OpenGL1.2-Template einfach zwei Units auszutauschen ;)

_________________
"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: Di Feb 22, 2005 16:44 
Offline
DGL Member

Registriert: Di Jan 25, 2005 15:38
Beiträge: 13
Ich wollte damit eure Arbeit nicht kritisieren. Ich find es echt Klasse, was ihr hier macht und bin euch dankbar, den ich will auch OpenGL lernen und das wird mit euren Tutorilas sicher einfacher funktionieren. Allerdings bin ich halt noch am lernen und weiß recht wenig über OpenGL, daher auch nicht viel über dessen Initialisierung. Ich hatte bisher noch nicht in die Wiki geschaut, da ich noch in den Anfänger Tuts stecke, aber ich werd es nun häufiger tuhen.

Vielen Dank!


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Feb 22, 2005 23:04 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Keine Angst. Phob klang strenger als es gemeint war. (Der hat sowas drauf ;) )
Solange du nicht größenwahnsinnig oder egozentrisch hier auftrittst ham dich alle lieb. :lol:

Aber eins is noch Wichtig. Es ist das Wiki, nicht die. 8)

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


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Feb 23, 2005 13:56 
Offline
DGL Member

Registriert: Mi Dez 15, 2004 20:36
Beiträge: 454
Wohnort: Wien, Österreich
Zitat:
Aber eins is noch Wichtig. Es ist das Wiki, nicht die. Cool

Hat das etwas mit der Orthographie zu tun? :wink:

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


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Feb 24, 2005 10:37 
Offline
DGL Member

Registriert: Di Jan 25, 2005 15:38
Beiträge: 13
Das Wiki klingt aber komisch^^

Naja, das der Befehl InitOpenGL() am anfang aufgerufen wird, ist ja nicht so schwer zu machen, aber das mit dem COntext aktivieren versteh ich irgendwie nicht. Wie kann man den den Context aktiverien? Und welchen Context?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Feb 24, 2005 10:59 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Nun wahrscheinlich den RC: mittels Activate RenderingContex.

Hier mal ein ausszug aus meinem Template:
Code:
  1. procedure TForm1.FormCreate(Sender: TObject);
  2. begin
  3.   DC:= GetDC(Handle);
  4.   Application.OnIdle:= IdleHandler;
  5.  
  6.   if not InitOpenGL then Application.Terminate;
  7.  
  8.   RC:= CreateRenderingContext( DC,
  9.                                [opDoubleBuffered],
  10.                                32,
  11.                                24,
  12.                                0,0,0,
  13.                                0);
  14.   ActivateRenderingContext(DC, RC);
  15.  
  16.   SetupGL;
  17. end;
  18.  
  19. procedure TForm1.SetupGL;
  20. begin
  21.   glClearColor(0.3, 0.4, 0.7, 0.0); //Hintergrundfarbe
  22.   glEnable(GL_DEPTH_TEST);          //Tiefenpuffer aktivieren
  23.   glEnable(GL_CULL_FACE);           //Backface Culling aktivieren
  24. end;


Damit sollte es gehn.

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


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Feb 24, 2005 12:36 
Offline
DGL Member

Registriert: Di Jan 25, 2005 15:38
Beiträge: 13
Thx, ich hab das zwar ohne VCL gemacht, war aber trozdem ne Hilfe, jetzt geht es. Vielen Dank!

MFG


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


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:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 14 Queries | GZIP : On ]