Das Bauen der Station auf modulare Weise ermöglichte es uns, Inhaltsaktualisierungen und -verbreitungen reibungslos durchzuführen, und es war entscheidend, sicherzustellen, dass wir nicht stundenlang einzelne Meshes, Texturen, Teile und mehr aktualisierten.
Roblox-Pakete ermöglichen es uns, dieses modulare Design zu erreichen, indem wir eine Palette von Meshparts, die einfach zusammen geschnappt werden kann, Paket zusammen packen, und SurfaceAppearance Knoten, die der MeshParts teilen könnte.Dies ermöglichte uns, uns an Änderungen im Layout und in der Größe während früherer Spieltests anzupassen und den Prozess der Ausfüllung der Station viel schneller zu beschleunigen.

Flexible Designs bis zur endgültigen Kunst
Als wir zuerst begannen, hatten wir kein vollständiges Verständnis davon, was wir in der Station sein wollten, oder wie groß es für 50 Spieler sein musste.
Um das herauszufinden, begannen wir zuerst, die Umgebung mit Parts aufzubauen und einige Meshes wie die Form der Rotunde aus unserer externen DCC-Anwendung, wie Maya oder Blender, einzubringen.Mit diesen einfachen Formen haben wir die Größe der Karte, die Anordnung der Räume und die Wege angepasst, um die lustigsten Arrangements zu finden.Ob für ein Spiel oder ein soziales Erlebnis, diese frühe Phase neigt dazu, die dynamischste zu sein.
Wenn das Layout der Station erstellt wurde, war das Wichtigste, die Exploration voranzutreiben, dem Benutzer ein Ziel zu geben.In diesem Fall ist das offensichtlichste Ziel, einen genaueren Blick auf das schwarze Loch zu werfen.Als nächstes wussten wir, dass es langweilig wäre, ihnen einen direkten Weg zum schwarzen Loch zu geben, weil ein Spieler einfach von spawn bis zum Ende der Karte gehen kann.Wir haben den Weg gebrochen, so dass der Spieler nicht in das schwarze Loch gelangen konnte, ohne zuerst herumzugehen und andere Dinge zu sehen, die ihn auch einfangen könnten.
Das modulare Design ermöglichte es uns, solche Änderungen an der Umgebung vorzunehmen, ohne das Gesamtdesign katastrophal umzuarbeiten.Wir könnten ganze Abschnitte der Station umstellen, um mit verschiedenen Spielideen zu spielen.Letztendlich könnten diese gleichen modularen Teile dann mit Paketen aktualisiert werden, so dass wir nicht mehrere Versionen desselben Objektneu erstellen mussten.




Modulares Design von Kerr-Newman DSR-14
Die Raumstation verwendet nur ein paar modulare Palettenstücke.Modulare Palettenstücke sind wiederverwendbare Assets, was bedeutet, dass wir nicht jede Wand einzigartig erstellen müssen, sondern stattdessen mehrere kleinere Wände zusammenstellen können.Dies ermöglicht Flexibilität im Layout, während wir Bauen.
Hier sind einige Tipps, die uns geholfen haben, unser modulares Design zu erstellen:
Sich auf eine einheitliche Rastergröße einigen — Für die Station haben wir uns für eine 16-Stud-Rastergröße entschieden, um die meisten modularen festlegenzu erstellen.Die Größe des Grids, die du verwendest, ist willkürlich, sollte aber im gesamten Projekt und bei allen Künstlern, die an diesem Projekt arbeiten, konsistent sein.Die Wahl einer Rastergröße zu Beginn Ihres Projekts stellt sicher, dass jedes Element gut neben dem nächsten Stück passt.Es ermöglicht dir auch, Teile leicht auszutauschen, zum Beispiel einen Wandschnitt für einen Türabschnitt zu tauschen.
Alle Einheiten werden als Stollen importiert — Wenn du Meshes in anderen DCC-Anwendungen wie Maya oder Blender erstellst, konvertiert Studio keine Meter, Zentimeter, Fuß oder Zoll — es ersetzt einfach die eingehenden Einheiten durch die gleichen Einheiten in Stollen.Wenn du beispielsweise deine Einheiten auf Meter einstellst, konvertiert Studio 2 Meter in 2 Klötze.Es ist am besten, deine Einheiten-Skalierung in deiner Anwendung der Wahl als Stab-Skalierung in Roblox zu behandeln.Die nächste reale Skalierung für einen einzigen Stollen in Roblox beträgt 28 Zentimeter.
Halte die Teile einfach — Versuche nicht, jedes Stück zu bauen, von dem du glaubst, dass du es jemals brauchen wirst.Die Idee ist, ein paar sehr vielseitige Stücke zu haben und nicht viele One-Offs.Je mehr Stücke du hast, desto mehr Zeit braucht es, um jedes Stück zu erstellen, und desto mehr wirkt es sich auf dein Gesamtspeicher- und Leistungsbudget aus.Du kannst deinem Kit immer ein weiteres Element hinzufügen, wenn es absolut notwendig ist.
Verwende Pakete — Konvertiere jedes modulare Stück in ein Paket und lege Materialien auch in Pakete, bevor du es in deiner Erlebnisfüllst.Dadurch können Sie Updates leicht auf alle Instanzen pushen.Wir werden ein bisschen später in Pakete eintauchen.
Die folgenden Screenshots zeigen dir verschiedene Wege, wie wir modulares Design verwendet haben, um Teile der Station zu konstruieren.




