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

Aktuelle Zeit: Fr Jul 18, 2025 03:33

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



Ein neues Thema erstellen Auf das Thema antworten  [ 38 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3  Nächste
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 25, 2003 19:58 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
Hab das mit dme AlphaKanal grad mal getestet, schein zu funktionieren :)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 25, 2003 19:59 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Öhm...angemeckert :unsure: ??Ich hab mal im Bezug auf Alpha-Masking erwähnt, das man einen Farbwert mittels Alphakanal nur sichtbar ODER unsichtbar machen kann und der Wert im Alphakanal nur als Referenzwert genutzt wird.Das war aber wie gesagt beim Alphamasking, und ich hab gesagt das man mittels Alphamasking nicht die Funktionalität von Blending ersetzen kann...

Beim Blending kann man (wie du ja grade rausgefunden hast) serwohl mittels Alphakanal die Transparenzstärke festlegen.

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


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 25, 2003 20:09 
Offline
DGL Member

Registriert: Sa Sep 21, 2002 21:32
Beiträge: 346
Wohnort: Eilsum (Nahe Emden)
Also ich würde es wahrscheinlich auch über einen Textur-Trick machen:

1) Man zeichne den Effekt ohne Blending mit einem schwarzem Hintergrund in eine Textur (Render to Texture)
2) Man zeichnet die normale Szene
3) Man zeichnet ein Quad mit der Effekt-Tex drauf in die Gegend (Blendet es natürlich)


Ich glaube das war es auch, was die anderen oben meinsten... oder? *unsicher guck*

_________________
Es sind immer die guten,
welche zu früh von uns gehen müssen...

Meine bislang 13 Open Gl - Tuts findet ihr auf www.dcw-group.net
Neu! Ein großer Teil der Demos nach Kylix übersetzt!


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 25, 2003 20:16 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
Hab's nu schon mit dem AlphaKanal gelöst bekommen :)
Klappte wunderbar :P

EDIT: Kann ich das jetzt noch irgendwie mit Additivem Blending verbinden?? :unsure:


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 25, 2003 20:30 
Offline
DGL Member
Benutzeravatar

Registriert: Di Jun 24, 2003 19:09
Beiträge: 732
Aya hat geschrieben:
Hab das mit dme AlphaKanal grad mal getestet, schein zu funktionieren :)

kannst du mal bitte genau erklären wie du das mit dem AlphaKanal gemacht hast? Ich hab genau das gleiche Problem habs aber mit den AlphaKanal nicht hinbekommen. (Es funktioniert, sieht aber nicht mal ansatzweise so gut aus...)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 25, 2003 20:32 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
Wie schaut es denn bei dir jetzt aus??? Mach mal nen Screenshot und poste den :)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 25, 2003 20:48 
Offline
DGL Member
Benutzeravatar

Registriert: Di Jun 24, 2003 19:09
Beiträge: 732
Ich habe das Problem das ich immer extrem eckige Partikel habe. Ich habe halt die komplett Partikel Engine Programmiert und dabei immer nen schwarzen Hintergrund gehabt. Die ganze Engine ist voll darauf ausgelegt. Wenn ich es nun mit AlphaKanal und noch normalem Blending versuche dann sieht das ganze recht, naja... scheiße aus ;)
Eine Demo wie es mit schwarzen Hintergrund aussieht gibts auf meiner HP (<a href='http://www.billiberserker.host.sk/core.php?Sektion=Projekte&Show=OpenGL-Partikel%20Engine%20-%20Demo' target='_blank'>Partikel Engine Demo</a>). Einen Screenshot wie es jetzt aussieht poste ich nachher...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 25, 2003 21:11 
Offline
DGL Member
Benutzeravatar

