Übersicht
Das Sammlungs-Manager Scripting-Subsystem wurde erstellt, um über Blueprints Zugang zum Sammlungssystem zu erhalten. Dies umfasst die Fähigkeit, Sammlungen zu erstellen und zu löschen sowie Assets innerhalb einer bestimmten Sammlung hinzuzufügen, zu entfernen und nach Assets zu suchen.
Die Sammlungsverwaltung ist derzeit über das Asset-Tags-Subsystem für Blueprints möglich. Dieses System bietet sowohl Editor- als auch Spiel-Funktionalität für Sammlungen. Die Editor-Funktionalität umfasst die Fähigkeit, Sammlungen zu erstellen, zu löschen und zu modifizieren, während die Spiel-Funktionalität nur die Fähigkeit zum Lesen und Suchen von Sammlungen bietet.
Einschränkungen der Sammlungs-Manager-Subsystem-Adressen
Es gibt zwei Einschränkungen des Asset-Tags-Subsystems, die durch das neue System behoben werden.
Inhaltscontainer
Vor Unreal Engine 5.6 wurden alle Sammlungen gespeichert und einem Basis-Spielprojekt zugeordnet. Um eine stärker modularen Workflows zu unterstützen (z. B. in Metaverse-Workflow-Projekten), wurden Sammlungscontainer eingeführt. Sie bieten die Fähigkeit, Sets von Sammlungen einem anderen Projekt als dem Basis-Spielprojekt zuzuordnen. Das Sammlungs-Manager Scripting-Subsystem erlaubt Blueprints den Zugriff auf diese Container, wodurch ein Blueprint-Autor Zugang zu Sammlungen in verschiedenen Projekten erhält.
Zugänglichkeit der Sammlung
Im Hintergrund haben Sammlungen drei verschiedene Ebenen der Zugänglichkeit:
Lokal: Keine Quellkontrolle. Lokal auf dem Computer des Benutzers gespeichert und nur für diesen Benutzer zugänglich.
Privat: Quellkontrolle, aber nur für den Autor-Benutzer zugänglich.
Freigegeben: Quellkontrolle und alle im Team können darauf zugreifen.
Das Asset-Tags-Subsystem gibt diese Freigabetypen nicht für Blueprints frei, wodurch es unmöglich wird, zwischen Sammlungen desselben Namens, aber mit unterschiedlichen Freigabetypen zu unterscheiden. In der aktuellen Form gibt das System das erste gefundene Element mit einem passenden Namen zurück, wenn ein Sammlungsname angegeben wird. Das kann zu Problemen führen, wenn zwei Sammlungen denselben Namen, aber unterschiedliche Freigabetypen haben, da der Blueprint-Autor unbeabsichtigt die falsche Sammlung als Ziel haben kann.
Das Sammlungs-Manager Scripting-Subsystem legt den Freigabetyp offen und verlangt von einem Autor, dass er genau angibt, welche Sammlung er als Ziel hat:
Weitere Verbesserungen
Das Asset-Tags-Subsystem hätte zwar erweitert werden können, es gab aber zwei Hauptgründe für die Erstellung eines neuen Subsystems.
| Verbesserung | Beschreibung |
|---|---|
Klarere Benennung für verbesserte Auffindbarkeit | Durch die Vergabe eines Namens, der zur zugrundeliegenden Funktion passt, ist es für Blueprint-Autoren einfacher, das System zu ermitteln und zu erfahren, wofür es verwendet wird. |
Editor-exklusive Implementierung | Das Asset-Tags-Subsystem kann sowohl für den Editor als auch für das Spiel kompiliert werden. Das Sammlungs-Manager Scripting-Subsystem wird jedoch nur für den Editor kompiliert, wodurch jegliche Mehrdeutigkeit bezüglich seiner Verwendung beseitigt wird. |
Funktionalitätsänderungen
Die folgenden Editor-exklusiven Funktionen des Asset-Tags-Subsystems sind nun veraltet. Für sie sollte zu ihrem Äquivalent im Sammlungs-Manager Scripting-Subsystem gewechselt werden:
| Veraltete Funktionen: | Aktuelle Funktionen: |
|---|---|
| Asset-Tags-Subsystem | Sammlungs-Manager Scripting-Subsystem |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
| |
| |
| |
| |
| |
| |
| |
|
Die folgenden In-Game-Funktionen werden weiterhin für die Verwendung zur Laufzeit unterstützt:
CollectionExistsGetCollectionsGetAssetsInCollectionGetCollectionsContainingAssetGetCollectionsContainingAssetDataGetCollectionsContainingAssetPtr