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

Aktuelle Zeit: So Jul 06, 2025 02:23

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



Ein neues Thema erstellen Auf das Thema antworten  [ 19 Beiträge ]  Gehe zu Seite 1, 2  Nächste
Autor Nachricht
 Betreff des Beitrags: blending in Form und in Fullscreen
BeitragVerfasst: Sa Jan 04, 2003 21:53 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Jan 04, 2003 21:23
Beiträge: 674
Wohnort: Köln
Hallo erstmal!

Ich habe ein Problem und zwar wenn ich mein Projekt als Form ausführe, dann sieht alles ganz "normal" aus bzw. so wie ich es will. Wenn ich allerdings im Fullscreen starte bzw. dahinein wechsle, dann sieht alles (das Blending) komplett anders aus.
ich benutze:
Code:
  1.  
  2.  
  3. glenable(glblend);
  4.  
  5. glblendfunc(gl_one_minus_src_alpha,gl_one_minus_dst_alpha);
  6.  
  7. gldisable(gldepthtest);
  8.  
  9.  


Woran liegt das/könnte es liegen und wie kann ich es verhindern??
:roll:
Danke

Fiji-Fighter

_________________
. . .


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Jan 04, 2003 22:33 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Mit dieser Fehlerbeschreibung kann man leider herzlich wenig anfangen.Der Codeschnippsel den du gepostet hast, enthält keine Fehler, und im Normalfall sollte es keinen Unterschied machen, ob dein Programm im Fenster oder im Vollbildmodus läuft.

Allerdings kann es sein das du bei deiner Initialisierung oder an einer anderen Stelle einen Fehler machst, der dann "zufällig" zu einem Darstellungsfehler im Vollbildmodus führt.

Deshalb wäre es am besten, wenn du einen Screenshot vom Fenstermodus und einen vom Vollbildmodus deines Programmes posten würdest.
Ausserdem wäre es auch nicht schlecht, wenn du dein Programm irgendwo hochladen könntest (z.B. hier auf dem DGL-FTP).

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Screenshots
BeitragVerfasst: Sa Jan 04, 2003 23:44 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Jan 04, 2003 21:23
Beiträge: 674
Wohnort: Köln
Bei mir machts einen Unterschied ob es im Vollbildmodus läuft oder nicht...*heul*

