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

Aktuelle Zeit: Mo Jul 07, 2025 19:15

Foren-Übersicht » Programmierung » Einsteiger-Fragen
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 5 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Blur in 2D
BeitragVerfasst: So Aug 12, 2007 16:25 
Offline
DGL Member
Benutzeravatar

Registriert: Do Jul 20, 2006 17:34
Beiträge: 52
Hallo zusammen!

Ich schreib grad ein Programm, was komplett in 2D läuft. Ein bestimmter Bereich soll jetzt unscharf gemacht werden.
Momentan benutz ich dafür nen Gaussian-Blur-Shader, wobei es da mit der Performance (von 1500 Frames auf 30) nich so toll is.

Wegen der Performance und weils mit der Kompatiblität auch nicht so super ist, such ich jetzt nach ner Alternative.
Ich hab schon versucht, einfach mehrere Quadrate immer um einen Pixel verschoben zu zeichnen (und dabei übereinanderzublenden), aber das Resultat sah einfach doof aus.

Was gibt's noch an halbwegs schönen und schnellen Alternativen?

mfg Wilson

_________________
2+2=5
For extremely large values of two


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Aug 12, 2007 16:57 
Offline
DGL Member

Registriert: Sa Okt 22, 2005 20:24
Beiträge: 291
Wohnort: Frauenfeld/CH
Erst horizontal und dann vertikal blurren! das heisst bei einem Radius von 5 Pixeln musst du dann pro Pixel nicht 100 Pixel verrechnen, sondern nur 20. das heisst du hast 2*(2n) anstatt (2n)^2 Pixel, die du bearbeiten musst. So kriegst du die Potenz raus und das ganze wird viel schneller.

hier ein Paper dazu, dass aber eigentlich für den Glow ist, aber darin wird halt das blurren auch angesprochen.

http://www.gamasutra.com/features/20040 ... es_pfv.htm

_________________
bester uo-shard: www.uosigena.de


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Aug 12, 2007 17:14 
Offline
DGL Member
Benutzeravatar

Registriert: Do Sep 02, 2004 19:42
Beiträge: 4158
Programmiersprache: FreePascal, C++
Vielleicht auch nicht schlecht:
Anstatt das Gaussian-Blur über nen Shader zu machen, machst du im prinzip das mit den Quadraten nur dass du bei den Quadraten als Alpha-Wert den des Gauss-Wertes nimmst (ich hoffe, das war jetzt klar...)
Das Ergebnis kann sich sehen lassen und es zieht weit weniger Performance.

Gruß Lord Horazont

_________________
If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung.
current projects: ManiacLab; aioxmpp
zombofant networkmy photostream
„Writing code is like writing poetry“ - source unknown


„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: So Aug 12, 2007 21:16 
Offline
DGL Member
Benutzeravatar

Registriert: Do Jul 20, 2006 17:34
Beiträge: 52
Super, die Kombination aus beiden Vorschlägen läuft jetzt mit ~150 fps und der Unterschied zum Shader ist fast nicht zu sehen (vor allem nicht, wenn dann noch ein halbtransparentes Objekt drüber liegt).

_________________
2+2=5
For extremely large values of two


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Aug 18, 2007 16:00 
Offline
DGL Member

Registriert: Di Dez 12, 2006 21:37
Beiträge: 30
Screens + code!!!!
bin nämlich auch dran interessiert


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 » Einsteiger-Fragen


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.007s | 16 Queries | GZIP : On ]