Registriert: Di Jun 24, 2003 19:09
Beiträge: 732
Bild
Bild
Ich hatte es schon mal noch besser hin bekommen, hatte jetzt aber keine Zeit das wieder alles halb umzucoden. Es hat auf jedenfall nicht mal ansatzweise die Qulität wie vorher :(

Ich glaube ich sollte es wirklich mal mit dem Textur Rendern versuchen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 25, 2003 21:47 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
Das sieht nach dem selben problem aus, welches ich auch grad noch habe.. *g*
Das AdditiveBlending fehlt halt wenn man es über den AlphaKanal macht... :(


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Jul 26, 2003 10:34 
Offline
DGL Member
Benutzeravatar

Registriert: Di Jun 24, 2003 19:09
Beiträge: 732
jo,
mein Problem ist dazu auch noch das meine Partikel Engine schon recht weit fortgeschritten ist und halt alles auf einander abgestimmt ist. Ich müßte fast alles komplett überarbeiten um es mit AlphaBlending ähnlich gut aussehen zu lassen...

wie macht man das genau mit den RenderToTexture? (habs noch nie benutzt)
braucht das irgendwie mehr viel mehr Rechenleistung?
Wie macht es am besten, rendert man den Partikel Effekt in voller größe auf die Textur und verkleinert die Textur dann, oder rendert man den Effekt schon passend zur Ansicht verkleinert?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Jul 26, 2003 10:59 
Offline
DGL Member

Registriert: Sa Sep 21, 2002 21:32
Beiträge: 346
Wohnort: Eilsum (Nahe Emden)
Also wie Render2Texture funzt, kann man ja im DGl-Tut dazu nachlesen (Tutorials --> OpenGL-Einführung --> Renderpass)

Viel mehr leistung dürfte das kaum schlucken.... halt etwa die Leistung, die ein Quad mit einer Textur druf schluckt :-)

Evtl. ist es sogar sparender, da man ja das ganze ja mit einer kleineren Auflösung (der Auflösung der Textur --> Antowrt auf Frage 2) rendert......

_________________
Es sind immer die guten,
welche zu früh von uns gehen müssen...

Meine bislang 13 Open Gl - Tuts findet ihr auf www.dcw-group.net
Neu! Ein großer Teil der Demos nach Kylix übersetzt!


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Jul 26, 2003 21:38 
Offline
DGL Member
Benutzeravatar

Registriert: Di Jun 24, 2003 19:09
Beiträge: 732
das eigentliche RenderToTexture funzt erstmal,
aber - wie bekomme ich nun den schwarzen bereich weg?
AlphaBlending funktioniert ja nicht da ich sonst jedesmal noch ne Alpha Textur generieren müßte...
Gibt es für glBlendFunct eine Parameter Kombination so das alles schwarze weg genommen wird und sich der rest nicht mit irgendwas addiert/subtrahiert/etc. ... ?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Jul 26, 2003 21:54 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Wieso erstellst du denn nicht einfach den Alphakanal für deine Textur wenn du schon gerade dabei bist dein Partikelsystem in eine Textur zu rendern?Besonders schwierig ist das ja nicht, da du doch direkt Alphawerte in den Framebuffer (der dann ja in die Textur kopiert wird) schreiben kannst.Du musst nur drauf achten, das du diese beim Kopieren des Framebufferinhaltes auch mit in die Textur übernimmst (GL_RGBA statt GL_RGB).

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


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 27, 2003 09:39 
Offline
DGL Member
Benutzeravatar

Registriert: Di Jun 24, 2003 19:09
Beiträge: 732
oh, na wenn es mehr nicht ist :D
ich dachte ich muß noch irgendwie bei jedem durchgang extra ne neue AlphaTextur erstellen :rolleyes:
werds gleich mal testen...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Jul 27, 2003 12:18 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Dez 28, 2002 11:13
Beiträge: 2244
Warum überhaupt Render-to-Texture?
Wenn man anhand der Stärke des Alphakanals addieren will, dann kann man doch auch glblendfunc(gl_src_alpha,gl_one) benutzen.

Bei Quake3 gibt es das Bild smoke.tga. Das wird für den Rauch der Raketen verwendet und ist ganz weiß. Nur im Alphakanal sind unterschiedliche Werte für den Rauch. Das ganze wird mit glblendfunc(gl_src_alpha, gl_one_minus_src_alpha) geblendet. Da das Bild weiß ist, bleibt die Farbe der Partikel von glcolor erhalten.


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 38 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3  Nächste
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:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 15 Queries | GZIP : On ]