Konvertierung Projekt von 4.24 auf 4.27

  • Servus Leute,


    ich hoffe mal, ich bin hier in diesem Forum-Abteil richtig. Ansonsten gerne verschieben.

    Ich möchte von der Version 4.24 auf 4.27 umsteigen.


    Als erstes habe ich den kompletten Ordner meines Levels (v4.24) kopiert.

    Dann starte ich die Version 4.27 und wähle in der Auflistung das kopierte Projekt aus.

    Soweit klappt alles einwandfrei. Unreal beginnt dann verschiedenste Sachen zu kompilieren.


    Vor dem kopieren des Originalprojektes hab ich alle Plug-Ins ausgeschaltet, damit es da zu keinen

    Problemen kommt, wenn es eines für die Version 4.27 nicht geben sollte.

    Die Fehlermeldung hab ich mal kopiert und in der angehängten TXT Datei mit hochgeladen.


    Sagen diese Zeilen jemandem von euch was?

    Von meiner Seite aus könnte das auch Chinesisch oder Thailändisch oder Russisch sein.

    Das kann ich genauso wenig lesen.


    Was müsste ich anhand dieser Fehlermeldung ändern, damit ich mein Projekt erfolgreich konvertieren/upgraden kann?


    Danke Leute, dass sich das jemand angeschaut hat.

    Bin für jede Hilfe dankbar.


    Bis denne. :)


  • Als erstes habe ich den kompletten Ordner meines Levels (v4.24) kopiert.

    Wohin hast du den Ordner deines Levels kopiert?
    Wenn man einen Ordner aus dem Projekt raus nimmt, während irgendwas drauf verlinkt, ist es immer mit Fehlern verbunden...


    Vor dem kopieren des Originalprojektes hab ich alle Plug-Ins ausgeschaltet, damit es da zu keinen

    Problemen kommt, wenn es eines für die Version 4.27 nicht geben sollte.

    Eigentlich fügt man Plugins erst zum Projekt hinzu, wenn man weiß, dass man die Engine nicht mehr wechseln wird...


    Solltest du irgendein Plugin verwendet haben, das nicht mehr vorhanden ist, wird alles was du damit gemacht hast, unbrauchbar und muss neu gemacht werden.


    Man kann zwar ein Plugin manuell compilen, davon hab ich aber keine Ahnung...


    Von meiner Seite aus könnte das auch Chinesisch oder Thailändisch oder Russisch sein.

    Das kann ich genauso wenig lesen.

    Ist englisch gemixt mit deutsch, was du wohl auch beides nicht kannst, hehe



    So wie es für mich aussieht, fehlt da auch noch was aus der Fehlermeldung:

    fatal error LNK1120: 1 nicht aufgel?ste Externe

    Externe was?



    Was müsste ich anhand dieser Fehlermeldung ändern, damit ich mein Projekt erfolgreich konvertieren/upgraden kann?

    Wenn dein Projekt ein Code-Projekt ist, dann musst es in eins ohne Code umwandeln, hab aber vergessen wie das genau funktioniert, hab ich bisher nur einmal gemacht, eben wegen diesem Problem...


    Wenn ichs noch richtig weiß, muss man dazu die Ordner "Source" und "Saved" im Projekt-Ordner löschen, ebenso wie die .SLN Datei.

    Danach das Projekt starten und compilen lassen, danach sollte auch der Wechsel in ne andere Engine funzen.


    Um es genau sagen zu können, müsste ich das aber erst nochmal testen, ist schon ne ganze Weile her...



    Ansonsten kannst das Projekt auch manuell compilen, wovon ich aber überhaupt keine Ahnung hab.

  • Sieht so aus als ob dein ThirdPersonCharacter.cpp ein Problem im "OnResetVR" hat. Du rufst darin UHeadMountedDisplayFunctionLibrary::ResetOrientationAndPosition auf. Das kann er nicht auflösen.


    Auf VR in C++ hatte ich nie Bock von daher kann ich nur raten - entweder fehlt ein Plugin für diese VR Funktion oder das wurde in 4.27 geringfügig geändert?



    Ich hasse es Butter Fly Games zu widersprechen - aber vom ordner "Source" würde ich die FInger lassen, da sind die Sourcen drin, ohne die... kann auch nix kompiliert werden. Wenn es nur ne leere Klasse ist kann man das vielleicht versuchen, aber normal sollte man ja auch code drin haben - also in einem c++ projekt meine ich.

  • Du hast einen Fehler beim Kompilieren der C++ Codes.


    Falls es sich um ein C++ Projekt handelt würde mal vorschlagen, dass du den ganzen Intermediate Ordner löscht und die Visual Studio Projekt Dateien neu generierst:


    Das wird den Fehler nicht lösen, sorgt aber dafür, dass dort schon Mal alle Probleme eliminiert sind.

    Der Fehler selbst ist, dass sich hier einige Symbole nicht mehr auflösen lassen (hier Head Mounted Display also VR). Das kann sehr gut sein, denn UE4 ist deutlich Modularer geworden und viele Codes sind vom Engine Modul in eigene Module oder Plugins gewandert, dazu musst du vielleicht auch deine *.build.cs files etwas anpassen, dazu gehört auch das HMD zeugs.


    Edit: Anbei noch einmal eine Build.cs in der das HeadMountedDisplay Modul hinzugefügt wurde:

    Wenn dies der Fall ist lässt sich der Inhalt des Moduls über includes innerhalb deines eigenen Moduls nutzen.


    Du wirst aber falls du weitere C++ Codes hast, mehr Fehler bekommen, da sich zwischen UE4 releases gerne mal einiges ändert.


    Und bevor ich es vergesse:

    Immer eine Sicherheitskopie erstellen oder Source Control nutzen, denn ein Engine switch ist eine riesige Änderung bei der gut was kaputt gehen kann.

  • Hi Leute,


    ich probier mal eure Fragen so gut wie es geht zu beantworten.


    Kopieren:

    Wenn man normalerweise ein älteres Projekt mit einer neuen Engine öffnen will, dann wird man ja gefragt, ob man das Projekt jetzt gleich konvertieren möchte oder nicht oder ob man vorher eine Kopie anlegen möchte.

    Sage ich, dass eine Kopie konvertiert werden soll, so wird zwar angefangen das Projekt zu kopieren - bei 9% hängt sich die Engine aber dann auf (auch nach mehreren Stunden über Nacht keine Veränderung).

    Also habe ich im Voraus den kompletten Projektordner händisch kopiert (fängt da das Problem schon an?)

    Auf jeden Fall kann ich dann das kopierte Projekt in UE4.27 auswählen - er fragt wieder ob ich an Ort und Stelle konvertieren möchte - sage "Ja" und er beginnt. Bis zur besagten Fehlermeldung.


    ausgeschaltete PlugIns:

    Warum habe ich die VOR dem Kopieren ausgeschaltet?

    Bei den ersten Versuchen des Konvertierens bekam ich immer Fehlermeldungen, dass das PlugIn XY benötigt wird und ob ich es aus dem Store herunterladen möchte. Dort musste ich dann bei manchen feststellen, dass es für 4.27 (noch) kein Update gibt. So. Die Engine bricht die Konvertierung ab. In einem englischen Forum habe ich dann mal gelesen, dass man die PlugIns einfach alle ausschalten soll vor dem Konvertieren. Hab ich gemacht und ich komme "wenigstens" bis zu dieser neuen Fehlermeldung.


    Code Projekt:

    Wenn dein Projekt ein Code-Projekt ist, dann musst es in eins ohne Code umwandeln, hab aber vergessen wie das genau funktioniert, hab ich bisher nur einmal gemacht, eben wegen diesem Problem...

    Geloscht da kann ich dir leider nicht ganz folgen. Was für Code ist gemeint? Ich bin in dieser Hinsicht der totale Anfänger und nutze nach Anleitung die Blueprints (z.B. hab ich Versuche mit Sonnenauf- und untergang gemacht).



    Fehlermeldung:

    Ich hab einfach alles aus dem Kasten der Fehlermeldung kopiert und in die TXT-Datei eingefügt.


    "OnResetVR"

    kyodai Mit VR hab ich nichts am Hut. Habe aber bewusst das Projekt nicht als VR-Projekt erstellt bzw. verstellt.

    Am Anfang kann man ja wählen zwischen Desktop oder Mobile - habe Desktop gewählt.

    Kann man das irgendwo nachträglich in den Projekteigenschaften ausschalten?


    Waren meine Erläuterungen hilfreich?

    Wie gesagt, im originalen Projekt (4.24) hab ich ganz normal das Landscape modelliert, Assets eingefügt, mit Splines gearbeitet usw.

    Jetzt aber nicht wissentlich auf VR "umgeschaltet" oder auf C++.

  • Sage ich, dass eine Kopie konvertiert werden soll

    Wieso überhaupt ne Kopie von Hand erstellen?
    Mach immer mal wieder ein Backup und du brauchst überhaupt nix zu kopieren ^^


    Falls du nicht weißt, wie:
    Rechtsklick auf Projekt-Ordner -> Senden an -> ZIP-komprimierter Ordner


    Wenn du keine Backups brauchst und lieber alles kopierst, kannst das auch automatisch machen lassen, indem du den Epic Launcher öffnest, eins deiner Projekte rechtsklickst und "Klonen" wählst.


    Was für Code ist gemeint?

    C++


    ob man mit BluePrints oder mit C++ arbeiten möchte. Richtig?

    Selbst wenn du C++ auswählst, kannst auch BPs benutzen, andersrum, ebenso ^^


    Jetzt aber nicht wissentlich auf VR "umgeschaltet"

    In den ProjectSettings gibts ein "Start in VR", wenn ichs noch richtig weiß, war bis zur 4.24, dort automatisch ein Haken drin, den man erst raus machen musste, hehe

  • Tomura Mit C++ hab ich eigentlich nix am Hut. In der Engine nutze ich nur die BluePrints. Das muss man doch beim Erstellen des Projektes festlegen, ob man mit BluePrints oder mit C++ arbeiten möchte. Richtig?

    Aber ich werde deinen Vorschlag mal ausprobieren. Vlt. klappt es ja.

    Ja, man muss oder eher kann es festlegen. Jedes UE4 Projekt kann aber auch nachher noch (mit etwas verständnis von der UE4 Projekt struktur) in ein C++ Projekt umgewandelt werden.


    Was bei dir passiert, ist dass bei der Konvertierung versucht wird C++ Codes zu kompilieren, welche in deinem Projekt sind.

    Die Fehlermeldung scheint ein Problem mit Funktionen aus dem HeadMountedDisplay Modul zu haben, was direkt etwas mit VR zu tun hat.

    Die Fehlermeldung scheint seinen Ursprung im Intermediate Ordner zu haben wo, objekte und generierte C++ Dateien gerne landen. Bei einem reinen Blueprint Projekt sollte da kaum was sein. Es scheint hier auch ein Binary Verzeichnis zu erstellen.


    Wenn es kein C++ Projekt wäre sollte eigentlich kein kompilieren notwending sein.


    Kannst du mal Screenshots von deinem Projektverzeichnis machen, dass man genau sieht was du hast?