Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 12-01-2010, 09:41   #1 (permalink)
Neuer User
 
Registriert seit: Jan 2010
Beiträge: 46
Movieclip (nur rote Farbtöne umfärben) per AS3

Hallo,
ich bin Anfänger und möchte von Euch gerne wissen ob folgendes geht:

Ich habe einen Moviclip (mit Farbverläufen, siehe angehängte Dateien). Auf den würde ich (nach einem Button-Klick) gerne einen "Filter" anwenden, der alle roten Farbtöne ab da im Movieclip z.B. als Grautöne anzeigt (keine Ahnung ob auch andere "Ziel"-Farben möglich sind). In der angehängten Beispieldatei habe ich bewußt keine weiteren Farben benutzt, da ich im Moment selber davon ausgehe, daß es nur eine reine "Grauwert-Lösung" gibt. Wenn die Verwendung weiterer Farben aber möglich ist, wäre das natürlich noch besser.

Gruß flakker
Angehängte Dateien
Dateityp: fla AmpelRot.fla (174,5 KB, 6x aufgerufen)
Dateityp: swf AmpelRot.swf (81,0 KB, 8x aufgerufen)

Geändert von flakker (12-01-2010 um 10:05 Uhr)
flakker ist offline   Mit Zitat antworten
Alt 12-01-2010, 09:58   #2 (permalink)
Neuer User
 
Registriert seit: Oct 2007
Beiträge: 434
Schau dir mal die Klasse ColorTransform an, die sollte die Lösung für dein Problem sein.
Lukas78 ist offline   Mit Zitat antworten
Alt 12-01-2010, 10:24   #3 (permalink)
Neuer User
 
Registriert seit: Jan 2010
Beiträge: 46
Danke Dir!
Aber auch damit (scheint mir) kann ich kein z.B. blaues Quadrat im Movieclip nach der Transformation im ursprünglichen Blauton erhalten, oder? Nahezu jeder Farbton hat ja einen Rotanteil und die Transformation wird wohl nur global auf den Movieclip angewendet werden.

Ich werde mir die Klasse aber noch mal etwas näher anschauen.
flakker ist offline   Mit Zitat antworten
Alt 12-01-2010, 10:30   #4 (permalink)
Crème brûlée
 
Registriert seit: Jan 2006
Ort: Düsseldorf
Beiträge: 719
PixelBender kann für dich auch eine Lösung sein. Damit kannst du Grafikfilter programmieren, die viel mehr können und leistungsfähiger sind als die in Flash enthaltenen Filter.
laxersaz ist offline   Mit Zitat antworten
Alt 12-01-2010, 10:43   #5 (permalink)
Neuer User
 
Registriert seit: Jan 2010
Beiträge: 46
Was würde mich die Verwendung dieses Pixelbender denn kosten (habe nur Flash CS4)?
flakker ist offline   Mit Zitat antworten
Alt 12-01-2010, 11:00   #6 (permalink)
Crème brûlée
 
Registriert seit: Jan 2006
Ort: Düsseldorf
Beiträge: 719
Nix! Das Toolkit ist kostenlos von Adobe erhältlich:
Pixel Bender Technology Center | Adobe Developer Connection
laxersaz ist offline   Mit Zitat antworten
Alt 12-01-2010, 12:25   #7 (permalink)
Neuer User
 
Registriert seit: Jan 2010
Beiträge: 46
Dann kaufe ich gleich zwei

Ne andere Möglichkeit wäre natürlich auch einen "Hintergrund"-Movieclip zu haben (mit allen möglichen, bunten Farben) und einen anderen Movieclip darüber zu legen, der nur den zu änderen "Rot"-Teil enthält (ich darf ja nicht mal den "Rot"-Teil mit den Grauwerten in einen Movieclip packen - das ginge bei ner ColorTransform auch schief). In meinem Fall ist das allerdings nicht machbar (die angehängten Dateien waren nur ein einfaches Muster als Beispiel).

Sollte jemand mit Pixelbender so etwas schon mal gemacht haben, wäre ein Beispielcode toll. Ihr könnt ja dazu meine .fla aus dem ersten Posting benutzen.
flakker ist offline   Mit Zitat antworten
Alt 12-01-2010, 12:29   #8 (permalink)
Neuer User
 
Benutzerbild von mohj
 
Registriert seit: Jan 2009
Beiträge: 423
Wenn du nur ein Greyscale Filter haben möchtest, kannst du dir zum Beispiel den von Mike Chambers anschauen.
mohj ist offline   Mit Zitat antworten
Alt 12-01-2010, 12:45   #9 (permalink)
Neuer User
 
Registriert seit: Jan 2010
Beiträge: 46
Sieht toll aus, aber:

