Probleme mit Font-Texturen und Transparenz

  • FAQ gelesen?
    Ja
    Loksim3D-Version
    sonstige
    Programmteil
    Editor
    Betriebssystem
    Windows 10
    Angezeigte Fehlermeldung
    keine
    Konnte ein Loksim3D-Fehlerbericht gesendet werden?
    Nein.

    Hallo,


    seit einiger Zeit sollen die Transparenzoption "Transparenzfarbe ist die Farbe des Pixels links/oben" und "Schwarz ist transparent" nicht mehr verwendet werden und stattdessen z.B "Alphakanal - nur sichtbar/unsichtbar". Nun erstelle ich gerade mal wieder eine Textur für Zusatzanzeiger von Signalen. Bisher war der nicht darzustellende Teil immer schwarz und die entsprechende Option ausgewählt. Nun muss ich in der PNG-Datei aber diesen Teil transparent machen, damit die neue Option ausgewählt werden kann. Entferne ich den schwarzen Teil einfach, nimmt Loksim diesen Bereich als weiß an und blenden von den äußersten Pixeln am Rand noch zu weiß über, sieht hier schon blöd aus (links Texturvorschau im Editor, rechts Ergebnis 3D-Anzeige mit schwarzem Hintergrund, wie er auch bei Signalschirmen gegeben ist) :


    Nun gibt es noch die zweite Möglichkeit, den Bereich schwarz zu färben und in der Bildbearbeitung eine Maske zu erstellen und diese anzuwenden, dann nimmt Loksim den Bereich zwar grundsätzlich in schwarz:


    Aber: Bei Fonts kann ich zum einen diese Transparenzeinstellung gar nicht treffen, es wird grundsätzlich die Farbe des Pixels links/oben genommen, obwohl diese Option bei Objekten nicht mehr gewählt werden soll, weil veraltet. Nun habe in der Regel eine Textur, die die Zeichen für Zs2 und Zs3 enthält, sowie die anderen Signalbilder der Zusatzanzeiger (Zs6, Zs7, Zs13, Zp9, Zp10), weil vor allem das Zs6 einmal als Objekt benötigt wird, um mit der Option Zs6 eingeblendet zu werden (Ich merke gerade, ich könne auch einen Font anlegen, der das Zeichen zeigt ... behebt das Problem aber für die anderen Teile nicht) und um als Richtungsanzeiger "\" zu erscheinen.

    Da die Loksim-3D-Darstellung aber die linken und oberen Pixel nicht als Transparent bzw. nicht in der Farbe des transparenten Bereiches annimmt, und zwar bis zum ersten nicht-transparenten Pixel, erhalte ich in der Pixelreihe oben und der Spalte links wieder weiße Pixel. Diesen Pixelrand möchte ich aber ungern raus lassen, da dies die Kanten dann wieder scharf enden lässt (Und er wurde ja seit jeher empfohlen!). Somit erhalte ich beim Font folgende Darstellung:



    Der transparente Bereich aus der PNG wird nicht transparent dargestellt, stattdessen alle Pixel in der Farbe des nur im Loksim (nicht in anderen Programmen!) sichtbaren weißen Randes. Da bei weißen LED nun auch die Mitten der Pixel weiß sind, sind diese auch durchsichtig. Also bleibt hier keine andere Möglichkeit, im Objekt die eigentlich veraltete Option zu wählen, oder die Bitmaps aufzuteilen (wodurch mehr Dateien und mehr Rechenaufwand entsteht).


    Aus meiner Sicht sollte die Verarbeitung von Transparenzen auch bei Fonts angepasst werden, im Prinzip sind dies ja auch nur Objekte mit variabler Darstellung des Texturbereiches. Und die Annahme, dass transparenter Bereich bis zum 1. nicht-transparenten Pixel weiß ist, obwohl eine andere Farbinformation vorliegt, sollte korrigiert werden.


    Gruß, Klaus