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.
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.
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.
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
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
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
Mitglieder in diesem Forum: 0 Mitglieder und 4 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.