Hi,
ich stehe derzeit vor dem Problem einen Text auf einem Screen darzustellen, welcher sowohl einen transparenzverlauf hat (blendet ein/aus), als auch die Farbe dabei ändert.
Ich kann zwar mit DrawText() eine Farbe angeben, müsste für die Transparenz allerdings für jedes Frame ein temporäres Sprite (da sich die Farbe ja ändert) erstellen.
Kennt wer eine performantere Lösung?
Farb- und Transparenzverlauf eines Sprites
- dllfreak2001
- Beiträge: 2925
- Registriert: 07.09.2004 23:44
- Wohnort: Bayern
??
- Wie realisierst du das Sprite?
- Ist es ein transparentes Sprite oder ein Sprite3D?
- Ist es so gewollt, dass du auf ein Sprite malst oder könntest du auch mit Drawtext() leben?
Auf ein Sprite kannst du auch zur Laufzeit malen, sogar wenn du Sprite3Ds nutzt kannst du auf dem dazugehörigen Sprite malen, die veränderung auf dem Sprite wird ohne irgendwelches zutun auch direkt auf dem dargestellten Sprite3D dargestellt. Bei den anderen Spritekramm ist es genauso.
Du machst also ein Sprite und malst nur deinen Text auf dem Sprite neu (mit entsprechender Farbe) und drawingmode() auf Transparent gesetzt, oder so guck mals dazu in der Hilfe.
- Wie realisierst du das Sprite?
- Ist es ein transparentes Sprite oder ein Sprite3D?
- Ist es so gewollt, dass du auf ein Sprite malst oder könntest du auch mit Drawtext() leben?
Auf ein Sprite kannst du auch zur Laufzeit malen, sogar wenn du Sprite3Ds nutzt kannst du auf dem dazugehörigen Sprite malen, die veränderung auf dem Sprite wird ohne irgendwelches zutun auch direkt auf dem dargestellten Sprite3D dargestellt. Bei den anderen Spritekramm ist es genauso.
Du machst also ein Sprite und malst nur deinen Text auf dem Sprite neu (mit entsprechender Farbe) und drawingmode() auf Transparent gesetzt, oder so guck mals dazu in der Hilfe.
I´a dllfreak2001
-normales Sprite2Ddllfreak2001 hat geschrieben:??
- Wie realisierst du das Sprite?
- Ist es ein transparentes Sprite oder ein Sprite3D?
- Ist es so gewollt, dass du auf ein Sprite malst oder könntest du auch mit Drawtext() leben?
-es wird mit displaytransparentsprite() dargestellt
-wenn ich nicht auf ein Sprite male, wie soll ich dann die Transparenz realisieren.
Was du vorschlägst ist mir bekannt, habs vllt blöd formuliert.
Ich suche etwas, das performanter ist, als 50 mal ein Sprite zu "leeren" und neu zu befüllen.
Bin mittlerweile auf die Idee zu kommen, DisplayRGBFilter() zu benutzen. Allerdings wird empfohlen StartSpecialFX() zu verwenden, was in meiner Zeichnungsroutine leider nicht zur Anwendung kommen kann.
Wenn es nix schnelleres gibt, werde ich den Schriftzug eben jedesmal neu draufpinseln, wäre ja ok.
pb 4.51
- dllfreak2001
- Beiträge: 2925
- Registriert: 07.09.2004 23:44
- Wohnort: Bayern
Du brauchst das Sprite ja nicht immer leeren, weil das Geschriebene ja sowieso immer das gleiche ist und das alte Zeug überdeckt sofern es auf der gleichen Stelle des Sprites geschrieben wurde.
Alternativ kannst du je eine rote, grüne und blaue Version übereinander legen dafür solltest du aber Sprite3D mit Additiven Blending nutzen.
Alternativ kannst du je eine rote, grüne und blaue Version übereinander legen dafür solltest du aber Sprite3D mit Additiven Blending nutzen.
I´a dllfreak2001