Schneideblätter erstellen
1:1-Texturen sind der Weg der Zukunft, aber sie werden teuer in Bezug auf Speicherbudgets und Zeit zum erstellen.Für die Raumstation verwendeten 90 % der architektonischen Elemente eine Handvoll austauschbarer Trim-Blattsets, die eine Reihe von Texturkarten sind, die in vertikaler oder horizontaler Weise angeordnet sind.Jede Zeile oder Spalte der Tabelle hat ein einzigartiges Aussehen, wodurch dir eine Reihe verschiedener Oberflächenbehandlungen zur Verfügung steht, aus denen du wählen kannst, wenn du ein Modell entpackst, alles während du ein Bildblatt verwendest.
Hier sind einige Tipps für das Herstellen von Schneideblättern:
Beginnen Sie mit einer Inventarisierung der Art von Objekten und Materialien, die Sie benötigen — Trim-Blätter können eine große Variation in Materialarten enthalten, wie Holz, Metall, Gummi und mehr.Bevor du anfängst, dein erstes Objekt zu modellieren, erstelle eine Schablonenvorlage.Dies ist der Startpunkt für alle anderen Trim-Blatt-Sätze und gibt dir einen schnellen Startpunkt für das Entpacken deiner Modelle.Diese Trim-Blätter leben innerhalb des SurfaceAppearance Knotens, den wir später abdecken werden.
Füge eine Vielzahl von Oberflächenbehandlungen auf einer Seite zusammen — Dies ermöglicht es dir, mehr des Meshes zusammen zu halten, so dass du neue Behandlungen anwenden kannst, ohne deine Meshes in mehrere Meshes aufteilen zu müssen.Dies verbessert die Laufzeitleistung, indem die Objekt- und Materialzugriffe verringert werden.
Erstelle eine Schneidevorlage — Eine Vorlage stellt sicher, dass du jede Kartensetzung gegen eine andere austauschen kannst.Zum Beispiel können Sie ein sauberes Metallset mit einem rostigen festlegentauschen.
Hier ist, wie wir Trim-Blätter für die Station erstellt haben:
Wir haben einen groben Überblick darüber erstellt, wie die Tabelle aussehen sollte:

In Photoshop haben wir ein Mockup erstellt, um eine schnelle Vorstellung davon zu bekommen, wie jeder Trim-Abschnitt der Seite aussehen würde.

Wir haben Substanz verwendet, aber du kannst jede Anwendung verwenden, die dir dazu dient, die endgültigen Karten zu erstellen.Dies ist die endgültige Reihe von Trim-Blattkarten, die in Substance generiert wurden.Alle vier Karten arbeiten zusammen innerhalb eines SurfaceAppearance-Knotens, um ein physisch basiertes Rendering (PBR) zu erzeugen.




