Unable to use Promoted Target - UE5 sucht am falschen Ort?

  • Hallo zusammen :)


    Beim Packagen sucht Unreal das promoted target (Win64Shipping) von meinem Projekt, findet es aber nicht, da die Engine vorher auf einer externen Festplatte installiert war, als ich das Projekt erstellt habe. Ich nutze jetzt also :/C, er sucht aber noch in :/E.

    Kann ich der Engine irgendwie sagen, dass sie von nun an in C suchen (also jenes BuildTool nutzen soll) ?


    Wie machen es sonst Entwickler, wenn sie auf einem neuen PC an ihrem Projekt weiterarbeiten und es dort packagen wollen? Da muss es ja eine Lösung geben.


    Danke und liebe Grüße :)

    • Offizieller Beitrag

    Das liegt vermutlich daran, dass Unreal auf Temporäre Dateien zugreift. Unreal baut das Projekt nicht jedes mal neu da sonst die Ladezeit zu lange wäre.

    Darum erstellt Unreal einen Ordner, macht doch alles wichtige rein und greift beim nächsten Start wieder auf diesen Ordner zu.


    Ich vermute. Unreal versucht auf die Pfade zu zugreifen die in diesem Ordner gespeichert sind.


    Lösung:


    1.Sichere dein Projekt. (Projekt gut sichern)

    2. Gehe in dein Projektverzeichnis, und Lösche dort die beiden Ordner Intermediate und Saved.


    Beim nächsten Start wird die Ladezeit länger sein, da Unreal diese Ordner neu erstellt und aufbaut und ich glaube danach sollte es wieder gehen.

    Ich würde mich freuen wenn du uns mitteilst ob es geklappt hat.

  • Hi :)


    Vielen Dank erstmal für die schnelle Antwort.


    Ich habe die beiden Ordner im Projekt gelöscht. (Oder meintest du in der Engine?) Genau, die wurden beide neu erstellt. Leider zeigt er beim Packagen im Log wieder:


    LogUObjectHash: Compacting FUObjectHashTables data took 6.06ms

    LogTurnkeySupport: Project requires temp target (Landmass plugin is enabled)

    LogLauncherProfile: Unable to use promoted target - ../../../../Nordgard/Binaries/Win64/UnrealGame-Win64-Shipping.target does not exist.


    Ich hatte das ja schonmal. Es geht nur, wenn ich die Engine wieder auf der Externen installiere und dort das Projekt packe. Da es dann aber doppelt so langsam ist, hätte ich es natürlich lieber direkt auf dem PC.

  • Ach, und ich sollte noch erwähnen, dass es bei allen, selbst neu erstellten Projekten ebenfalls nicht geht. Ich hatte bereits epic und die engine ein paar mal neu installiert, aber er will das shipping target wohl für immer auf :/E suchen ^^

  • Das klingt merkwürdig. Eher so, als wenn er die Linkerdateien auf E sucht. Das sollte aber eigentlich nicht der Fall sein, denn diese Dateien haben mit dem eigentlichen Projekt erst ab der Compilierung etwas zu tun.


    Das kann zwar etwas dauern, aber hast du mal versucht nach diesem Laufwerkseintrag/Pfad in den Inidateien zu suchen?

  • Ich begebe mich mal auf die Suche. So gut kenn ich mich damit allerdings nicht aus. Aber mal schauen.


    Habe jetzt mal ganz frisch ein neues Projekt erstellt und den Package gestartet. Ohne extra PlugIns. (Hm, ob da noch n PlugIn vorher im Weg war?) Diesmal stand da was von:


    Found matching version in :/C ...und ...does not require temp target


    Dann passierte nichts mehr im log. also das Packaging lief die ganze Zeit, aber ohne weiteren Eintrag oder Ende. Stillstand.

    • Offizieller Beitrag

    Du solltest Unreal und deine Projekte unbedingt auf einer SSD haben und nicht auf einer externen Festplatte.

    Ich hab mir extra eine SSD für Spiele und Projekte geholt.

    WIndows installiert manche dinge immer auf C: platte weshalb es sich das nicht ganz vermeiden lässt das C: voll gemüllt wird.

    Ich hab also 2 SSD eine für Windows und eine wo ich Steam und Epicgames hin installiere.


    Ich versuche mal das problem zu deuten:


    Zitat

    LogUObjectHash: Compacting FUObjectHashTables data took 6.06ms:

    Hier hat wohl eine Komprimierung sehr lange gedauert. 6.06ms das könnte darauf hindeuten, dass es lese probleme gab. Eventuell hat die UE die Komprimierung sogar übersprungen. Die Komprimierung passiert normalerweise um Speicherplatz freizugeben. Wenn das nicht funktioniert könnte dass die Performanceeinbrüche erklären.


    Zitat

    LogTurnkeySupport: Project requires temp target (Landmass plugin is enabled):

    Stichtwort "temp traget"

    Im Endeffekt heißt der Fehler: Hier wird ein Temporäres Ziel benötigt weil das Landmass plugin installiert ist. Dem Landmass plugin fehlt also offensichtlich ein Pfad oder die Berechtigung dort zu schreiben.


    Zitat

    ../../../../Nordgard/Binaries/Win64/UnrealGame-Win64-Shipping.target

    promoted target kann nicht als Ziel verwendet werden weil das Ziel nicht exestiert.


    Meine Vermutung ist folgendes:

    Es gibt absolute Pfade zb C://test/test und es gibt Relative Pfade zb ....// oder ./


    ..../ sagt im gehe 4 Ordner zurück dort findest du die Datei XYZ.

    ändert sich hier die Reihefolge, dann funktoniert der relative Pfad nicht mehr.


    Bei den absolutenpfade das selbe: Gehe nach C:// ändert sich aber das Laufwerk, dann werden die Pfade nicht mehr gefunden.


    Ich hatte dir ja gesagt: Du sollst die beiden Ordner löschen. Unreal erstellt die Pfade dann neu und es sollte wieder funktonieren.

    Bei der jetzigen Fehlermeldung Meldung ist aber die Rede Plugins weshalb ich vermute, dass die Plugins durch die Pfad Änderung nicht mehr korrekt funktionieren.


    Das ist mal meine Theorie.


    Vielleicht lässt sich das Problem sehr einfach lösen in dem du die Plugins deinstallierst und neu installierst weil dann die pfade neu angelegt werden. (Das könnte klappen)

    Ein weg um herauszufinden ob es an den Plugins liegt, wäre es alle Plugins zu deaktiveren und alles aus deinem Projekt zu kicken was mit den Plugins zu tun hat. Sollte dann dein Projekt wieder laden, weißt dass dein Problem definitiv die Plugins sind.

    Dann weißt du wenigstens in welcher RIchtung du weiter suchen musst.


    Eins solltest du aber unbedingt tun: Wie oben schon erwähnt sollte dein Projekt und Unreal auf einer SDD laufen und nicht auf einer externen platte. Dass solltest du unbedingt umbauen.

    Spiele wie Starfield sind unspielbar von einer externen Festplatte und wenn du auf so einer Platte entwickeln willst, wirst du immer nur Schwierigkeiten haben auch wenn es jetzt echt nerven kostet dein Problem zu lösen.


    EDIT ich glaube es ziemlich wahrscheinlich, dass die Plugins deine Probleme verursacht.

  • Ich danke Dir zunächst für all die Überlegungen. Da ist mein Horizont leider noch etwas zu beschränkt ^^


    Ich bin deinen Anweisungen gefolgt und tatsächlich packaged er jetzt weiter. Promoted target ist nun kein Problem mehr. Jetzt gerade läuft das Packaging. Ich warte mal noch ab. Doch bis jetzt steht im Log:


    LogUObjectHash: Compacting FUObjectHashTables data took 4.85ms

    LogTurnkeySupport: Project does not require temp target

    LogLauncherProfile: Found promoted target with matching version at ../../../Engine/Binaries/Win64/UnrealGame-Win64-Shipping.target


    Aber auch:


    LogD3D12RHI: Display: Temp texture streaming buffer not large enough, needed 8388608 bytes

    LogD3D12RHI: Display: Temp texture streaming buffer not large enough, needed 8388608 bytes

    ..etc ne Menge davon.


    Ist übrigens noch neu für mich. Bisher hatte ich sowas nie im Log. Erst seit ich von der UE503 auf die 5.3 geswitched bin. Auch die Performance ist seitdem schlechter.


    Ich denke ich habe noch vieles in den Project settings zu tun.

    • Offizieller Beitrag

    LogD3D12RHI: Display: Temp texture streaming buffer not large enough, needed 8388608 bytes

    Steht doch da erbraucht 8GB Grafikspeicher.


    Lösungen:

    1. Alter oder falscher Grafikkarten Treiber (Treiber prüfen)

    2. Die DirectX Version prüfen. Du hast eine alte DirectX Version, dein DirectX ist falsch eingestellt.

    3.Deine Performance optimieren, kleine Texturen, weniger Texturen. An der Stelle auch mal deine Drawcalls Checken.

    Möglich wäre auch dein Streaming Puffer zu erhöhen. Aber ich befürchte deine Probleme solltest du an der Performance angehen.


    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

  • Was die Texturen angeht, könnte dir dieses Tutorial auch sehr nützlich sein. Wenn du viel Assets verbaut hast, wirst du unter Umständen auch viele sehr hochauflösende Texturen verbaut haben. Unter anderem auch die Normalmaps, was völlig unnötig ist, die auch in HD oder gar 4K zu streamen. Meine Performance wurde um ein vielfaches gesteigert, als ich diese Texturen optimiert habe.

    https://www.youtube.com/watch?v=PKpE2CRwPcw&t=196s

  • Danke für eure Tipps. ;) Die Tutorials verfolge ich heute mal.


    Shader complexity und lightmass sieht ganz gut aus. Der ultra dynamic sky +weather drückt mir auf die performance sowie der Offset (Wind) einiger Bäume. An Texturen habe ich bisher tatsächlich noch nichts optimiert. Fast alle Assets sind auf Nanite. 8K habe ich möglichst vermieden, da schau ich aber noch mal alle durch.

  • Das Logfile ist auch nicht immer einfach zu lesen. Kopiere doch mal das gesamte Logfile hier rein, weil viele Fehler passieren schon weit vorher. Und wir haben hier so 2 oder 3 Leute, die wirklich etwas mit dem Logfile anfangen können.

    Also, sobald ich das Water und/oder LandmassPlugIn aktiviere, erscheint bloß das im Log:

    Logfile lässt sich hier nicht hochladen, daher - Logfile:


    log="C:/Nordgard/Intermediate/TurnkeyLog_1.log" -project="C:/Nordgard/Nordgard.uproject" -Device=Win64@DESKTOP-5N6H8D1'

    [2023.11.11-14.16.27:121][897]LogSlate: Window 'SDK Not Setup' being destroyed

    [2023.11.11-14.16.27:185][897]LogUObjectHash: Compacting FUObjectHashTables data took 3.84ms

    [2023.11.11-14.16.30:083][897]LogTurnkeySupport: Project requires temp target (Water plugin is enabled)

    [2023.11.11-14.16.30:083][897]LogLauncherProfile: Unable to use promoted target - ../../../../Nordgard/Binaries/Win64/UnrealGame-Win64-Shipping.target does not exist.

    [2023.11.11-14.16.39:483][208]LogDerivedDataCache: C:/Users/sasch/AppData/Local/UnrealEngine/Common/DerivedDataCache: Maintenance finished in +00:02:45.260 and deleted 0 files with total size 0 MiB and 0 empty folders. Scanned 87882 files in 82035 folders with total size 15909 MiB.


    Und das hier, wenn ich jene PlugIns deaktiviere und dann package:


    LogTurnkeySupport: Project does not require temp target

    LogLauncherProfile: Found promoted target with matching version at ../../../Engine/Binaries/Win64/UnrealGame-Win64-Shipping.target

  • Ok, habe ich gemacht. Klappt zwar noch nicht, doch folgenden Unterschied hat das gemacht:


    LogTurnkeySupport: Selected target: Nordgard

    LogLauncherProfile: Unable to use promoted target - ../../../../Nordgard/Binaries/Win64/Nordgard-Win64-Shipping.target does not exist.


    Er hat ein target gefunden mit dem Spielnamen. Ob PlugIns aktiviert oder nicht.

    Darf man sein Projekt vllt nicht umbenennen?

  • Kommt drauf an, wie du das Projekt umbenannt hast. Normalerweise ist es mit Umbenennen im Windows-Explorer nicht getan.

    Gibt aber auch dazu Tutorials im Internet. Musst mal schauen, ob du da alle Schritte richtig gemacht hast. Sind seit der Engine-Version 5 allerdings auch nicht mehr allzu viele Schritte. Wobei die meisten Tutorials dabei eventuelle Plugins nicht berücksichtigen.


    Externer Inhalt youtu.be
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

    • Offizieller Beitrag

    Du solltest wenn möglichst nichts über den Explorer löschen oder verschieben. Falls du dass gemacht hast, könnte das dass Problem sein. Unreal funktioniert wie ein Registrierungssystem. Wenn du ein Plugin installierst, dann wird dies intern angelegt und die Pfade werden gespeichert. Wenn du es mit Unreal verschiebst, dann werden diese dinge umgeschrieben. Wenn du aber einfach so etwas im Explorer verschiebst, kann unreal den Bezug dazu darauf verlieren.


    Was auch zum Problem werden kann, sind zu lange Dateipfade die über 255 Zeichen hinausgehen.


    Ich bin mir nicht mehr sicher aber wenn du Content Browser einen Rechtsklick auf ein Asset machst, konntest du dort pfade reparieren. Möglicherweise ist dieser Punkt auch bei Asset Actions zu finden.

    So war es zumindest bei der UE4.


    Edit gerade ein Screen gesehen Asset Location könntest dir auch mal anschauen.



    Wenn du einen Reload machst, kommt es eventuell bei dem Asset oder bei dem Plugin das Probleme macht zu einem Fehler.

  • ok. Danke. So, bin euren Guides gefolgt.


    Jetzt aktualisiere ich nochmal Visual Studios 2022 - da gab es ein Aktualisierungsproblem im Installer, aber das läuft nun. Ist im Projekt auch als Compiler Version ausgewählt.

    Danach öffne und versuche ich nochmal, das Projekt zu packen.


    Was wäre eigentlich, wenn ich ein komplett neues Projekt erstelle und den Content Folder aus meinem aktuellen Projekt da hinein kopiere?

  • Habe es mal probiert und zum Test ein neues 'plug-in-loses' Projekt erstellt und den Content Folder ersetzt.

    Einstellungen korrigiert. Lädt ohne Meldungen.


    Dann der Packageversuch:

    Seit einer Stunde läuft es und bisher steht dort bloß:


    LogUObjectHash: Compacting FUObjectHashTables data took 3.31ms

    LogTurnkeySupport: Project does not require temp target

    LogLauncherProfile: Found promoted target with matching version at ../../../Engine/Binaries/Win64/UnrealGame.target

    LogDerivedDataCache: C:/Users/sasch/AppData/Local/UnrealEngine/Common/DerivedDataCache: Maintenance finished in +00:02:47.282 and deleted 0 files with total size 0 MiB and 4 empty folders. Scanned 87971 files in 82535 folders with total size 15291 MiB.

    LogAudioMixer: Display: Audio Buffer Underrun (starvation) detected. InstanceID=1


    Das ist alles. Kein Compiling, cooking & Co.. Mehr wird da wahrscheinlich auch nicht kommen. Eine halbe Stunde lass ich es mal noch laufen lassen.


    Ach, und laut Taskmanager läuft CPU bei Unreal nur auf 1% ca...