Datasmith bringt Design-Daten aus einer Vielzahl von Quellanwendungen in die Unreal Engine, typischerweise zum Zweck des Aufbaus von Echtzeit-Visualisierungen und -Erfahrungen rund um diese Daten. Allerdings müssen während der Arbeit an diesen Visualisierungen und Erfahrungen in Unreal oft die Szenen- oder Design-Daten, auf denen die Arbeit basiert, geändert werden, um neue Anforderungen zu erfüllen oder Feedback von Stakeholdern zu berücksichtigen. Um mühsame und kostspielige Nacharbeiten zu vermeiden, müssen Sie in der Lage sein, diese nachgelagerten Änderungen zu integrieren, ohne die gesamte Arbeit zu verlieren, die Sie bereits im Unreal Editor geleistet haben.
Diese Seite beschreibt die verschiedenen Möglichkeiten, wie Sie Updates für Datasmith-Inhalte in Ihr Unreal-Projekt einziehen können, und was dabei mit Ihren Assets und Actors passiert. Sie haben zwei Optionen:
-
Reimportieren der kompletten Datasmith-Szene - Dies aktualisiert das Datasmith-Szene-Asset, um alle neuesten Änderungen einzubeziehen, die in Ihrer Quellszene vorgenommen wurden, und versucht, diese Änderungen mit der Arbeit, die Sie im Unreal Editor durchgeführt haben, in Einklang zu bringen. Siehe Vollständige Szene reimportieren unten.
-
Reimportieren einzelner von Datasmith importierter Assets - wie statische Meshs, Materialien oder Texturen. Dies ermöglicht es Ihnen, Änderungen an ausgewählten Assets zu verarbeiten, ohne den Rest der Datasmith-Szene zu beeinflussen. Siehe Einzelnes Asset reimportieren unten.
Für detaillierte Anweisungen zur Verwendung dieser Import-Workflows im Unreal Editor siehe Datasmith-Reimport-Workflow.
Vollständige Szene reimportieren
Bild für Großansicht anklicken.
Sie können eine gesamte Datasmith-Szene auf einmal reimportieren. Dieses Vorgehen aktualisiert alle von Datasmith in Ihrem Inhaltsbrowser erstellten Assets, um die neuesten Änderungen widerzuspiegeln, die Sie in Ihrer Quellanwendung oder Datendatei vorgenommen haben. Von dort aus können Sie die Datasmith-Szene-Actors in Ihren Levels selektiv aktualisieren, um sie mit der neuen Szenenhierarchie zu synchronisieren, die vom Datasmith-Szene-Asset verwaltet wird.
Änderungen an der Szenenhierarchie
Wenn Sie eine Datasmith-Szene reimportieren, wird die Szenenhierarchie im Datasmith-Szene-Asset sofort mit allen neuesten Änderungen aktualisiert, die Sie in Ihrer Quellszene vorgenommen haben. Nach dem Import enthält die Szenenhierarchie im Datasmith-Szene-Asset alle Informationen, als ob Sie die Szene zum ersten Mal frisch importieren würden.
Diese Änderungen an der Szenenhierarchie werden jedoch nicht unbedingt in den Unreal-Engine-Levels widergespiegelt, die Ihre Datasmith-Szene enthalten. Instanzen der Datasmith-Szene, die Sie in ein Level in Ihrem Projekt eingefügt haben, werden veraltet in Bezug auf die Szenenhierarchie im Level, bis Sie sie mit dem aktualisierten Asset synchronisieren.
Die Synchronisierung aktualisiert die Informationen im Datasmith-Szene-Actor und dessen Children im World Outliner, um das aktualisierte Asset wie folgt anzupassen:
-
Modifizierte Actors. Alle Actors, die Sie nicht im Unreal Editor modifiziert haben, werden sofort aktualisiert, um die neuesten Informationen über sie in der reimportierten Datasmith-Szene zu übernehmen. Alle Actors, die Sie modifiziert haben, werden aktualisiert, um die neuesten Informationen in der reimportierten Datasmith-Szene zu übernehmen, außer für Änderungen, die Datasmith als Überschreibungen verfolgt hat.
-
Neue Actors. Alle neuen Objekte, die Sie seit dem letzten Import zu Ihrer Quelldatei hinzugefügt haben, haben neue Actors, die in das Level hinzugefügt werden, um sie darzustellen.
-
Gelöschte Actors. Alle Objekte, die Sie in Ihrer Quelldatei gelöscht haben, haben ihre entsprechenden Actors aus dem Unreal Level entfernt – es sei denn, diese Actors enthalten andere Überschreibungen. Wenn der Unreal-Actor, der einem gelöschten Objekt entspricht, Überschreibungen enthält, wird er nicht aus dem Level gelöscht, bis Sie ihn explizit löschen. Alle Actors, die Sie in Unreal aus dem Level gelöscht haben, die aber noch in der Quelldatei existieren, werden standardmäßig nicht wieder zu Ihrem Level hinzugefügt. Sie können diese Option jedoch aktivieren, wenn Sie den Datasmith-Szene-Actor in Ihrem Level mit dem reimportierten Datasmith-Szene-Asset synchronisieren.
-
Parenting-Beziehungen. Die Parenting-Hierarchie der Actors im Level wird aktualisiert, um den Änderungen in der Quelldatei zu entsprechen.
Zum Beispiel veranschaulicht das folgende Vorher-Nachher-Bild:
-
Objekte, die in der Quellszene gelöscht wurden – in diesem Fall die Lift-Objekte – werden aus der Datasmith-Szene entfernt.
-
Änderungen, die an der Objekt-Parenting-Struktur in der Quellszene vorgenommen wurden – in diesem Fall die Lichter, die unter einem neuen Parent gruppiert werden – werden in der Datasmith-Szene widergespiegelt.
-
Objekte, die der Quellszene hinzugefügt wurden – in diesem Fall die Werkzeugkisten – werden der Datasmith-Szene hinzugefügt.
Bild für Großansicht anklicken.
Es gibt zwei Möglichkeiten, Ihren Datasmith-Szene-Actor mit seinem Asset zu synchronisieren:
-
Wenn Sie ein Datasmith-Szene-Asset reimportieren, können Sie automatisch alle Datasmith-Szene-Actors im aktuell geöffneten Level aktualisieren, die aus diesem Asset erstellt wurden. Dies ist eine einfache Vorgehensweise, die gut funktioniert, wenn Sie Ihre Datasmith-Szene nur zu einem einzigen Level hinzugefügt haben.
-
Sie können den Datasmith-Szene-Actor in einem Level jederzeit auf Abruf mit seinem Datasmith-Szene-Asset synchronisieren. Sie müssen auf diese Weise vorgehen, wenn Sie mehrere verschiedene Levels in Ihrem Projekt haben, die Instanzen Ihrer Datasmith-Szene enthalten, und Sie benötigen sie alle, damit alle Änderungen in Ihrer Quellszene widergespiegelt werden.
Für Details siehe Reimportieren von Datasmith-Inhalten.
Änderungen an Geometrie, Materialien und Texturen
Wenn Sie eine Datasmith-Szene reimportieren, geschieht Folgendes:
-
Datasmith erstellt Statisches-Mesh-, Textur- und Material-Instanz-Assets nur neu, wenn Sie diese in Ihrer Quelldatei seit dem letzten Import der Szene geändert haben.
-
Datasmith erstellt immer alle Parent-Material-Assets neu, unabhängig davon, ob sie in Ihrer Quelldatei geändert wurden oder nicht.
Wenn Datasmith ein Asset neu erstellt, kann es Änderungen überschreiben, die Sie an diesem Asset in Unreal vorgenommen haben!
Typischerweise sollten Sie keine Informationen verlieren, die Datasmith als Überschreibungen verfolgt, oder Informationen, die spezifisch für die Unreal-Darstellung der Objekte Ihrer Szene sind. Allerdings könnten Sie Änderungen verlieren, die Sie in Unreal an Informationen vorgenommen haben, die von Datasmith importiert wurden, aber nicht als Überschreibungen von Datasmith verfolgt werden. Zum Beispiel wird das Überschreiben eines Assets Änderungen überschreiben, die Sie in Unreal an den Interna eines Parent-Materialdiagramms oder an der Geometrie eines Statisches-Mesh-Assets vorgenommen haben.
Um zu vermeiden, dass Änderungen, die Sie an Ihren Assets in Unreal vornehmen, verloren gehen, haben Sie zwei Möglichkeiten:
-
Wenn Sie reimportieren, deaktivieren Sie das Process-Kontrollkästchen für den entsprechenden Asset-Typ im Reimport Options-Dialogfeld, um zu vermeiden, dass dieser Asset-Typ reimportiert wird. Wenn Sie beispielsweise ein importiertes Materialdiagramm in Unreal modifiziert haben und diese Änderungen nicht verlieren möchten, könnten Sie die Option Materials & Textures deaktivieren. Wenn es jedoch andere Material-Assets gibt, die Sie tatsächlich aus der Quelle aktualisieren möchten, funktioniert dieses Vorgehen nicht. In diesem Fall könnten Sie selektiv nur die Assets dieses Typs reimportieren, die Sie aktualisieren möchten; siehe Option 2. Einzelnes Asset reimportieren unten.
-
Wann immer Sie ein Asset modifizieren müssen, das Sie mit Datasmith importiert haben, duplizieren Sie das Asset, das Sie modifizieren möchten, in einen anderen Ordner und modifizieren Sie stattdessen das Duplikat. Aktualisieren Sie dann alle Verwendungen des ursprünglichen Assets, um stattdessen Ihr Duplikat zu verwenden. Wenn Sie reimportieren, wird das ursprüngliche Asset überschrieben, aber Ihr Duplikat bleibt unberührt.
Wenn Sie die Szene nach dem Löschen von Objekten oder Materialien in Ihrer Quelldatei reimportieren, löscht Datasmith nicht die Assets, die es zuvor für diese Objekte erstellt hat. Die Assets bleiben in Ihrem Inhaltsbrowser, sodass Sie sie weiterhin im Unreal Editor als eigenständige Assets verwenden können, außerhalb des Kontexts der Datasmith-Szene. Wenn Sie jedoch einen Datasmith-Szene-Actor in einem Ihrer Levels synchronisieren, um das reimportierte Datasmith-Szene-Asset anzupassen, werden Instanzen dieser gelöschten Assets entfernt (es sei denn, sie enthalten Überschreibungen).
Das folgende Vorher-Nachher-Bild veranschaulicht, was mit Statisches-Mesh-Assets passiert, wenn Sie eine Szene reimportieren:
-
Objekte, die Sie in der Quellszene modifiziert haben – die Lichtkugel in diesem Beispiel – werden in Unreal neu erstellt, und die alten Versionen der Assets werden überschrieben.
-
Objekte, die Sie in der Quellszene gelöscht haben – die gelben Hebeelemente in diesem Beispiel – werden nicht aus dem Inhaltsbrowser Ihres Projekts entfernt.
-
Objekte, die Sie der Quellszene hinzugefügt haben – die Werkzeugkiste in diesem Beispiel – werden dem Inhaltsbrowser als neue Assets hinzugefügt.
Bild für Großansicht anklicken.
Denken Sie daran, dass eine Änderung an einem Asset in der Unreal Engine sofort überall widergespiegelt wird, wo das Asset verwendet wird. Das Gleiche gilt, wenn Datasmith ein Asset während eines Reimportvorgangs neu erstellt oder modifiziert. Wenn Sie beispielsweise die Geometrie eines Objekts in Ihrer Quellanwendung ändern, werden nach dem Reimport des entsprechenden Statisches-Mesh-Assets alle Actors in allen Levels, die dieses Statisches-Mesh-Asset instanzieren, automatisch aktualisiert, um die neue Geometrie anzuzeigen.
Wann Sie die vollständige Szene reimportieren sollten
Wir empfehlen, in den meisten Fällen die vollständige Szene zu reimportieren. Insbesondere müssen Sie die vollständige Szene reimportieren, wenn:
-
Sie neue Objekte oder Materialien aus Ihrer Quellszene einbringen müssen, die zuvor in Unreal nicht existierten.
-
Das Layout der Szenenobjekte im 3D-Raum sich geändert hat oder Objekte neue Parenting-Beziehungen in der Szenenhierarchie haben, die in Unreal widergespiegelt werden sollen.
-
Sie Ihre Assets nicht einzeln reimportieren können. Dies kann entweder daran liegen, dass zu viele Objekte in Ihrer Quelldatei geändert wurden, um sie einzeln zu bearbeiten, oder weil Sie nicht wissen, welche Assets geändert wurden.
Einzelnes Asset reimportieren
Bild für Großansicht anklicken.
Anstatt die gesamte Datasmith-Szene erneut zu importieren, können Sie ausgewählte Unreal-Engine-Assets reimportieren, die durch den Datasmith-Importprozess erstellt wurden – zum Beispiel einzelne Statisches-Mesh-Assets, Materialien oder Texturen.
Wenn Sie diese Option verwenden, passiert fast genau dasselbe wie unter Änderungen an Geometrie, Materialien und Texturen oben beschrieben, jedoch beschränkt auf das einzelne Asset, das Sie auswählen. Die einzigen Unterschiede sind:
-
Das Asset wird immer von Grund auf neu erstellt, auch wenn es in der Quellszene nicht geändert wurde. Zum Beispiel wird im Fall eines Statisches-Mesh-Assets die Geometrie des statischen Meshs immer neu aufgebaut, sodass alle Änderungen, die Sie an der Geometrie in Unreal vorgenommen haben, überschrieben werden.
-
Das Datasmith-Szene-Asset ändert sich nicht, sodass keine Änderungen an der Szenenhierarchie in einem Level vorgenommen werden, in das Sie Ihre Szene eingefügt haben, unabhängig davon, ob Sie die Datasmith-Szene-Actors in diesen Levels erneut synchronisieren.
-
Da sich das Datasmith-Szene-Asset nicht ändert, verfolgt es weiterhin Überschreibungen Ihres Assets im Vergleich zu dem Zeitpunkt, als Sie die Szene zuletzt als Ganzes importiert haben. Wenn Sie die Überschreibungen auf Ihrem reimportierten Asset zurücksetzen, wird es in den Zustand zurückversetzt, den es beim letzten Import der gesamten Datasmith-Szene hatte.
Wann Sie einzelne Assets reimportieren sollten
Das Reimportieren einzelner Assets kann eine gute Wahl sein, wenn:
-
Sie Änderungen an einer kleinen Anzahl von Assets einbringen möchten, aber wissen, dass die gesamte Datasmith-Szene Änderungen an anderen Assets oder an der Szenenhierarchie enthält, die Sie nicht einbringen möchten.
-
Sie andere Datasmith-Importeinstellungen auf spezifische Assets anwenden möchten, als Sie beim Import der gesamten Datasmith-Szene angewendet haben.
Dieser Workflow kann besonders nützlich für CAD-Modelle sein, die beim Import tesseliert werden müssen, da Sie unterschiedliche Tesselierungseinstellungen auf verschiedene Teile der Datasmith-Szene anwenden können. Dies kann Ihnen helfen, die Leistung Ihrer Szene zu optimieren, indem Sie die Anzahl der Dreiecke in jedem Statisches-Mesh-Asset kontrollieren. Zum Beispiel könnten Sie Ihre CAD-Datei mit niedrigen Auflösungseinstellungen importieren und dann selektiv eine kleinere Anzahl wichtiger Statisches-Mesh-Assets in höheren Auflösungen reimportieren.
Sie können denselben Zweck erreichen, indem Sie ausgewählte Statisches-Mesh-Assets retesselieren, anstatt sie zu reimportieren. Im Gegensatz zum Reimport importiert das Retesselieren die Geometrie des Assets nicht erneut aus der CAD-Szenendatei. Es regeneriert das dreieckige Mesh für das Statisches-Mesh-Asset basierend auf der zuletzt importierten Geometrie unter Verwendung der neuen Einstellungen, die Sie bereitstellen. Für Details siehe Retesselieren von CAD-Geometrie.
Datenerhaltung
Egal, ob Sie die komplette Datasmith-Szene oder einzelne Assets reimportieren, ein Großteil der Arbeit, die Sie in Unreal geleistet haben, bleibt im Reimportprozess erhalten. Dies umfasst:
-
Eigenschaften, die von Datasmith als Überschreibungen verfolgt werden. Siehe Datasmith-Überschreibungen unten.
-
Eigenschaften, die exklusiv für die Unreal Engine sind. Siehe Unreal-Engine-Eigenschaften unten.
Unreal-Engine-Eigenschaften
Sie sollten niemals Änderungen verlieren, die Sie an Eigenschaften Ihrer Assets und Actors vornehmen, die spezifisch für Unreal sind – das heißt, Eigenschaften, die Datasmith nicht aus Ihrer Quelldatei importiert.
Angenommen, Sie verwenden zum Beispiel Datasmith, um eine Szene zu importieren, dann deaktivieren Sie dieCast Shadows-Eigenschaft eines Ihrer importierten Statisches-Mesh-Actors im Unreal Editor. Wenn Sie das Datasmith-Szene-Asset reimportieren und den Datasmith-Szene-Actor in Ihrem Level synchronisieren, bleibt die „Cast Shadows“-Eigenschaft deaktiviert.
Datasmith-Überschreibungen
Wenn Sie eine Datasmith-Szene oder ein -Asset reimportieren, sollten Sie niemals Änderungen verlieren, die Sie an einem Unreal-Engine-Asset oder -Actor vorgenommen haben, den Datasmith als eine Überschreibung erkennt. Überschreibungen umfassen Dinge wie die Zuordnung von Materialien zu Ihren Statisches-Mesh-Assets und Actors sowie die 3D-Transformationen von Actors in Ihren Levels, die als Teil einer Datasmith-Szene erstellt wurden.
Für Details darüber, welche Änderungen als Überschreibungen betrachtet werden, siehe Datasmith-Importprozess.
Das nächste Mal, wenn Sie Überschreibungen auf ein Asset oder einen Actor zurücksetzen, nachdem Sie eine Datasmith-Szene reimportiert haben, werden das Unreal-Asset oder der -Actor auf seine Werte nach dem Reimport zurückgesetzt, nicht auf seine ursprünglichen Werte. Zum Beispiel:
-
Angenommen, Ihre Szene enthält ein Statisches-Mesh-Asset namens „Chair“, und nach Ihrem erstmaligen Datasmith-Import ist ihm ein Material namens „Color_00000000“ zugewiesen.
-
Im Unreal Editor ändern Sie dieses Asset, um ein neues, physikalisch basiertes Material namens „Black Leather“ zu verwenden. Datasmith verfolgt diese Änderung als eine Überschreibung.
-
Nun ändern Sie in Ihrer Quellszene die Farbeigenschaften des Stuhls und reimportieren das Asset oder die Datasmith-Szene, die es enthält. Zunächst wird Ihrem reimportierten Asset immer noch das „Black Leather“-Material zugewiesen, das Sie in Unreal zugewiesen haben.
-
Wenn Sie die Überschreibungen auf dem Asset zurücksetzen, wird es nicht auf die Verwendung des ursprünglichen „Color_00000000“-Materials zurückgesetzt, sondern auf das neue Material-Asset, das Datasmith generiert hat, um die neuen Farbeigenschaften des Stuhls anzupassen.
Auto-Reimport
Sie können den Unreal Editor so konfigurieren, dass er ausgewählte Ordner auf geänderte Assets überwacht und diese Assets automatisch reimportiert.
Wir empfehlen nicht, dieses System für Ihre Datasmith-Szene-Assets oder für die einzelnen von Datasmith erstellten Assets zu verwenden. Verwenden Sie den Auto-Reimport nur für andere Arten von Modellen oder Assets, die Sie Ihrem Projekt hinzufügen, wie FBX-Dateien, die Sie separat als zusätzliche Dekoration um Ihre Datasmith-Modelle importieren.
Weitere Informationen zur Einrichtung dieses Systems für Ihre Nicht-Datasmith-Inhalte finden Sie unter Auto-Reimport.