Hier sind einige endgültige Renderings der Schneidematte innerhalb von Substance Designer:


Und hier sind Beispiele für die gleichen Trim-Blätter, die auf einer großen Anzahl von Objekten verwendet werden:

Wenn Sie mehr über Trim Sheet UV-Mapping erfahren möchten, suchen Sie einfach das Thema im Web; es gibt viele großartige Tutorials da draußen.
Oberflächenaussehen anwenden
SurfaceAppearance lässt dich neue Texture-Eingänge für unser physischbasiertes Rendering-System für MeshParts festlegen und ermöglicht es dir, das Aussehen eines Meshes mit erweiterten Grafikoptionen, einschließlich ColorMap, MetalnessMap, RoughnessMap und NormalMap, zu überschreiben.Es nutzt auch das neue dynamische Kubenmodellierungssystem, das Roblox für Reflexionen in Materialien wie Chrome verwendet.Zum Beispiel ist hier ein Seitenbild einer Mesh mit einer Oberflächenausrichtung neben einer Mesh ohne sie:

Wenn du die Aussehenverwendest, beachte die folgenden Tipps:
- Wenn deine Trim-Karten alphainformationen für Transparenz enthalten, ändere den Alpha-Modus von Overlay auf Transparenz.
- Die Oberflächenauswahl funktioniert nicht mit Teilen, weil sie keine UV-Informationen haben, mit denen die Karten angewendet werden können.Teile verwenden weltweit ausgerichtete Projektionen anstelle von UV-Informationen.MeshParts werden normalerweise in einer anderen App wie Maya, 3ds Max oder Blender erstellt und enthalten UV-Entpackungsinformationen.
Um SurfaceAppearance :
Klicken Sie auf den am Ende eines MeshPart oder Ordnernamens im Explorer und suchen Sie nach SurfaceAppearance.Durch das Hinzufügen eines wird jede von Ihnen bereits angewendete BrickColor, Color, Material und TextureID überschrieben.
Benenne den SurfaceAppearance Knoten in etwas Einzigartiges um und füge einen Präfix von _SA hinzu, um sie leicht zu finden zu machen.In diesem Beispiel verwendeten wir Metal_Trim_A_SA.
Importiere die Trim-Blatt-Karten, kopiere die IDs aus dem Asset-Manager -Panel und füge sie in die entsprechenden Felder im Eigenschaften-Panel ein.Hier ist, wie der Metal_Trim_A_SA Knoten aussieht, mit allen Kartendaten, die eingefügt und auf die Tür angewendet wurden.

Erhöhen Sie die Effizienz mit Paketen
Pakete ermöglichen es dir, Objektinstanzen in deinen Roblox-Erlebnissen zu erstellen, so dass die von dir vorgenommenen Updates für alle Instanzen des Pakets veröffentlicht werden.Wir verwendeten Pakete für fast jedes Objekt, das wir in die Station bringen, also mussten wir nicht jede Platzierung aufspüren, wenn wir Änderungen vornehmen mussten.Zum Beispiel verwendeten wir über 1.000 Wandplatteninstanzen eines Pakets und konnten Updates sofort veröffentlichen, indem wir das Paket modifizierten.
Folgen Sie diesen Tipps, wenn Sie Pakete verwenden:
Schalte die automatische Aktualisierungsfunktion in PackageLink ein.Alle Änderungen werden auf alle Verwendungen des Pakets angewendet, wenn dies aktiviert ist, wodurch Ihnen der Schritt der Verwendung der Funktion "alle aktualisieren" erspart wird.

Du kannst Pakete für SurfaceAppearance Objekte verwenden, um eine "Materialbibliothek" zu erstellen. Dadurch kannst du Bitmaps in einem SurfaceAppearance Objekt modifizieren und sie auf jedes Objekt veröffentlichen, das sie verwendet.Der folgende Screenshot zeigt die verwendeten Hauptmaterialien während der Demo.Wenn wir die Karten modifizieren mussten, mussten wir nur das Mastermaterial aktualisieren und das Paket neu veröffentlichen.
