Mir raucht der Kopf, die Grundlagen bitte nochmal.

  • Hallo Freunde des Codens,

    ich bin gerade wieder am verzweifeln||

    Es nervt extrem, man lernt, versucht zu verstehen, übt und macht, vorallem mit Tutorials(Bücher auch schon gehabt).


    Mit der Zeit bekommt man allmählich das Gefühl, man könnte schon so Einiges, hat dann einen kreativen Einfall, einen ganz Einfachen und will ihn verwirklichen, dann passt Vorne und Hinten nichts mehr. Ich hab jetzt das Gefühl, ich weiß garnichts mehr.


    Wie geht ihr prinzipiell vor??? Ich beschreibe mal meinen gelernten Weg, sagt mir bitte wo der Fehler ist.


    Sagen wir ich bin im AIController.

    Ich google AIController und komme zu der Doc.unrealengine Seite, wo ich alle seine Funktionen aufgelistet bekomme, die AIController direkt ausführen kann.


    In der Hierarchie oben steht, dass AIController das Kind von AActor ist. Also müsste ich doch auch alle Funktionen von AActor verwenden können oder?


    So will ich eine VectorVariable erstellen, die den Ort des AIControllers bekommt zu Spielbeginn.


    BeginPlay()

    FVector Startpunkt = GetActorLocation();


    Diese einfache Sache klappt schon nicht, ich versteh garnichts mehr, bitte um Hilfe, ich hänge mich voll rein und kriege die einfachsten eigenen Sachen nicht mehr hin.

  • Also das mit dem lernen und machen und tun, das kennt hier wohl jeder. Derzeit befinde ich mich wohl in dieser Phase. Das liegt aber auch daran, am Anfang macht man alles so wie in den Tutorials, was natürlich funktioniert, und dann fängt man an zu versuchen die Engine bis aufs letzte mit seinen eigenen Ideen auszureizen, natürlich besser und optimaler als in den Tutorials, und natürlich auch Funktionen im Spiel, die noch kein anderes Spiel in dieser Form hatte, schließlich ist man ja besser als all die dämlichen Profis in dieser Branche ;). Oft merkt man dann hinterher warum noch kein Spiel diese Funktion, in dieser Form, hatte.


    Aber um mal auf deine eigentliche Frage zurückzukommen.


    Meinst du das hier?


    https://docs.unrealengine.com/…s/QuickStart/6/index.html

  • Danke fürs Antworten Tomarr, aber mir gehts vorallem um die allgemeine prinzipielle Vorgehensweise/Arbeitsweise mit C++ in Unreal.


    Ich hab bisschen beschrieben, wie ich an die Funktionen herangehe, ich möchte gerne wissen, wie das andere machen bzw. wie man es richtig macht???

  • Hallo,


    Dann habe ich mir etwas überlegt was ich zur Übung/Einarbeitung machen könnte und statt einem Tutorial zu folgen habe etwas eigenes gemacht, mit der Unreal Doku als Unterstützung. Herausgekommen sind dabei bewegliche Plattformen, die sich Horizontal oder Vertical bewegen können.

    Desweiteren sollte man auch Erfahrung mit Programmiersprachen haben, besonders mit c++, weil das was unreal mit bringt echt viel ist. Kenntnisse aus anderen Programmiersprachen bringen in meinen Augen nicht sehr viel.


    Woran ich mich dann letztendlich aufgehangen habe sind Datatables und structs mit c++, als ich mein Inventar System von BP auf C++ migrieren wollte.

  • Ich denke die meisten werden hier bei C++ einfach nicht antworten, weil sie einfach keine Ahnung davon haben, es gibt vielleicht 2-3 Leute hier, die was mit C++ machen, kenne noch mehr die C++ können, aber in der UE4 nie angewendet haben, da man das eigentlich auch nicht braucht, da vieles mit VS (Visual Scripting) möglich ist, das einzige was meines Wissens nach nicht möglich ist, ist Voxel und Random-Landscape (aber mal abwarten was die UE5 bringt)...

    Kann natürlich gut sein, dass es noch viel mehr gibt, aber alles was ich brauche, war bisher umsetzbar und zur Not gibts ja noch Plugins.


    Man kann ja selbst ohne C++, Dateien direkt ausm Spiel während der Runtime, in den Steam Workshop hochladen, wie Nobody bewiesen hat^^


    Und das Argument, dass alles mit C++ flüssiger läuft, zählt für mich nicht, man kann beim packen alles in C++ umrechnen lassen oder direkt selber die BPs umbauen, bei meinem ersten Spiel sind mit meinem 5 Jahre alten Rechner, 300 Gegner kein Problem (über 60 FPS).

  • Hmmm ja ich denke auch vielleicht kannst du wenn du an irgendwas hängst einfach Blueprints nehmen. Du kannst ja BP ganz doof nach Tutorial machen und dann im BP auf "File"-->"Developer"-->"generate Native Code" machen um es dir auf C++ anzugucken. Das spart dir voll oft viel Zeit wenn du ein Blueprint Beispiel gefunden hast aber keinen Plan hast wie das in C++ "richtig" aussehen sollte.

  • Puh, C++ bin ich gerade selber noch am rumprobieren.


    In diesem Fall liegt es wohl daran, dass der AIController eigentlich keine physikalische Position hat (irgendwo liegen kann). Was dich interessiert ist die Position des kontrollierten Pawn's.


    versuchs mal mit:

    FVector Startpunkt = GetPawn()->GetActorLocation();


    Zu deinem lernvorgehen:

    1. Guck dir zuerst ein kurzes Tutorial in Unreal an was die einzelnen Klassen für Aufgaben haben. (Auch wenns BP ist). Über die Unreal Doku alleine wirst du das nur schwer verstehen, da die Doku leider etwas mangelhaft ist.

    2. Bastel dir deinen Prototypen zuerst in BP, wenn er da funktioniert, dann kannst du ihn zu C++ rüber ziehen. (Es sei denn du kennst die Engine schon ziemlich gut und bist ein C++ Profi)

    3. Um Himmels Willen, gib deinen Variabeln bitte keine deutschen Namen ;)


    Hoffe ich konnte dir damit weiter helfen

    Gruss Veelos