Beiträge von MacArmand

    Hallo,


    nach langer Zeit ist wieder eine Frage aufgetreten, bei der ihr mir vielleicht helfen könnt.

    Ich versuchte aus reiner Neugier einmal mein Project zu packen um zu sehen wo es Fehler gibt. Es gab eine Menge :). Nachdem alle Errors beseitigt waren dachte ich juchu, jetzt funktioniert es. Falsch gedacht. Alles funktioniert nur mein Navmesh scheint nicht zu laden. Resultat meine Ais gehen nicht herum. Agieren kann ich mit ihnen.

    Durchsuchte seit einer Woche das Netz nach Antworten konnte jedoch nichts passendes finden.

    Ich nutze Invokers und habe ein Navmesh für die gesamte Karte und Nanite. Im Recast navmesh nutze ich force rebuild on load und load dynamic.

    eigenartigerweise zeigt mir das Spiel im Editor das Navmesh an und dort gehen meine Ais auch herum, nur im packaged build nicht.

    Versuchte schon level zu builden, paths zu builden und auch n.b.NavemeshAllowPartitionedBuildingFromEditor 1. Funkt alles nicht.


    Vielleicht hatte jemand von euch ähnliche Probleme und ist auf eine Lösung gekommen. Ich stehe echt mit dem Rücken zur Wand.


    Nichtsdestotrotz, alles Gute und viel Erfolg bei euren Projekten

    euer Marc

    Danke für die Tipps. Hab es mit der line trace methode probiert und funktioniert eigentlich ganz gut. Mit Constraints kenne ich mich überhaupt nicht aus, habe da ein paar Tage herumprobiert, aber irgendwie, hat es nicht funktioniert. Vielleicht nehme ich mir mal Zeit und schau mir dazu Tutorials an und lese die Documentation, weil das Thema ist finde ich sehr interessant.


    Danke auf jeden Fall für die Anteilnahme,


    Ich wünsche euch noch viel Erfolg mit euren Projekten und alles Gute

    Euer Marc

    Danke für den Tipp. Dass das Rad sich bewegt ist ja nicht das Problem, sondern, wenn ich den Karren an den Charakter durch Sockets anbinde, dass wenn ich eine Steigung rauf bzw. runter gehe, dass dann der Wagen in der Luft hängt, bzw. im Boden versinkt. Weiß nicht wie ich das mit einem Trace machen kann.

    Oder meinst, du dass ich den Charakter an den Karren binden soll, aber dann verschindet der Charakter im Boden. Der Karren ist etwa 2 Meter lang, ein großes Gefährt :)

    Es funktioniert eigentlich alles, bis auf dass, das der Karren nicht an den Socket binden will.

    Hallo, hätte zur Zeit dasselbe Problem. Versuche gerade, dass mein Charakter einen Karren aufnimmt und sich die Räder dabei drehen. Hat mit Sockets alles bestens funktioniert, nur eben ohne Physics und da beim Bergauffahren der Karren über oder unter der Landscape war, versuche ich es nun mit simulate physics. Versuche mich mit Sockets und Attach Actor to component, funkt aber nicht. Nun versuche ich es ebenfalls mit Set constrained components, Habe dazu ein PhysicConstraint in meinem Actor platziert. Als der Wagen als child actor an ein Socket gebunden wurde, haben sich die Räder des Wagens zwar gedreht, nur blieb der Wagen stehen, wenn ich meinen Charakter bewegte. Wenn der Charakter den Wagen abstellte, verschwand der alte Wagen und am Abstellplatz erschien, wie gewollt der Wagen, nur eben während der Bewegung des Charakters blieb er stehen. Mit attach actor to component verschwindet der Wagen und aus set constrained Components werde ich nicht schlau. Brauche ich da ein Component, ein Bone oder Beides von meinem Wagen und im Physic Constraint, muss ich da etwas einstellen?

    Beim Wagen is simulate pysics eingestellt und ich habe auch simple collisions aktiviert. Dürfte glaub ich nicht am Wagen liegen, da dieser an der abschüssigen Stelle an der ich ihn in der Luft platziert habe, bei Spielbeginn etwas runterrutscht. Vielleicht könnt ihr mir dabei helfen.

    Danke im Vorhinein und alles Gute für eure Projekte euer Marc

    Hallo. Das Problem beim Laden der Karte im Viewport Editor habe ich gelöst.

    Auslöser war ein Abrufen eines falschen Gamemodes im PlayerCharacter.


    Fehlermeldung konnte ich im OutputLog ausmachen. Hat sich durch Zufall zwischen den vielen gleichfarbigen (roten :) ) Meldungen geschlichen.


    Alles Gute und viel Erfolg euch allen

    Hallo und einen schönen Dienstag euch allen.

    Versuche gerade mein Projekt von 4.27 auf 5.0 umzustellen und es zeigt sich ein Problemchen, welches ich als Nicht-Programmierer einfach nicht lösen kann.

    Hatte in meinem alten Projekt mehrere Levels die durch Level Compositing miteinander verbunden waren. In der Engine 5 zeigte mir das System die Aufforderung, dass ich auf World Partition umsteigen soll. So weit so gut.

    Habe aus meinem Hauptlevel ein World Partition gemacht und aus den anderen Level die ganzen Actoren kopiert und mit Strg+V eingefügt. Hat auch funktioniert und kann auch ohne Probleme Build nutzen. Nun zu meinem kleinen Problemchen.


    Wenn ich versuche das Spiel zu starten, kann ich zwar das Mainmenu(Startbildschirm) anzeigen und auch mithilfe des CharacterCreator (MarketplaceAsset) einen Character erstellen, jedoch sobald ich versuche das eigentliche Spiel zu laden erscheint eine Fehlermeldung:


    Assertion failed: SourcePath.GetCachedFunction()

    [File:D:\build\++UE5\Sync\Engine\Source\Runtime\UMG\Private\Binding\FloatBinding.cpp] [Line: 52]


    und das System Crasht. Dachte mir ich könnte die mithilfe von Validate Data herausfinden, jedoch crasht da das System ebenfalls und es wird mir folgende Fehlermeldung angezeigt.


    LoginId:b86045c84025e1cf7a7c9db2d71a7ab1

    EpicAccountId:df903f558ff549a6bcfb517555d42d3c


    Assertion failed: !bIsAlreadyInSet [File:D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\Level.cpp] [Line: 2375]


    UnrealEditor_Engine!ULevel::FixupActorFolders() [D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\Level.cpp:2375]

    UnrealEditor_Engine!UWorld::InitWorld() [D:\build\++UE5\Sync\Engine\Source\Runtime\Engine\Private\World.cpp:1905]

    UnrealEditor_UnrealEd!UEditorEngine::InitializeNewlyCreatedInactiveWorld() [D:\build\++UE5\Sync\Engine\Source\Editor\UnrealEd\Private\EditorEngine.cpp:7182]

    UnrealEditor_UnrealEd!UEditorEngine::OnAssetLoaded() [D:\build\++UE5\Sync\Engine\Source\Editor\UnrealEd\Private\EditorEngine.cpp:7148]

    UnrealEditor_UnrealEd!TBaseUObjectMethodDelegateInstance<0,UEditorEngine,void __cdecl(UObject *),FDefaultDelegateUserPolicy>::ExecuteIfSafe() [D:\build\++UE5\Sync\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:611]

    UnrealEditor_CoreUObject!EndLoad() [D:\build\++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:1824]

    UnrealEditor_CoreUObject!<lambda_c8710bcd35c9e247c18bb173ed0f9483>::operator()() [D:\build\++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:1264]

    UnrealEditor_CoreUObject!LoadPackageInternal() [D:\build\++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:1366]

    UnrealEditor_CoreUObject!LoadPackage() [D:\build\++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:1520]

    UnrealEditor_CoreUObject!LoadPackage() [D:\build\++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:1500]

    UnrealEditor_CoreUObject!ResolveName() [D:\build\++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:798]

    UnrealEditor_CoreUObject!StaticLoadObjectInternal() [D:\build\++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:875]

    UnrealEditor_CoreUObject!StaticLoadObject() [D:\build\++UE5\Sync\Engine\Source\Runtime\CoreUObject\Private\UObject\UObjectGlobals.cpp:953]

    UnrealEditor_DataValidation!FAssetData::GetAsset() [D:\build\++UE5\Sync\Engine\Source\Runtime\CoreUObject\Public\AssetRegistry\AssetData.h:363]

    UnrealEditor_DataValidation!UEditorValidatorSubsystem::IsAssetValid() [D:\build\++UE5\Sync\Engine\Plugins\Editor\DataValidation\Source\DataValidation\Private\EditorValidatorSubsystem.cpp:190]

    UnrealEditor_DataValidation!UEditorValidatorSubsystem::ValidateAssetsWithSettings() [D:\build\++UE5\Sync\Engine\Plugins\Editor\DataValidation\Source\DataValidation\Private\EditorValidatorSubsystem.cpp:279]

    UnrealEditor_DataValidation!UDataValidationCommandlet::ValidateData() [D:\build\++UE5\Sync\Engine\Plugins\Editor\DataValidation\Source\DataValidation\Private\DataValidationCommandlet.cpp:54]

    UnrealEditor_DataValidation!FDataValidationModule::Menu_ValidateData() [D:\build\++UE5\Sync\Engine\Plugins\Editor\DataValidation\Source\DataValidation\Private\DataValidationModule.cpp:152]

    UnrealEditor_DataValidation!TBaseStaticDelegateInstance<void __cdecl(void),FDefaultDelegateUserPolicy>::ExecuteIfSafe() [D:\build\++UE5\Sync\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:731]

    UnrealEditor_Slate!SMenuEntryBlock::OnClicked() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\MultiBox\SMenuEntryBlock.cpp:1157]

    UnrealEditor_Slate!SMenuEntryBlock::OnMenuItemButtonClicked() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\MultiBox\SMenuEntryBlock.cpp:1108]

    UnrealEditor_Slate!TBaseSPMethodDelegateInstance<0,SMenuEntryBlock,1,FReply __cdecl(void),FDefaultDelegateUserPolicy>::Execute() [D:\build\++UE5\Sync\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:290]

    UnrealEditor_Slate!SButton::ExecuteOnClick() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Widgets\Input\SButton.cpp:464]

    UnrealEditor_Slate!SButton::OnMouseButtonUp() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Widgets\Input\SButton.cpp:389]

    UnrealEditor_Slate!SMenuEntryButton::OnMouseButtonUp() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\MultiBox\SMenuEntryBlock.cpp:434]

    UnrealEditor_Slate!<lambda_51e270ca99ea7ce852539efd04dd453f>::operator()() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:4959]

    UnrealEditor_Slate!FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,<lambda_51e270ca99ea7ce852539efd04dd453f> >() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:405]

    UnrealEditor_Slate!FSlateApplication::RoutePointerUpEvent() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:4945]

    UnrealEditor_Slate!FSlateApplication::ProcessMouseButtonUpEvent() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:5493]

    UnrealEditor_Slate!FSlateApplication::OnMouseUp() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:5458]

    UnrealEditor_ApplicationCore!FWindowsApplication::ProcessDeferredMessage() [D:\build\++UE5\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsApplication.cpp:2210]

    UnrealEditor_ApplicationCore!FWindowsApplication::DeferMessage() [D:\build\++UE5\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsApplication.cpp:2699]

    UnrealEditor_ApplicationCore!FWindowsApplication::ProcessMessage() [D:\build\++UE5\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsApplication.cpp:1078]

    UnrealEditor_ApplicationCore!FWindowsApplication::AppWndProc() [D:\build\++UE5\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsApplication.cpp:916]

    user32

    user32

    UnrealEditor_ApplicationCore!FWindowsPlatformApplicationMisc::PumpMessages() [D:\build\++UE5\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsPlatformApplicationMisc.cpp:138]

    UnrealEditor!FEngineLoop::Tick() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:5139]

    UnrealEditor!GuardedMain() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Launch.cpp:183]

    UnrealEditor!GuardedMainWrapper() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:147]

    UnrealEditor!LaunchWindowsStartup() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:283]

    UnrealEditor!WinMain() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:330]

    UnrealEditor!__scrt_common_main_seh() [d:\a01\_work\6\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]

    kernel32

    ntdll



    Ich als Nicht-Programmierer blicke hier nicht durch und auch im Internet finde ich kaum etwas oder verstehe nur Bahnhof.

    Ein kleiner Tipp oder was das genau bedeutet könnte mir sehr weiterhelfen.


    Einen schönen Tag euch allen und Danke für die Anteilnahme :__ .

    Da hast du sicher Recht. Mir erschien dies aber als einfachere Lösung. Da ich nur mit Nodes arbeite aber nicht mit C++ selber Code schreibe. Ich werde mir eure Tipps zu Herzen nehmen und mein Projekt vielleicht dementsprechend umbauen.

    Ich danke auf jeden Fall für jeden Ratschlag.

    Guten Abend und viel Erfolg.

    Hallöchen,

    eure Probleme mit meiner Arbeitsmethode erschließen sich mir leider nicht. Warum keinen Child eines Child machen.

    Wenn die Engine das nicht will und nicht dafür ausgelegt ist, frage ich mich, warum es die Funktion gibt. Aber sei es drum. Jeder wie er meint und will.

    Ich wünsche euch auf jeden Fall viel Erfolg und gutes Tippen und Programmieren.

    Ciao und schönen Tag euer Marc

    Weil ich mit meinen Build Funktionen nun mal ein Auto und eine Wand erstellen möchte und dazu benötige ich nun einmal zwei verschiedene Childs. Einmal ein Auto Child und einmal ein Wandchild. Die aber beide von dem Parent erben, erstellt werden zu können.

    Das Problem das du ansprichst eröffnet sich mir leider nicht. Bei mir funktioniert alles einwandfrei, also warum ändern?

    Warum?

    So habe ich ein Parent mit ganz vielen Kinder Enkel und Urenkel.

    Ist doch logisch. Einfach nur ein Parent und davon ein Child, ist ja öde.

    Warum nicht ein Child vom Child vom Child vom Child. UNd je nachdem was ich aufrufen möchte, dass kommt. Funktioniert bei mir prächtig, also warum ändern?

    Also vereinfacht gesagt nutze ich es so:


    Ich habe einen Actor den ich als Parent benutze, dieser hat eine overridable Funktion und auch ein INterface zum Builden. Da ich aber auch ein Itemsystem nutze(mit eigenem Interface) und ich möchte, dass mein Charackter Item erstellen kann, nutze ich dafür Childs, die eben andere Variablen nutzen, je nachdem ob es sich dabei eben um ein Gebäude, eine Waffe, Item etc.. handelt. Das Buildsystem ist einem Youtube-Video nachempfunden, welches boxcollisions aus einem Array nutzt um an dieser Stelle mithilfe SpawnActor dort den Actor zu spawnen. Diese Collisions sind aber von Actor zu Actor verschieden und auch haben die Actoren andere Eigenschaften(Item, Waffen, Rüstungen, etc...) weswegen ich unterschiedliche Childs nutze.

    Weil ich den Parent der Childs abrufe, aber nicht die Childs, diese sollten in gewisser Weise Ähnlich sein und in gewisser Weise eben nicht. So muss ich nicht jeden Parent einzeln abrufen (ich weiss in einem array geht das leicht).

    Habe in jedem Child ein Array welches mit anderen Boxcillisions abgerufen wird.

    Ich will aber weder nach zig Child nachfragen müssen, noch nach zig Parents. Deshalb frage ich nach einem Parent nach, dessen Childs aber in manchen Belagen unterschiedlich sind.

    Dachte mir geht so. Aber vielleicht liege ich ja falsch.

    Haha, ja da habe ich mich wohl schlecht formuliert. *dead*

    :/ Also nochmal: Ich hatte einen Parentactor ohne Script. Davon erstellte ich mir einen ChildActor und kopierte Script von einem gänzlich anderen Actor und stellte die Variablen ein. Da ich nicht will, dass in jedem Child des Parent das Script auftaucht, habe ich ein Duplicate des Childactors gemacht. Leider bevor ich das Script im ersten erstellt habe. Deswegen habe ich von dem ersten Child das Script kopiert, in den zweiten Child eingefügt und die Variablenwerte geändert.

    Resultat: Hat nicht funktioniert. :cursing:

    Als ich das Script im zweiten Child gelöscht habe und nun ebenfalls vom gänzlich anderen Actor das Script kopiert und die Variablen gesetzt habe hat alles einwandfrei funktioniert. 8o

    Hoffe war jetzt etwas verständlicher. Keine Ahnung ob es an der Engine oder meinem PC liegt

    Schönes Wochenende :bye:

    Hallöchen, falls es jemanden interessiert. Ist mir heute aufgefallen.


    Wenn man von einem Blueprint ein Duplicate erschafft und Nodes aus dem ersten in den zweiten kopiert scheint es nicht zu funktionieren. Jedenfalls hat genau so eine Aktion von mir einen Fehler hervortreten lassen. Weiß nicht ob dies für alle Versionen gilt oder auch für die Unreal 5, aber bei mir hats bei der Version 4.27.2 einen Fehler auftreten lassen.


    Dachte könnte von Interesse sein. :bye:

    An und für sich funktioniert in dem Asset alles einwandfrei. Das Gewand, welches an die Charaktere angepasst sind, sind halt nur Material Änderungen. Wem es reicht, dass man keine extra Meshes als Gewand benutzen möchte kommt damit auf seine Kosten. Ist schon ein großes Asset, gut aufgeräumt und ich als Hobby-Laie habe es nun auch geschafft mein Problem zu lösen. Kenner der Engine können sicher um einiges leichter damit umgehen.

    Zum Asset gehören auch Meshes, Materialien, Widgets, etc...

    Bisher bin ich sehr sehr begeistert von dem Asset und kann es nur jedem empfehlen.

    Zudem gibt es einen Discord-Channel mit einigen Mitgliedern. War nur zu faul da nachzufragen, hehe, bleibe lieber bei meiner deutschen Community.

    Danke auf jeden Fall und ein schönes Wochenende.

    Habe es geschafft. Danke für die Anteilnahme DJ EKi.

    Ja das Mesh muss gemorpht sein mit den richtigen Namen für die Targets und auch die Vertex zugeteilt.

    Dass hatte eh funktioniert. Die Engine verursacht nur bei jeder Änderung der Morph Targets immer wieder ein neues Mesh, dass aber leider die alten Morph Targets nutzt, bzw. Zeigt gar kein Mesh an.


    Falls jemand einmal dasselbe Problem hat, hier ein paar Screenshots:

    Die Funktion Cast to Harnisch muss extra erstellt werden.


    Vielleicht hilft es ja mal.


    Einen schönen Freitag euch allen und ein nettes Wochenende. :bye:

    Hallöchen, wäre euch wirklich sehr dankbar wenn Ihr mir hier raushelfen könntet. Habe da ein kleines Problemchen mit einem Asset, dass ich mir über den Marketplace erworben habe. Dieses wäre folgendes:


    Würde gerne ein SkeletalMesh, welches ich in einem Actor platziert habe und an einen ChildActor meines Characters festlege, durch Val to Morph Targets verändern. Anscheinend (PrintString sei dank) :) , erkennt die Engine dass mein Charakter die Rüstung angelegt hat. Nur verändern die Änderungen in meinem UIWidget nicht den Actor, sondern nur das CharacterMesh. Ich nehme srtark an, dass der Fehler irgendwo in diesem Blueprint liegt. Beim Print String zeigt er mir nach jeder Änderung der Variablen zum morphen, immer wieder ein neues Mesh an (Harnisch, Harnisch2, Harnisch4, Harnisch6, etc...) Ich denke da ist der Hund begraben, aber keine Ahnung wie ich das lösen könnte.

    Der Loop ist dabei zu vergessen, habe ihn schon entfernt.

    Wäre euch sehr verbunden, wenn ihr mir hier helfen könntet, das wäre ein großer Schritt Richtung Fertigstellung meines Spieles.

    Danke für jeden Tipp und Hilfe,

    Schönen Abend und ein angenehmes nicht zu heißes Wochenende :bye: