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

Aktuelle Zeit: Fr Jul 18, 2025 07:30

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



Ein neues Thema erstellen Auf das Thema antworten  [ 5 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Di Aug 04, 2009 20:55 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Apr 04, 2008 17:24
Beiträge: 30
Hallo!

Ich hab seit einiger zeit meine Delphi-version geändert und verwende jetzt Delphi 2009. Dabei habe ich allerdings das Problem, dass das Multitexturing nicht funktioniert. Ich habe ständig eine AccessViolation wenn der Befehl
Code:
  1.  
  2. glActiveTexture(GL_TEXTURE0);
  3.  

oder
Code:
  1.  
  2. glActiveTextureARB(GL_TEXTURE0_ARB);
  3.  

aufgerufen wird. Ich kann ja auf Multitexturing verzichten, nur finde ich es blöd, dass dann Performance darunter leidet ...

Könnt ihr mir helfen?
Schöne Grüße,
KSM


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Aug 05, 2009 09:30 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 29, 2005 12:28
Beiträge: 2249
Wohnort: Düsseldorf
Programmiersprache: C++, C#, Java
Versuch mal ein glEnable(GL_TEXTURE_2D) davor zu packen. Sofern du kein Multitexturing verwendest, kannst du das glActiveTexture auch einfach weglassen. Texturstage 0 ist standardmäßig aktiv.

_________________
Yeah! :mrgreen:


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Aug 05, 2009 10:32 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Ist das rein zufällig eine AcvessViolation an der Adresse $00000000? Wenn ja, dann würde mich mal interessieren ob die nur in Delphi 2009 kommt oder auch vorher. Wenn die immer kommt, dann kann es sein, dass entweder deine Grafikkarte/Treiber kein Multitextexturing unterstützt oder aber, dass der OpenGL Header nicht richtig initialisiert wurde. Also das entsprechend nicht alle Funktionspointer vernünftig geladen wurde.

PS: Die dglOpenGL ist nicht richtig Delphi 2009 kompatibel. Es könnte also auch gut sein, dass es damit Probleme gibt. Was mitunter nicht auszuschließen ist. Im Zweifel schau dir mal folgenden Beitrag von Noeska an. Als Hotfix sollte das genügen. Allerdings als entgültige Lösung gefällt es mir nicht genug.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Aug 05, 2009 14:01 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Apr 04, 2008 17:24
Beiträge: 30
Ja, es liegt auf jeden Fall an Delphi 2009, unter 2007 hatte ich diese Probleme nicht und die Adresse ist auch 00000000.
Ich schaue mir mal den Link an!

Vielen Dank für die Hilfe! :)

Anmeerkung: Der Link funktioniert! Das Multitexturing klappt jetzt endlich wieder :D

Danke schön :)

_________________
Besucht doch mal meine Webseiten xeonlab.com und phoenixsystems.de!


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Aug 05, 2009 14:24 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Dann liegt es daran, dass die Methodennamen konstante Strings sind. In Delphi 2009 sind Strings ja WideStrings. Die Methoden zum Auslesen erwartet aber AnsiStrings. Durch die Übergabe als Pointer wird aber ein WideString übergeben. Entsprechend findet er die Methoden nicht und liefert auch keine Adresse zurück. Ergo sind alle Pointer nil und erzeugen beim Aufruf Fehler. Also zur Erklärung was da genau passiert.


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


Wer ist online?

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