Zum Inhalt springen

FOS Show Control — Standard

Version 1.0.0 · benötigt FOS Essentials Core 1.1.0 oder neuer

Ein Licht-, FX- und Cue-Pult für deine Welt. Benötigt FOS Essentials Core 1.1.0.

Du bringst die Lichter, die Animationen und die Effekte mit. Dieses Pack führt die Show: welche Stimmung läuft, auf welchem Pegel und in welcher Zeit man dorthin kommt — für den ganzen Raum gleich, auch für alle, die später dazukommen.


Pult ──► Show Director ──► Show Light → dein Light
(Tasten, (die Show, und Show Material → deine Neonflächen
Fader) das Einzige im Show Particles → dein Nebel, dein Konfetti
Netzwerk) Show Toggle → deine Effekte
Show Animator → deine Animationen
Show Relay → ProTV, AudioLink, deine Skripte

Nichts auf der rechten Seite spricht je mit etwas auf der linken. Füge ein Licht hinzu, ohne das Pult anzufassen; baue das Pult neu, ohne ein einziges Licht anzufassen.


Komponente Aufgabe
FOSShowDirector Führt die Show. Einer pro Welt. Allein auf seinem GameObject.
FOSShowLight Steuert ein Light: eine Intensität und eine Farbe pro Cue.
FOSShowToggle Schaltet eine Gruppe von Objekten pro Cue. Hierher gehören deine FX.
FOSShowAnimator Spielt eine deiner Animationen pro Cue, für alle phasengleich.
FOSShowParticles Emittiert oder feuert einen Schuss pro Cue. Nebel, Konfetti, Funken.
FOSShowMaterial Färbt eine emissive Fläche pro Cue um. Neon, LED, Bildschirme.
FOSShowRelay Sendet ein benanntes Event an ein beliebiges Udon-Verhalten.
FOSShowButton Eine Pulttaste: Cue aufrufen, schwarz schalten, erneut auslösen. Beschriftet und beleuchtet sich selbst.
FOSShowSlider Ein Pultfader: Gesamtpegel oder Blendzeit.
FOSShowReadout Schreibt den Zustand der Show in TextMeshPro-Texte.

Menü: Add Component > FOS Essentials > Show Control > ...


  1. Zieh FOS Show Console in deine Szene, aus dem Ordner Prefabs des Packs oder aus dem Menü FOS Essentials > Show Control. Die Regie kommt mit: sechzehn Tasten, ein Master-Fader, ein Blend-Fader, Blackout und Replay, bereits verkabelt.
  2. Füge jedem deiner Lichter ein Show Light hinzu und zieh die Regie hinein. Sie steckt im Pult-Prefab, unter Show Director.
  3. Füge einem leeren Objekt mit deinen Effekten ein Show Toggle hinzu, Regie hinein.
  4. Leuchte deine Szene von Hand aus, bis Cue 0 stimmt. Öffne in der Regie die Cue-Liste, benenne die Zeile und drücke Speichern.
  5. Ändere das Licht, speichere es in Cue 1. Wiederhole für so viele Stimmungen, wie du brauchst.
  6. Drücke Tasten beschriften in der Regie. Eine Taste trägt Nummer und Namen ihrer Cue aus der Cue-Liste — du tippst einen Namen einmal und nicht zweimal.

Das ist die ganze Einrichtung. Alles danach ist deine Location, nicht das Pack.

Eine Regie pro Welt. Das Pult-Prefab enthält eine; zweimal abgelegt ergibt es zwei Shows, die einander ignorieren. Um dieselbe Show von einer zweiten Fläche aus zu fahren, dupliziere das Pult und richte die Tasten der Kopie auf die erste Regie.

Ein eigenes Pult bauen — ein modelliertes Pult, ein Wandpanel, eine Handfernbedienung — heißt, FOSShowButton und FOSShowSlider auf deine eigenen Objekte zu setzen und auf die Regie zu richten. Das Handbuch führt das aus, samt dem Fall des physischen Pults: eine Taste antwortet auf Interact() genauso wie auf einen UI-Button, dasselbe Verhalten funktioniert also auf einer modellierten Taste mit Collider.

Abrufen stellt die Szene so wieder her, wie eine gespeicherte Cue sie hatte, damit du an einer schon notierten Stimmung weiterarbeiten kannst.

Jedes Feld eines Show Readout ist optional: setze eines überall dorthin, wo das Pult etwas anzeigt — eines in die Kopfzeile für Nummer und Namen der Cue, ein weiteres unter die Fader für ihre Zahlen. Auch wer die Taste nicht gedrückt hat, muss wissen, wo die Show steht.


Niemand tippt sechzehn Intensitäten von Hand, und so bekommt auch niemand eine gute Stimmung. Das Pack arbeitet deshalb wie ein echtes Lichtpult: du baust die Stimmung in der Szene und speicherst sie dann.

Eine Folge, die man kennen sollte: eine Cue ist eine Nummer, kein Inhalt. Die Regie sendet über das Netz nur „wir gehen auf Cue 4, in 2 Sekunden”, und jeder Knoten trägt seine eigene Wertetabelle. Deshalb kosten hundert Scheinwerfer genau so viel wie einer — und deshalb bleibt ein später hinzugefügter Knoten auf den Cues dunkel, die er nie kannte: drücke erneut Speichern, oder nutze die Schaltfläche zum Anpassen der Tabellengröße, die der Inspektor anbietet.


Ein Show Animator spielt einen deiner Animator-States pro Cue. Er weiß nichts über das, was er spielt: du schreibst den State- oder Trigger-Namen, dein Controller macht den Rest.

