Transparenz

A. Transparente Texturen

Sie haben vielleicht bemerkt, dass transparente Texturen oft Probleme bereiten. Wenn Sie z. B. zwei Bäume mit transparenten Blättern näher zusammenbringen und die Kamera um sie herumschwenken, werden Sie plötzlich abrupte Helligkeitsänderungen sehen, transparente Rechtecke um bestimmte Äste, Blätter, die verschwinden, oder Äste eines weit entfernten Baumes, die vor einem nahen Baum auftauchen.

Die Transparenz in 3D-Spielen wird durch die heutige Grafikkartengeneration erschwert. Diese Karten verlangen nämlich, dass ihnen transparente Texturen in der Reihenfolge, von der Textur, die am weitesten von der Kamera entfernt ist, bis zur Textur, die der Kamera am nächsten ist, übertragen werden.

Planet ist also gezwungen, Gegenstände, Kleidung und Partikel mit transparenten Texturen zu sortieren. Dieses Sortieren ist komplizierter als es aussieht, denn oft gibt es keine klare Reihenfolge: ein Baum kann sowohl vor UND hinter einem anderen stehen, wenn sich die Äste berühren; Ein Lagerfeuer kann Rauchpartikel haben, die auf eine transparente Flammentextur treffen.

Damit Objekte mit transparenten Texturen korrekt angezeigt werden, sollten sie am besten weit voneinander entfernt sein. Auf diese Weise kann Planet sie immer leicht sortieren.

Für Fälle, in denen sich mehrere transparente Texturen überlappen, bietet Planet zwei interessante Optionen:

a) Transparenzpriorität

Sie können eine Transparenzpriorität von -7 bis +7 angeben. Standardmäßig haben Texturen die Priorität 0. Wenn Sie die Priorität einer Textur auf 1, und sie eine Textur mit Priorität 0 überlappt, wird die Textur mit Priorität 1 VOR ihr angezeigt. Wenn Sie die Priorität auf -1 setzen, wird sie HINTER ihr angezeigt. Bitte beachten Sie, dass Partikel standardmäßig die Priorität -3 haben, also normalerweise im Hintergrund angezeigt werden. Sie erhalten die Priorität +3, wenn Sie im Partikelskript den Parameter .front auf true setzen.

b) mit Z-Buffer

Die Option 'Z-buffer' ist standardmäßig aktiviert. Wenn Sie transparente Rechtecke in der Mitte Ihrer Baumzweige sehen, versuchen Sie, diese Option zu deaktivieren. Sie hat den Effekt, dass ein Teil des Meshs niemals einen anderen Teil des Meshs verdeckt. Aber es hat auch einen unnatürlichen Mischeffekt, wenn Sie die Kamera drehen. Sie müssen sehen, was Ihnen lieber ist, transparente Rechtecke oder der Mischeffekt. Beachten Sie, dass bei Partikeln diese Option immer deaktiviert ist.

Hier noch einige Tipps

Wenn Sie einen transparenten Globus erstellen, achten Sie darauf, dass Sie für die Innen- und Außenseite unterschiedliche Texturnummern verwenden, sonst haben Sie beim Drehen der Kamera ein Facettenpuzzle. Setzen Sie auch die Priorität 1 auf die beiden Texturen des Globus.

Stellen Sie die Windschutzscheibe eines Autos auf Priorität 1, damit Ihre Kleidung aus transparentem Mesh nicht in bestimmten Kamerawinkeln verschwinden.

Wenn Sie Rauchpartikel sehen, die VOR statt HINTER einem Fluss mit transparentem Wasser angezeigt werden, stellen Sie sicher, dass die transparenten Meshs des Flusses in einer Linie liegen und sich nicht überlappen, da sonst geht planet davon aus, dass alle diese Meshs zusammenhalten und ein riesiges Objekt um den Rauch herum bilden. In vielen Fällen wird das Problem dadurch beseitigt. Ansonsten setzen Sie den Parameter .front im Rauch-Skript auf true, wie oben beschrieben.

Wenn Sie ein vier Seiten Haus mit transparenten Fenstern bauen, und das alles in einem einzigen Mesh, vermeiden Sie es, die gleiche Texturnummer für alle vier Glasscheiben zu verwenden! Denn wenn Sie das tun und es gibt durchsichtige Objekte im Haus, sehen Sie sie nicht mehr richtig, wenn Sie von draußen durch die Fenster schauen. Das liegt daran, dass Planet alle vier Fensterscheiben zusammen anzeigt und keine klare Sortierreihenfolge mit dem Objekt findet, die Fenster sowohl vor als auch hinter dem Objekt liegen. Was Sie tun müssen, ist, die Textur der Fenster viermal in das Mesh importieren, um unterschiedliche Texturnummern zu erhalten, (selbst wenn es die gleiche Textur ist), und wenden Sie auf jede Scheibe eine andere Texturnummer an. Planet wird dann in der Lage sein, die Fensterscheiben und das transparente Objekt zu sortieren, vom entferntesten zum nächsten, und die transparenten Objekte im Haus werden korrekt gesehen werden können, wenn man von draußen aus dem Fenster schaut.

B. Ausschneide-Effekte auf dem Meer

Planet bietet Ihnen Ausschneide funktionen, mit denen Sie einen Teil des Meerwassers ausschneiden können, zum Beispiel, damit man im Inneren eines tiefen Schiffes oder U-Bootes kein Wasser sieht. Diese Optionen sind im Menü Objekt / Bearbeiten / Meshs / Diverse verfügbar.

Um kein Wasser in einem Boot zu sehen, muss man das Boot mindestens in drei separate Meshs aufteilen:

mesh 1: Der äußere Rumpf des Bootes. Stellen Sie die Option "Äußerer Rumpf" ein.
mesh 2: Der innere Rumpf des Bootes. Stellen Sie die Option "Innere Hülle" ein. Mesh 2 kann 100% transparent sein, also unsichtbar, das funktioniert auch. Achten Sie darauf, dass Sie keinen papierdünnen Rumpf haben, es muss zumindest eine kleine Dicke zwischen Äußerer Rumpf und Innere Hülle vorhanden sein. Wenn Sie die Option ankreuzen, wird das Wasser, das Sie vor Mesh 2 sehen, entfernt, außer wenn Mesh 1 vor Mesh 2 liegt.
Mesh 3 und folgende: Der Großteil des Bootes, Deck, Möbel, Kojen, ...

Wenn Sie das Wasser des Meeres selbst gebaut haben, stellen Sie auf diesem Wasser-Mesh die Option "Wasser mit Loch" ein.

Wenn Ihr Avatar das Boot betritt und Sie alles in Blau sehen, stellen Sie auf dem Mesh 2 des Bootes die Option "Leeres Volumen" ein.

Die im obigen Beispiel angegebenen Mesh-Nummern müssen nicht eingehalten werden, solange Sie für jedes die richtige Transparenzoption anklicken.

So, jetzt haben Sie eine Zusammenfassung der Ausschneide-techniken, um das Meerwasser verschwinden zu lassen.

Da die heutigen Grafikkarten Transparenz nur schlecht unterstützen, werden Sie feststellen, dass es eine Menge Fummelei und Ausprobieren braucht, bis transparente Objekte richtig angezeigt werden.