Vobtrees
Vorraussetzung für dieses WIKI ist die Kenntnis über das Einsetzen von Vobs mit dem Spacer in die Welt. Wer das noch nicht gelernt hat, möge sich bitte hier informieren → Vobs erzeugen
1. Was ist ein Vobtree
1.0.0 Ein Vobtree ist eine zusammengesetzte Vobgruppe.
1.0.1 Der Dateiname so einer Gruppe wird mit MY_VOBTREE.ZEN angegeben (Beispielname)
1.0.2 Die von uns erstellten Vobtrees speichern wir vorzugsweise im vorhandenen Ordner VOBTREES.
1.0.3 Die Dateistruktur eines Vobrees setzt sich im Normalfalle aus Parent (Hauptvob) und Child/s (Untergeordnetes Vob/s) zusammen. Für unser Übungsbeispiel stellen wir eine FireTree.Zen zusammen. Die FireTree.Zen dürfte eines der meist genutzten Vobrees sein, da ja fast jeder in seiner Mod - Leuchter, Lampen, Fackelhalter ..usw eingebaut hat.
Warum sollte der 2te Baum weniger effektiv sein? Bei Baum 1 kann man jedes Child separat verschieben, ohne ein anderes zu beeinträchtigen, wohingegen man bei Baum 2 jedes Unterparent, des in der Hirarchie darunterliegenden mit verschiebt.
Man könnte also bei Baum 2 das Child/Unterparent1, nicht verschieben, ohne dass sich Child/Unterparent2 und 3 mitbewegen.
Und wenn man etwas austauschen wollte bei Baum 2, könnte man Child/Unterparent1 nicht löschen, ohne dass Child/Unterparent2 + 3 mitgelöscht würden.
2. Vorteile von Vobtrees
müsste man ja mit Normalbespacerung 30 mal den Feuer-Pfx, 30 mal den Rauch-Pfx, 30 mal das Licht….. ist ja schon beim lesen äzend …… einsetzen und jedes Vob immer wieder neu positionieren.
3. VobTree-FireTree.Zen
Zur Erinnerung: Wer nicht weiss, wie man Vobs im Spacer setzt- zuerst einmal die Spacergrundlagen studieren. → Vobs erzeugen
Anmerkung: Wer Wert auf Glaubwürdigkeit legt und gutes Ambiente, patziert die Wandeisen des Halters so, dass sie aussehen als wären sie in die Steinfugen hineingeschlagen.
Betrachten wir dazu das Object_List_Fenster, wo unser Wandhalter jetzt eingetragen ist.
Wir klicken mit der rechten Maustaste auf den nicht aktivierten Fackelhalter. Nicht aktiviert heisst, der Fackelhalter zeigt nicht seine Boundingbox.
Ergebnis wenn wir alles richtig gemacht haben
Der Fackelhalter zeigt jetzt seine Boundingbox
Das kleine Vobfenster erscheint im Spacer_Haupfenster
In diesem Fenster ist die Option „Insert (zCVob) as child of (cZVob)“ verfügbar.
Unser Baum, das Vobtree ist bereits am entstehen und wir haben schon das Parent und 1 Child erzeugt.
Wenden wir uns dem Objektfenster zu und tragen in das File-Fensterchen, ganz unten als Visual „TORCH.PFX“ ein:
3.0.5 Wir setzen den Rauch für die Fackel etwas überhalb der gerade gesetzen Flamme. Dazu könnten wir die Schritte 3.0.3 → 3.0.4 wiederholen, lediglich mit dem Unterschied, dass wir als Visual jetzt TORCH_SMOKE.PFX auswählen.
Allerdings ist es jetzt etwas schwierig, da sich die etwas grössere Boundingbox des FeuerPfx beim anklicken des Fackelhalters in den Vordergrund drängt und wir beim anklicken dann ein Child des FeuerPfx bekommen würden und nicht ein Child des Fackelhalters.
Dieses Problemchen lösen wir folgendermassen:
Wir setzen den RauchPfx in die Welt, nicht als Child von irgend einem Vob, sondern ganz für sich alleine, etwas neben den bis jetzt schon teilweise erzeugten Vobtree und ausserhalb jeglicher Boundingbox.
Da der Torch_Smoke sehr durchscheinend ist, habe ich jetzt zum besseren verdeutlichen und Thumbnails zu erstellen den Fire_Smoke.Pfx genommen. Ihr solltet aber den Torch_Smoke nehmen, sonst qualmt das wie eine Dampflok!
Wir kopieren den Smoke mit dem Tastenkürzel strg/c
Wir klicken im Spacer Hauptfenster auf unseren Fackelhalter, ziemlich unten, um der Boundingbox der Flamme auszuweichen und jetzt sollte wieder die Boundingbox des Fackelhalters zu sehen sein….
oder wir aktivieren unseren Fackelhalter mit Mausklick im Objekt_List_Fenster.
Unser Vobtree besitzt jetzt schon 2 Childs
Den zuerst erzeugten Smoke HilfsPfx löschen wir jetzt wieder.
Anschliessend positionieren wir den Rauch oberhalb der Flamme der Fackel.
Mot welcher der beiden Methoden ihr jetzt arbeitet, mit Kopieren → Einfügen, oder mit Mausklick anwählen um den Vobtree zusammen zubauen, bleibt dem einzelnen und seinem Geschick überlassen.
Wer keine Erfahrung hat mit dem setzen von Licht-Vobs, für den bietet sich folgendes WIKI an → Es werde Licht
Für eine WALLTORCH_FIRESMALL.ZEN wählen wir den Lichtwert/Helligkeitswert 250 (Empfehlung)
Für eine WALLTORCH_FIREMEDIUM.ZEN wählen wir den Lichtwert/Helligkeitswert 400 (Empfehlung)
Für eine WALLTORCH_FIRELARGE.ZEN wählen wir den Lichtwert/Helligkeitswert 600 (Empfehlung)
Wenn ihr ein dynamisches Licht dazu verwendet, dann habt ihr das Flackern der Fackel als Widerschein auf Wand und Boden
VORSICHT Allzuviele dynamische Lichter auf engem Raum erzeugen u.U. übelst aussehende Hell-Dunkel Schlagschatten an Polygon-Seitengrenzen. Dieser unerwünschte Effekt wird noch begünstigt, wenn an Polygonen gespart wurde, was oft bei langen, ebenen und geraden Wänden und Böden der Fall ist und daurch „elendlange“ Polygongrenzkanten erzeugt wurden.
Dynamische Lichter sind ausserdem performancelastig. Man muss so eine Gratwanderung machen, zwischen Wunschdenken und dem was eben möglich ist.
Licht gesetzt, da freut man sich dann auch, wenn die Welt Gestalt annimmt…..
Und einen Blick auf unseren wachsenden Baum im Object_List_Fenster
4. zCVobSound in Vobtree
Wer will kann noch ein zCVobSound in den Vobtree einbinden für Flammenknistern der Fackel →
vobsound_in_vobtree
Zusätzlich kann man auch noch einen Flammenkranz um Fackeln/Kerzen einbauen. Wer das will →
VobLensFlare
5. Speichern Vobtree
firetree_04.jpg
In beiden Fällen können wir über → Vob → Rollout → Save Vobtree unseren Vobtree speichern!
Wer hat der hat und das kostet kein Geld und wenn ihr eueren Vobtree in grösseren oder kleineren Räumen einsetzen wollt, dann habt ihr das parat.
6. Laden Vobtree
Die *.Zen erscheint im Spacer, wir klicken das Parent an und können jetzt die Zen positionieren. Kollision würde ich bei einer Wandlampe nicht einschalten, bei einem Standleuchter aber schon. Aber bitte nur das Leuchtermesh mit Kollision versehen, nicht alle Teile der FireZen.
Bei Vobtrees mit mehreren Meshes müsst ihr selbst abwägen, welchem ihr Kollision zuschreibt.
7. Kleine Tips
Unten erscheinen jetzt 3 neue Fenster mit den exakten 3 Positionskoordinaten des angewählen Objektes.
Wir benötigen den mittleren Wert, das ist die Höhe des Objektes über „NULL“
Wir rechtsklicken auf die Zahl und wählen im erscheinenden Rollout die Option kopieren
Lampe 2
Wir wählen Lampe 2 an und verfahren wie oben beschrieben. Wenn sich bei Lampe 2, die 3 Fenster geöffnet haben, setzen wir den kopierten Wert von Lampe 1 in das mittlere Fenster und betätigen den Button „Apply“.
Die Lampe 2 bewegt sich jetzt sofort auf exakt die gleiche Höhe wie Lampe 1.
Vorgang für die verbliebenen Lampen 3-4-5 wiederholen.
Anmerkung: Ich würde das aber nicht grundsätzlich so installieren. In einem Höhlengang z.B. würde ich die Lampen mit Absicht etwas höhendifferenziert einsetzen, wohingegen im Prunksal von König Rhobar die Lampen ganz exakt zu positionieren wären.
Ingametest
2016/02/13(dlz)