Jeder Client spielt diese Animation auf seiner eigenen Maschine, eine Schleife würde also auseinanderlaufen: zwei Spieler starten sie um einen Moment versetzt, und wer später dazukommt, beginnt bei null. Setze align to the cue, trage loop seconds ein, und die Animation nimmt dort wieder auf, wo sie inzwischen stehen müsste, statt neu zu starten — berechnet aus der Serveruhr, die die Regie teilt, ohne ein einziges Byte im Netz.

Eine Cue mit leerer Zeile tut eines von zwei Dingen, und du entscheidest welches. Carry on lässt die laufende Animation weiterlaufen — richtig für ein Bühnenbild, das mehrere Bilder überspannt. Freeze hält sie an Ort und Stelle an, bis eine spätere Cue wieder einen State nennt — richtig für einen Moving Head, der nichts mehr zu schwenken hat. Einfrieren hält die Pose, statt an den Anfang zurückzuspringen.

Wenn du lieber selbst bestimmst, wie „angehalten” aussieht, füge deinem Controller einen Idle-State hinzu und nenne ihn auf diesen Cues. Das funktioniert bei beiden Optionen.


Du willst Knoten Warum dieser
Neon oder LED, die die Farbe wechselt Show Material kostet fast nichts im Rendering und trägt eine ganze Stimmung allein
Nebel, Dunst, Schnee Show Particles, kontinuierlich stoppt die Emission und lässt Schwebendes verwehen
Konfetti, Pyro, ein Funkenschlag Show Particles, Salve ein Schuss beim Aufziehen der Cue, per Replay erneut
Ein Laserrig, ein Requisit, ein Banner Show Toggle an oder aus, nichts dazwischen
Alles, was sich bewegt Show Animator deine Animation, dein Controller

Ein Show Material schreibt über einen Property Block: es fasst dein Material-Asset nie an, und zehn Objekte mit demselben Material können zehn verschiedene Farben zeigen.

Die Falle des dunklen Neons: Beim Standard-Shader bewirkt das Schreiben von _EmissionColor nichts, solange das Häkchen Emission am Material fehlt. Dieses Häkchen kompiliert ein Shader-Keyword, und kein Code kann es zurückschalten. Setze es einmal — eine schwarze Emissionsfarbe genügt — und das Pack übernimmt.


Synchronisiert Cue-Nummer, Auslösezähler, Gesamtpegel, Blackout, Blendzeit und die Serverzeit des Auslösens — rund ein Dutzend Bytes, allein auf der Regie
Nicht synchronisiert jeder Knoten. Hundert Scheinwerfer kosten genau so viel wie einer
Beim Beitritt neu aufgebaut alles. Wer später kommt, liest den Zustand der Regie und landet mitten in der laufenden Show, Animation phasengleich

Jeder darf das Pult bedienen: eine Taste zu drücken übernimmt den Besitz der Regie. Das auf eine Crew zu beschränken, ist Aufgabe von FOS Access und FOS Show Control Pro.

Das Senden ist gedrosselt: ein über den ganzen Weg gezogener Fader erzeugt eine Netzwerk-Aktualisierung pro Fünftelsekunde, nicht fünfzig. Was du lokal siehst, wird nie verzögert — geschont wird nur die Leitung.


FOSShowRelay sendet einen Event-Namen. Bewusst mehr nicht: eine harte Referenz auf ProTV würde verhindern, dass dieses Pack bei allen kompiliert, die es nicht besitzen.

  • Richte ein Relais auf deinen ProTV-Player, schreibe das gewünschte Event in die Zeile der Cue und setze relay from the operator only — sonst streiten sich alle Clients im Raum um den Besitz des Players.
  • Dasselbe Relais steuert AudioLink, USharpVideo oder ein Verhalten, das du selbst geschrieben hast.

Fertige Brücken — ProTV nach Titel steuern, Lichter mit den Frequenzbändern von AudioLink atmen lassen — bringt FOS Show Control Pro.


  • Ein einziges Update im ganzen System, auf der Regie, und es steigt in der ersten Zeile aus, wenn nichts blendet. Deine Lichter haben gar keines.
  • Ein Show Light schaltet seine Light-Komponente ab, sobald sie null erreicht. Ein Echtzeitlicht mit Intensität null kostet trotzdem; ein deaktiviertes nicht.
  • Echtzeitlichter bleiben auf Quest teuer, was wir auch tun. Gebackenes Licht plus ein paar Echtzeit-Akzente schlägt immer zwanzig dynamische Scheinwerfer.

Zwei stille Ausfälle, die der Inspektor für dich überwacht

Abschnitt betitelt „Zwei stille Ausfälle, die der Inspektor für dich überwacht“
  • Die Regie muss allein auf ihrem GameObject sein. VRChat wendet pro Objekt einen einzigen Sync-Modus an, den des zuletzt gesetzten Verhaltens: ein daneben abgelegter Knoten würde die ganze Show still zerlegen.
  • Ein Toggle darf nie sein eigenes Objekt schalten. Ein deaktiviertes Objekt führt sein Udon-Verhalten nicht mehr aus und erhielte nie die Cue, die es zurückholen soll.

Sequencer und automatische Cue-Folge, Chases und Strobes (aus der Netzwerkzeit berechnet, also kostenlos), Farb-Presets, fertige ProTV- und AudioLink-Brücken, Pultzugang nach Rolle über FOS Access und ein FOS Tablet System-Panel.