Ich habe in einem Movieclip einen weißen Untergrund mit schwarzen Buchstaben drauf. Einige Buchstaben sind aber auch rot.
Nach dem Filtereffekt sollen alle Buchstaben schwarz erscheinen. Ich hatte schon über eine Schwellwert-Operation nachgedacht (Ergebnis s/w) - aber es muß mindestens bei Graustufen bleiben, damit's professionell aussieht (Spiegelungen auf den Buchstaben, gewölbte Oberfläche). Wären die Buchstaben (wie im Beispiel Deines Links) türkis und rot, ginge es allerdings nach Deinem Vorschlag...

Gibt's irgend einen (mathematischen) Trick woran ich verschiedene Farben erkennen kann, die als Grauwert (im besten Fall) identisch aussehen?

Geändert von flakker (12-01-2010 um 12:59 Uhr)
flakker ist offline   Mit Zitat antworten
Alt 14-01-2010, 14:44   #10 (permalink)
Neuer User
 
Registriert seit: Jan 2010
Beiträge: 46
Mein letztes Posting hat sich mittlerweile erledigt.
flakker ist offline   Mit Zitat antworten
Alt 14-01-2010, 19:13   #11 (permalink)
Neuer User
 
Registriert seit: Jan 2010
Beiträge: 46
Danke! Meine Fragen sind alle beantwortet!
Pixel Bender ist sicherlich ne tolle Sache. Ich benutze aber lieber die ebenso im lezten Posting von mohj beschriebene ActionScript-Variante mit der Klasse ColorMatrixFilter. Pixel Bender kenne ich mich kaum aus und so groß wird der Geschwindigkeitsvorteil wohl nicht sein.

Viele Grüße!
flakker
flakker ist offline   Mit Zitat antworten
Alt 22-04-2010, 07:09   #12 (permalink)
Neuer User
 
Registriert seit: Jan 2010
Beiträge: 46
Ärgerlich ist, daß es mit dem ColorMatrixFilter unter Windows perfekt funktioniert - unter Linux die Videos dagegen leider deutlich ruckeliger abgespielt werden. Nachdem was ich gelesen habe, arbeitet Flash nur unter Windows mit Hardwareunterstützung, während bei Linux alles über die CPU läuft.

Habe daher die Framerate von 25 auf 16 runtergesetzt, die Pixelanzahl der Movieclips um fast 50% verringert (auch konstante Bitrate habe ich versucht). Für mich unverständlich brachte das alles gar nichts (oder zumindest keine sichtbare Verbesserung).
flakker ist offline   Mit Zitat antworten
Alt 22-04-2010, 09:10   #13 (permalink)
Crème brûlée
 
Registriert seit: Jan 2006
Ort: Düsseldorf
Beiträge: 719
Doch, Pixelbender hat einen riesigen Geschwindigkeitsvorteil gegenüber den internen Klassen.
laxersaz ist offline   Mit Zitat antworten
Alt 22-04-2010, 09:38   #14 (permalink)
Neuer User
 
Registriert seit: Jan 2010
Beiträge: 46
Das mag sein. Ich selbst habe auch einen einfachen Graufilter mit Pixelbender gebaut - damit aber keinen sichtbaren Geschwindigkeitsvorteil erreichen können (subjektiv empfand ich das Ergebnis unter Linux sogar als noch langsamer).

Ich denke, daß Pixelbender nur unter Windows seine Stärken zeigen kann. Ich habe das Problem ja aber eben nur unter Linux - und da nützt Pixelbender wohl auch nichts, da es unter Linux eben nicht die dafür nötige Hardwareunterstützung (etwa Zugriff auf die GPU der Grafikkarte) gibt.

Nachtrag (Korrektur) zu meinem letzten Posting:
Die Pixelgrößenreduktion der .flv bringt doch einen zumindest sichtbaren Geschwindigkeitsvorteil. Das in Kombination mit einer Bildrate von 16 FPS bringt mich meinem Ziel ja vielleicht doch etwas näher (in Kombination habe ich beide Techniken bisher noch nicht ausprobiert).

Geändert von flakker (22-04-2010 um 10:03 Uhr)
flakker ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
rote Fläche!!! ohneschuhe Flash 8 3 30-03-2006 21:33
Farbtöne per Actionscript ansteuern darkfrog ActionScript 1 23 01-01-2006 22:38
rote JPGs.. Icecube Flash MX 3 13-01-2003 14:40
Rote kästchen smoowe Flash MX 5 30-09-2002 09:40
2 versch. GRAU Farbtöne (nur bei 16 bit ) ? ? ? MalcomX Flash 4 und Flash 5 7 09-12-2001 18:50


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:03 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele