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

Aktuelle Zeit: Fr Jul 18, 2025 04:16

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



Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Polygon Bluren
BeitragVerfasst: Do Jun 30, 2005 14:49 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
Tach,

ich suche ne möglichkeit nen Polygon nen Unschärfe effekt für die Render hinzubasteln.
So änhlich wie nen Radialblur, also nicht in einem Objekt sondern um ein Objekt herum.

Habe mir schon etliche demos und techniken angeguckt und wollte jetzt nochmal hier nachfragen ob wer sowas schon gemacht hat und mir helfen kann.

Wichtig ist, ich will das Immer nur für Bestimmte Polygone haben, welche Texturiert sind !

Ich will das ganze wenn möglich über GLSL Shader machen.

Da ich keine ahnung habe, wie das ganze dann mit den "RenderToTexture" techniken funzt brauch ich in der hinsicht auch hilfe. Würde da nen PBuffer gehen oder sowas ?

Ich hab hier ne GF 6800 GT zur verfügung, also hab ich freien lauf ;)
Es muss nicht auf ner GF FX oder niedriger laufen, 6800 ist sowieso verrausetzung da diese NonPowerOfTextures in Hardware hat !

Hier ist mal mein versuch von mir, hab den Blur GLSL Shader von Delphi3d benutzt.
Das aktuelle teil mit HDR, machen tut er was... aber allerdings verwischt er nur die texturen.

http://xenorate.com/final/blur_glsl_test.zip


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Jun 30, 2005 15:30 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Polygone filtern: Also wenn es das ist was wir schon mal in nem anderen Thread hatten, dann sage ich dazu mal nichts weiter. Meine Meinung zu den Spatzen und den Megakanonen hatte ich ja schon mal gesagt. Und ich finde Kanonen im Vorgarten wesentlich hässlicher als Spatzen. ;-)

PixelBuffer: Schau mal hier. Wir haben nen Tutorial über PixelBuffer.

RenderToTexture: Sachsa hat auf seiner Seite ein kleines Demo dazu. befindet sich sich unter OpenGL ganz unten.

Ansonsten hast du noch ein paar Möglichkeiten. Je nachdem wie weit du haben willst würde evtl. auch schon Antialising ausreichen. Das kannst du bei Bedarf dann aktivieren oder desktivieren. Zum thema Antialising gibt es bei humus eine Demo die Multisampling und Supersampling demonstriert. 66x AA

Und mal wieder eine ganz altmodische und langweile Alternative. Nen ganz popeliger kleiner Alphakanal den du mittels Blending in ein "filtern" des Polygons umwandelst. Wenn du magst kannst das berechnen der Resultierenden Farbe ja mit nem Shader machen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Jun 30, 2005 16:48 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Dez 28, 2002 11:13
Beiträge: 2244
Anstelle der PBuffer gibt's ja mittlerweile auch die schnelleren Framebuffer Objekte.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Jun 30, 2005 23:12 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
LarsMiddendorf hat geschrieben:
Anstelle der PBuffer gibt's ja mittlerweile auch die schnelleren Framebuffer Objekte.


Ja hab ich gesehen, die HDR demo von Delphi3d benutzt das.
Allerdings sagt er "Framebuffer not supported" bei der demo im geschäft mit der GF 6800 GT und aktuellsten NV Treiber :(

Bei mir hier gehts au net... hab recht aktuellen NV treiber und au ne GF 6800 und er sagt ich hätte kein GL_EXT_Framebuffer.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 01, 2005 10:27 
Offline
DGL Member

Registriert: Mi Okt 16, 2002 15:06
Beiträge: 1012
So hab jetzt mal bissel mit dem Accumulation Buffer rumgespielt.
Ich kriegs aber ums verrekcen nicht hin, das nur bestimmte Polygone davon betroffen sind :(

Es geht immer nur die ganze scene, da ja glClearColor(GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT) pro Accumulation Pass gemacht wird und somit der vorherige Inhalt gekillt wird.

Hier ist mein versuch:

Taste Q/W = BlurCount -/+
Taste A = Acculation AntiAliasing an/aus
Taste S = GLSL Shader an/aus

http://xenorate.com/final/blurtest_glsl.zip

Wie lös ich das am besten ?

Ich zeichne zu erst die Polys ohne Unschärfe
Dann kommen die Polys mit Unschärfe
und dann kommen noch Bitmap Font Texte dazu.

Das beste wäre wenn ich wüsste wie ich sachen aus dem Front buffer hinzufügen könnte.

Betreffend poppliger Alphakanal:

Kann ich nicht nehmen, da wir den Unschärfe Effekt via Parameter beeinflussen müssen !
Und man kann ja nicht den Alpha verlauf, RGB zur laufzeit ändern... :p


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jul 01, 2005 17:58 
Offline
Guitar Hero
Benutzeravatar

Registriert: Do Sep 25, 2003 15:56
Beiträge: 7810
Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Doch. Indem du den Alphakanal als automatisch generiertes Bitmap erstellst und dann im Loader hinzufügst. Bei glBitmap gehts irgendwie mit AddAlphaFromFile(?).

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


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 6 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.009s | 14 Queries | GZIP : On ]