So siehts normal im Fenster aus:
Bild
und so im Vollbildmodus
Bild
besonders fällt mir auf, dass der Schatten des Steins und der Boden im Vollbildmodus völlig undurchsichtig sind. :(


Wenn das nichts hilft, dann kann ich den Code ja mal hochladen, aber ob da irgendwer was drin findet???
müsste ich dann erstmal in mehrere units aufteilen, damits nicht so unübersichtlich ist...

Fiji-Fighter

_________________
. . .


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jan 05, 2003 00:37 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Mai 06, 2002 20:27
Beiträge: 479
Wohnort: Bremen
beim wechsel in den fullscreen-modus geht evtl. der Rendering-Context verloren und damit auch die Blending Settings. Versuch doch testweise einfach mal die Blending-Settings jedesmal vor dem Zeichnen neu zu setzten...

(oha.... was für ein schuss ins blaue... ich sollte besser gar nicht auf 'absenden klicken ;) )

_________________
Selber Denken macht klug!


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jan 05, 2003 00:57 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Jan 04, 2003 21:23
Beiträge: 674
Wohnort: Köln
Hab ich eh schon gemacht.

So meintest Du es doch oder?? :roll:

Code:
  1.  
  2.  
  3. procedure TDemoForm.ApplicationEventsIdle(Sender: TObject;
  4.  
  5.   var Done: Boolean);
  6.  
  7. begin
  8.  
  9. glenable(gl_blend);
  10.  
  11.     glblendfunc(gl_one_minus_src_alpha,gl_one_minus_dst_alpha);
  12.  
  13.     gldisable(gl_depth_test);
  14.  
  15.  
  16.  
  17.   glbegin(gl_quads);
  18.  
  19.  
  20.  
  21.         glcolor4f(1,0,0,0.7);
  22.  
  23.           glvertex3f(-1,-1,0);
  24.  
  25.           glvertex3f(-0.9,-1,0);
  26.  
  27.           glvertex3f(-0.9,1,0);
  28.  
  29.           glvertex3f(-1,1,0);
  30.  
  31.  
  32.  
  33.  (weitere Sachen rendern)
  34.  
  35. glend;
  36.  
  37. end;
  38.  
  39.  


Vielleicht sollte ich den Code doch mal hochladen...

Fiji-Fighter

_________________
. . .


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: quelltext
BeitragVerfasst: So Jan 05, 2003 13:55 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Jan 04, 2003 21:23
Beiträge: 674
Wohnort: Köln
So ich habe mal den Quelltext <a href='http://daf4f.de/user/fiji/tetris2.zip' target='_blank'>hier </a> upgeloadet.

die exe datei kann man <a href='http://daf4f.de/user/fiji/tetris1.zip' target='_blank'>hier </a>
runterladen.

hoffe irgendwer findet was raus... :cry:

Fiji-Fighter

_________________
. . .


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jan 05, 2003 17:00 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Sehr eigenartig...bei deinem kompiliertem Programm funktioniert das Blending bei mir (GF4-Ti4400, Deto41.03) weder im Fenster noch im Vollbild-Modus.

Deinen Quellcode schau ich mir grade an, aber mir fehlt die Datei template_Fullscreen.Ohne die kann ich das ganze ja schlecht Testen...wäre also toll, wenn du die auch noch irgendwo hochladen könntest.

BTW : Beim Blending muß man darauf achten, in welcher Reihenfolge die Objekte gezeichnet werden!
Blending arbeitet nämlich per Pixel und nicht Perfragment.D.h., das wenn Objekt A und Objekt B transparent sind, und Objekt B hinter Objekt A liegt, du aber zuerst Objekt A zeichnest und dann Objekt B, dein Objekt B nicht durch dein Objekt A sichtbar ist!

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jan 05, 2003 17:18 
so unter http://daf4f.de/user/fiji/t_fullscreen.zip kannste das "update" downloaden (template_fullscreen.pas+dcu) die andere downloaddatei habe ich auch erneuert...

ich hab ne GF4-MX460 und den Detonator ??? (wie schau ich das nach???)

bei mir funktioniert das blending im Fenster und Fullscreenmodus nur halt im Fullscreen nicht so wie ich es will...

Fiji-Fighter


Nach oben
  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jan 05, 2003 17:21 
Offline
DGL Member

Registriert: Do Mai 30, 2002 18:48
Beiträge: 1617
(schaltest du im fullscreen vielleicht in die falsche farbtiefe?)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jan 05, 2003 17:27 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
SIeht so aus, als hätte ich den Fehler lokalisiert.Es scheint deine (leicht eigenartige) BlendFunktion zu sein, aufgrund derer den Blending nicht funzt.
Die Tatsache das das Blending bei dir im Fenster "geht" ist wohl eher Zufall, oder Eigenart eines ganz bestimmten Treiberreleases.

Ändere deine Blendingfunktion also mal in folgende :
Code:
  1.  
  2.  
  3. glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
  4.  
  5.  

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: DAAANKE!
BeitragVerfasst: So Jan 05, 2003 17:28 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Jan 04, 2003 21:23
Beiträge: 674
Wohnort: Köln
Goil! es hat geklappt!
hab auf 16bit umgestellt und es jetzt auf 32bit geändert jetzt läuft es wie es soll...
:D :D :D
Danke an alle für die Bemühungen...

Fiji-Fighter

_________________
. . .


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jan 05, 2003 17:34 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Jan 04, 2003 21:23
Beiträge: 674
Wohnort: Köln
bei mir funktioniert es jetzt in beiden Modi!

und die blending Funktion ist doch eigentlich nicht verboten (-->redbook)!
ich habe sie durch herumprobieren herausbekommen *ggg* und es sah am besten aus.

wie gesagt nochmal DANKE! :D

Fiji-Fighter

P.S. @SOS funktioniert bei Dir das Blending mit der geänderten Farbtiefe?? Außerdem ist mir aufgefallen, dass ich im template_fullscreen die Größe falsch geändert habe.

habe jetzt alles korrigiert upgeloadet...

_________________
. . .


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jan 05, 2003 18:01 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Zitat:
und die blending Funktion ist doch eigentlich nicht verboten (-->redbook)!

Hab ich auch net behauptet, aber es gibt Grafikkarten die deine Blendingfunktionen nicht anbieten!

Zitat:
P.S. @SOS funktioniert bei Dir das Blending mit der geänderten Farbtiefe?? Außerdem ist mir aufgefallen, dass ich im template_fullscreen die Größe falsch geändert habe.

Hab dein "korrigiertes" Programm heruntergeladen, und dein Blending funzt immernoch weder im Fenster noch unter Vollbild.(Mein Desktop läuft mit 32Bit)

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jan 06, 2003 17:35 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Jan 04, 2003 21:23
Beiträge: 674
Wohnort: Köln
Also bei nem Freund von mir da klappt das blending so wie es auf dem "richtigen" Screenshot aussieht...
können noch mal ein paar mehr Leutz sagen ob <a href='http://daf4f.de/user/fiji/tetris1.zip' target='_blank'> das hier</a> bei ihnen klappt??

Danke

Fiji-Fighter

_________________
. . .


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Jan 06, 2003 17:46 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Ich bin mir immernoch sicher, das etwas mit deinem Blending nicht stimmt...hier mal ein Screenshot deiner Anwendung so wie sie bei mir aussieht (im Vollbild siehts genauso aus), mit dem von mir verwendeten Blendingmodus funzts :
Bild

Die Tatsache das das Ganze bei dir klappt, ist eher ne Eigenart deiner Graka/Treiberkombo oder gar Zufall!

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 19 Beiträge ]  Gehe zu Seite 1, 2  Nächste
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.013s | 14 Queries | GZIP : On ]