Grüsse aus dem Rheinland

  • Hallo Leute,

    bin neu hier und sag mal Hallo.

    Ich bin ein Mediengestalter und kam vor 3 Wochen auf die Idee mal ein Spiel zu entwickeln. Vor knapp 20 Jahren war ich mal Producer für Spiele aber in der zwischenzeit hat sich viel geändert und jetzt versuch ich halt da wieder rein zu kommen.

    Eigentlich arbeite ich mit 3D Studio Max und Adobe CS, das ist zumindest mal ne Basis für Unreal Engine. Mit Programmierung hab ich seit meiner Ausbildung nix mehr zu tun aber ich versuch mich reinzufuchsen. Machen will ich einfach nen simples 2D Jump´n Shoot und in den drei Wochen mit UE war ich mindestens schon zwei mal kurz davor aufzugeben weil das ist doch sehr komplex. Ich schau halt Tutotial und mehr Tutorials nur ises manchmal schwer genau das zu finden was ich grade machen will, englisch kann ich gut aber es wär halt cool einfach mal ne konkrete Frage zu stellen und vielleicht eine Hilfestellung zu kriegen. Kleine Erfolgserlebnisse hatte ich schon, hab mit Starter Content angefangen und eine 20 Jahre alte Figur von mir funktionstüchtig ins Spiel gekriegt, Sound Modell und Textursystem versteh ich halbwegs aber mit Logik Systemen hab ich erst mal so meine Probleme. Ich werd hier mal querlesen und würd mich freuen wenn ich auch mal Fragen stellen darf.

    Hier mal ein erster Screenshot aus meinem zusammengewürfeltem Projekt nach 3 Wochen, in 3 Monaten oder 3 Jahren kommt hoffentlich mehr bei raus ;). Viele Grüsse

  • Grüße zurück aus dem Rheinland. Du machst das doch schon sehr gut. Sich damit beschäftigen ist die Kunst es zu meistern. Immer viele Fragen hier posten - davon leben wir. Wenn keiner fragt müssten wir wohl dicht machen oder uns auf Diskussionen beschränken wer am besten CS Go spielt, also immer mal fragen, kostet nix. ;)

  • Grüße zurück aus dem Rheinland. Du machst das doch schon sehr gut. Sich damit beschäftigen ist die Kunst es zu meistern. Immer viele Fragen hier posten - davon leben wir. Wenn keiner fragt müssten wir wohl dicht machen oder uns auf Diskussionen beschränken wer am besten CS Go spielt, also immer mal fragen, kostet nix. ;)

    Grafik ist für mich kein Problem, ich komm ja von 3D Max und für mich is das eher ein wtf, was heute alles in Echtzeit geht. Die Möglichkeiten sind absolut faszinierend. Ich hab ja mal in der Branche gearbeitet aber für Programmierung gabs halt ein Team die das damals mit C und Hexeditoren irgendwie gemacht haben ^^. Ich fang da jetzt bei kleinsten Kleinigkeiten an mir die Zähne aus zu beissen, zum beispiel konnte ich dem Char Health geben und bei 0 geht er drauf, ich versteh das aber nicht wirklich sondern schreibe Tutorials 1:1 ab. Ich wollt dann bei health gleich null die standard Tod Animation abspielen, was passiert, health gleich null, Kamera dreht in 3D Modus und ich hab keine Ahnung warum. Also vielleicht kommt die Animation, ich kanns aber nicht sehen weil die Kamera dreht.

    Habt ihr irgend ne Erklärung was die Farben bedeuten? Also hellblau ist einfach nur eine Animation ans mesh gebunden, das ist aber irgendwie nicht das mit dem normal gearbeitet wird vermute ich. Das scheint mir eher eine Art Containersystem zu sein aber ich kanns noch nicht richtig zuordnen.

    Ich werd da echt Noob Fragen stellen wo sich einige wundern werden weil das eigentlich Basic wissen ist.

    • Offizieller Beitrag

    Auch von mir ein Willkommen.


    Bevor du das Forum mit deinen Fragen bombardierst was du auch gerne machen kannst, erstelle bitte Threads für eine Fragen.

    Wenn du nun im vorstellthead schon Fragen zu Unreal stellst, wird das alles sehr unübersichtlich und es gibt auch Leute die Antworten nur in bestimmten Bereiche und nicht auf Vorstellungen.


    Du kannst auch gerne ein Thread für allgemeine Fragen erstellen aber bitte nicht alles in den Vorstell Thread rein.

    Nicht bösen gemeint sondern der übersicht halber:bye:

  • Ja natürlich frag ich dann in den vorgesehen Bereichen, das war nur um zu zeigen wo ich grad mit UE4 bin. Ich werd auch nicht mit Fragenbombardements anfangen sondern muss das Forum ja erst mal durchstöbern ob die Fragen vielleicht irgendwo schon besprochen wurden, wär ja doof was erneut zu posten was grad vor 4 Jahren abgehandelt wurde.

  • Grüße zurück aus dem Rheinland. Du machst das doch schon sehr gut. Sich damit beschäftigen ist die Kunst es zu meistern. Immer viele Fragen hier posten - davon leben wir. Wenn keiner fragt müssten wir wohl dicht machen oder uns auf Diskussionen beschränken wer am besten CS Go spielt, also immer mal fragen, kostet nix. ;)

    So, das ist jetzt also 5 Jahre her und ich muss zugeben das ich viel zu wenig, obschon auch viel, Zeit in mein Spielprojekt gesteckt habe. UE4 hatte mich irgendwann zur Verzweiflung gebracht und ich habs bis UE 5.5 nicht mehr angefasst. Ich hab damals in UE4 einfach aufgegeben weil ich rückwirkend was im Skelett System zerschossen hatte und nicht wiederherstellen konnte. Ganz konnte ich auch nach dem Neustart in 5.5 die Fehler in meinen UE4 Leveln nicht korrigieren aber zumindest sind meine Kenntnisse so weit fortgeschritten das ich es wieder spielbar machen konnte.

    Ich wollt das auch alleine korrigieren bis es wieder funktioniert damit ich nicht zu dumm wirke.

    Also der Scrrenshot von damals war aus Level 1. Hier ist jetzt einer aus Level 3. Das Spiel das ich machen möchte funktioniert und ist spielbar, unter gewissen Umständen und nicht ganz so wie ich es gerne hätte.

    Ich denke aber das nicht mehr viel zu einem erfolgreichen Kickstarter funding fehlt und spätestens dann brauch ich definitiv professionelle Hilfe.

    Es wird ein schönes Spiel das Eindruck hinterlassen wird aber kein Zeitfresser wie WoW, CS oder DoTA. Man spielt es ein oder ein paar mal, hat ne gute Zeit und Spass und freut sich wenn was Neues dazu kommt.

    Die UE 5.5 hat mich aber auch schon wieder nahe an die Verzweiflung gebracht weil manche Abhängigkeiten in der Engine kenne/ verstehe ich immer noch nicht, es werden rekursiv Änderungen übernommen von denen ich dachte das ich sie auf eine unabhängige Kopie angewendet habe z.B. und Manches ist glaub ich einfach verbugged.

    ChatGPT ist bei meinen Fragen auch völlig nutzlos zur wirklichen Problemlösung.

  • Die UE 5.5 hat mich aber auch schon wieder nahe an die Verzweiflung gebracht weil manche Abhängigkeiten in der Engine kenne/ verstehe ich immer noch nicht, es werden rekursiv Änderungen übernommen von denen ich dachte das ich sie auf eine unabhängige Kopie angewendet habe z.B. und Manches ist glaub ich einfach verbugged.

    ChatGPT ist bei meinen Fragen auch völlig nutzlos zur wirklichen Problemlösung.

    Ja die UE 5.5 bringt einige zur Verzweiflung :D Habe grade mit der Materie was die UE5.5 angefangen und bin mal gespannt, aber sind ja genug Leute hier die ja einen unterstützen & Willkommen zurück :bye:

  • Ja die UE 5.5 bringt einige zur Verzweiflung :D Habe grade mit der Materie was die UE5.5 angefangen und bin mal gespannt, aber sind ja genug Leute hier die ja einen unterstützen & Willkommen zurück :bye:

    Aber ich bin auch begeistert von den grafischen Möglichkeiten. Zur Verzweiflung bringt mich nur das Blueprint und Animationssystem. Ich hab halt leider nie in C++ programmiert und grundsätzlich basiert das Blueprint System ja doch darauf. Da ist halt kein Moment indem es klick macht sondern ein langsames rantasten und wiederholen, klar kann ich komplexe Funktionen aus Tutorials abschreiben aber ich beneide die die die Funktionsweise verinnerlicht haben. Aber egal, ich habe mein Spiel soweit funktionstüchtig, es macht Spass, läuft von Switch bis PS5 pro in angemessenen Grafikabstufungen und die Investoren glauben mir das sicher auch das man im Endprodukt nicht mehr Ziffernblock 9 Taste drücken muss um im 45° winkel zu schiessen ^^.

  • Für C++ musst du leider noch ein wenig warten, so 2 - 3 Jahre. Wir haben hier zwar ein oder zwei Freaks, die auch damit gut umgehen können, aber die sind eher selten online, wenn ich mich nicht irre. Vielleicht sind es aber auch nur stille Mitleser. Ich selber würde es gerne lernen, prügel mich aber noch mit entsprechenden Geldgebern für eine Schulung. Dauert also noch ein wenig, ist aber in der Mache.

    Aber auch für C++ wirst du hier grundsätzlich Hilfe finden, auch, wenn die Antworten eventuell länger dauern.

  • Für C++ musst du leider noch ein wenig warten, so 2 - 3 Jahre. Wir haben hier zwar ein oder zwei Freaks, die auch damit gut umgehen können, aber die sind eher selten online, wenn ich mich nicht irre. Vielleicht sind es aber auch nur stille Mitleser. Ich selber würde es gerne lernen, prügel mich aber noch mit entsprechenden Geldgebern für eine Schulung. Dauert also noch ein wenig, ist aber in der Mache.

    Aber auch für C++ wirst du hier grundsätzlich Hilfe finden, auch, wenn die Antworten eventuell länger dauern.

    Das ist gar nicht notwendig, ich hab ja alle Funktionen die ich einbauen wollte mit Blueprints eingebaut, es funktioniert aber ich weiss das das nicht der richtige Weg war um eine Aufgabe zu lösen, in der Engine war es anders gedacht.

    Aber lass uns die Problemlösung angehen,ich will das Gameplay zeigen (spoiler, es ist contra3 oder super Probotector),

    Wie exportiere ich eine Gameplay Sequenz als Video?

  • Aber ich bin auch begeistert von den grafischen Möglichkeiten. Zur Verzweiflung bringt mich nur das Blueprint und Animationssystem. Ich hab halt leider nie in C++ programmiert und grundsätzlich basiert das Blueprint System ja doch darauf. Da ist halt kein Moment indem es klick macht sondern ein langsames rantasten und wiederholen, klar kann ich komplexe Funktionen aus Tutorials abschreiben aber ich beneide die die die Funktionsweise verinnerlicht haben. Aber egal, ich habe mein Spiel soweit funktionstüchtig, es macht Spass, läuft von Switch bis PS5 pro in angemessenen Grafikabstufungen und die Investoren glauben mir das sicher auch das man im Endprodukt nicht mehr Ziffernblock 9 Taste drücken muss um im 45° winkel zu schiessen ^^.

    Eigentlich basieren Blueprints nicht auf C++ sondern es ist nur eine andere Darstellungsform. Das merkst du sofort wenn du mal ein einfaches Blueprint Plugin geschrieben hast - die Blueprints rufen lediglich die entsprechende C++ Funktion auf. Das ist aber auch der Charme - denn nach gefühlt 2 Stunden Tutorials kannst du zumindest alle in der Engine verfügbaren C++ Funktionen in 5 Minuten in ein Plugin umwandeln das dir das ganze als Blueprint serviert. Habe ich hier ja auch mal als Beispiel mit meinem Stats Plugin gezeigt. Um ein ganzes C++ Projekt mit komplexen Funktionen auf verschiedenen Ebenen nach UE zu portieren ist allerdings mehr Wissen erforderlich, aber es geht wie z.B. UnrealLibretro zeigt - hier wurde ein ganzes Emulatoren Framework nach UE portiert.


    Und man muss auch kein schlechtes Gewissen haben Blueprints zu nutzen - wer ganz extrem ist kann sie sogar per "nativization" zurück in C++ umwandeln lassen beim built. Der Performancegewinn ist aber in der Regel vernachlässigbar. Beim Debuggen sparen die Blueprints auch viel zeit.

  • Eigentlich basieren Blueprints nicht auf C++ sondern es ist nur eine andere Darstellungsform. Das merkst du sofort wenn du mal ein einfaches Blueprint Plugin geschrieben hast - die Blueprints rufen lediglich die entsprechende C++ Funktion auf. Das ist aber auch der Charme - denn nach gefühlt 2 Stunden Tutorials kannst du zumindest alle in der Engine verfügbaren C++ Funktionen in 5 Minuten in ein Plugin umwandeln das dir das ganze als Blueprint serviert. Habe ich hier ja auch mal als Beispiel mit meinem Stats Plugin gezeigt. Um ein ganzes C++ Projekt mit komplexen Funktionen auf verschiedenen Ebenen nach UE zu portieren ist allerdings mehr Wissen erforderlich, aber es geht wie z.B. UnrealLibretro zeigt - hier wurde ein ganzes Emulatoren Framework nach UE portiert.


    Und man muss auch kein schlechtes Gewissen haben Blueprints zu nutzen - wer ganz extrem ist kann sie sogar per "nativization" zurück in C++ umwandeln lassen beim built. Der Performancegewinn ist aber in der Regel vernachlässigbar. Beim Debuggen sparen die Blueprints auch viel zeit.

    Ich hab keine AHnung wie C++ code überhaupt aussieht. Das letzte mal das ich mit Programiercode zu tun hatte war HTML, Java Script in meiner Ausbildung und ein bischen Earth C, was wohl eine angepasste C Version war von den damaligen Ostblock Studios. Also wirklich noch Ostblock weil Polen da noch nicht in dr EU war und grad erst aus dem Warshcauer Pakt entlassen war ^^. Mehr als Gegner spawnen und Kamerafahrten definieren konnt ich aber damals schon nicht. Ich vermisse da in den Blueprints eine ganz simple if Abfrage, es gibt den branch mit true oder false aber irgendwie funktioniert das nicht immer so direkt wie ich es gerne hätte.

    Da hat ja auch einer angefangen eine KI Funktion einzubauen wo man in den Blueprints beschreiben kann was man gerne als Funktion hätte und über C++ Funktionen wird dann eine Blueprint Funktion erstellt.

    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.

    Kann mir aber gut vorstellen das man sich damit dann doch nur rumärgert und solang ich ohne Budget arbeite ist das eh nicht interessant. Dieses Plugin hingegen wird das erste das ich kaufen muss weil ich das für Welt 2 Level 2 brauche:

    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.

  • Der "Branch" ist exakt das alte "if... then...else". Am ANfang hat mich "branch" auch verwirrt, aber ja es ist exakt "if...then...else", sieht man auch im source code. Warum man es umbenannt hat habe ich nie verstanden aber ich habs inzwischen hingenommen. Durch die Anordnung der Blueprints gibt es kein "If then" ohne "Else" - denn der Code läuft nicht weiter wenn er nicht verbunden ist. Kann auch eine Option sein aber es ist einfach so.


    Mit AI für Blueprint Erstellung habe ich mich noch nicht auseinandergesetzt, aber interessante Idee.



    Die Ozean Simulation sieht gut aus.


    Für UE4 gab es damals "ocean Project" - ein kostenloses Open Source Plugin das ähnlich aussah. Ich habe aber derzeit keine Projekte mit Meer, von daher habe ich mich lange nicht damit auseinandergesetzt.

  • Das aussehen des Wassers ist gar nicht das was mich so sehr an dem Plugin interessiert, hier in dem Video sieht man die Physik dahinter besser:

    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.

    Genau das will ich im späteren Verlauf des Spiels. Hier im Video gibt es vielleicht einen besseren Eindruck davon:

    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.

    Ich bin seit Flood, Wetrix und Waverace 64 besessen von Wassereffekten in Spielen und in Welt 2 Level 2 will ich das immersiv einbauen. Ich kanns mir vorstellen und weiss das es technisch machbar ist, realistisch betrachtet kann ich aber nur in Gedanken konstruieren und komme mit Welt 1 Level 3 kaum weiter, wobei Level 3 jetzt wohl Level 1 wird und die vorherigen Level die ich gemacht hatte danach kommen könnten. Welt 1, Level 2 fanden meine Freunde bisher am schönsten aber da hab ich ja noch nicht auf die Asset Größe geachtet und der halöbe Level war schon 40gb gross. Jaja, die UE skalierte das schon auf framerate aber wenn man quixel scans einbindet liegt da trotzdem übertrieben viel Daten im Projekt.

    So siehts heute aus: https://www.youtube.com/watch?v=5I8RifVvQK4

  • Ja, irgendwie schon, aber doch nicht so ganz. Blueprints sind, wie soll ich das ausdrücken, eine Art Wrapper-Version von C++.

    Du kannst es ja zum Beispiel auch mischen, du kannst ein BP-Projekt nutzen und, wenn nötig, kannst du dir über eigenen C++-Code eigene Nodes schreiben. Das ist relativ einfach und du kannst dir ja mal ein kurzes Tutorial dazu auf YouTube anschauen. Da wirst du dann erkennen, dass ein ganzer Teil des Codes dann die Ein-/Ausgänge und das Aussehen der Node beschreibt.

    Deswegen gibt es auch ein paar Unterschiede zu BP und C++. BP sind, nennen wir es mal relativ gekapselt. So kannst du in einem BP zum Beispiel ein Enum erstellen, dass die Schlüsselworte "True" und "False" enthält, ohne Probleme. In C++ Code geht das nicht so einfach, weil es halt Schlüsselworte der Programmiersprache sind.

    Ähnlich wird es mit Branch sein. In dem Makro "Branch" wird im Hintergrund zwar ein If ... Then ... Else im Wrapper stecken, macht es aber, wie kyodai schon geschrieben hat, etwas unflexibler, weil immer ein Else mit enthalten ist. Bei C++ kannst du es weglassen.

    Nun weiß ich allerdings, weil nicht ausprobiert, das einen negativen Einfluss auf das Programm hat, denn theoretisch wird das Else, auch wenn es leer ist, immer mit überprüft bei fehlgeschlagenem If. In C++ kannst du das Else halt weglassen. Wenn es negativen Einfluss auf die Geschwindigkeit hat, dann kann ich mir durchaus vorstellen, dass es auch nicht irrelevant ist, wenn viele solche Abfragen in kurzer Zeit durchlaufen werden.

    Aber, zumindest theoretisch, weil auch das habe ich noch nicht ausprobiert, kannst du dir auch eine Node schreiben, wo es nur einen If-Zweig gibt, dann wird der folgende Code halt nur bei Erfüllung einer Bedingung ausgeführt, wenn das Ergebnis True ist, ohne, dass da eventuell noch ein Else-Zweig kurz nachgeschaut wird, auch, wenn er leer ist.

    Deswegen, wenn du solch weitreichenden Überlegungen in deinem Projekt Platz finden, also auch was die Optimierung von zeitlichen Abläufen angeht, hast du immer die Möglichkeit BP und C++ auch zu mischen, sprich, du musst nicht unbedingt alles in BP oder C++ schreiben. Dann hast du halt beides aus beiden Welten, einmal die Leichtigkeit und das schnelle, relativ fehlerfreie Vorankommen mit BP und auch die Flexibilität, Optimierungsmöglichkeiten und Kontrolle von C++.

    Viele sagen zwar, es gibt keinen Unterschied zu BP und C++, und ja, es hat sich im Laufe der Versionen wirklich verbesser, sodass man immer weniger eigenen C++-Code schreiben musste, aber hier und da ist es vielleicht nicht so verkehrt, vielleicht doch einmal über Optimierungsmöglichkeiten nachzudenken. Ist halt immer nur die Frage, ob dir der Aufwand das Ganze wert ist und es sich am Ende dann halt auch wirklich für dein Projekt lohnt, oder du vielleicht nur mit dem guten Gefühl ins Bett gehst, dass du deinen Code ein Stück mehr optimiert hast und das am Ende vielleicht dein Antrieb dafür ist.

  • Da ich ja keine Ahnung von C++ hab erübrigt sich die Frage für mich. Ich glaub auch nicht das man viel Performace rausholt wenn man optimierten Code statt Blueprints nutzt. Wenn ich mir so manche Material Blueprints anschaue die gefühlt 1000 Befehle ausführen und trotzdem läuft es flüssig als wärs nur ne Textur scheint das kaum ins Gewicht zu fallen. Das packen moderne CPUs mit links und Frameraten Probleme kommen fast immer durch Auflösung, Polycount und Beleuchtung.

    Das ist jetzt vielleicht ne ganz dumme Frage aber wenn das branch im Bluprint dem if entspricht, was ist dann and, or, not oder nor? In manchen Bereichen fehlt mir einfach grundsätzliches Basiswissen und es so peinlich Fragen zu stellen die wahrscheinlich in jedem Anfänger Tutorial schon erklärt wurden. Hab gestern auch wieder das halbe Animations BP zerschossen weil ich immer noch nicht raffe wie die Skelettdaten mit Animationsdaten verknüpft sind.

    "Dem Skelett SK_Mannequin is missing bones that SkeletalMesh SKM_Quinn needs. They will be added now. Please save the Skeleton!" Da wird aber nix geadded auch wenn ich speichere. Dazu werd ich wohl ein neues Topic aufmachen müssen weil die Fehlermeldung schlepp ich schon seit Monaten mit mir rum. ChatGPT gibt da immer tolle Vorschläge aber ohne das ich zeigen kann wie das Problem aussieht find ich keine Lösung.

    Kann ich das Animation starter pack irgendwie resetten? Skelette auf default zurücksetzen? Das hat teilweise schon geholfen indem ich ein neues Projekt erstellt hab und dann die uasset einfach rauskopiert und ersetzt habe. Teilweise bin ich glaub ich zu tief in die Editierungsmöglichkeiten eingetaucht und zerschiesse Basisidaten die man eigentlich nur als Profi ändern sollte. Jetzt hab ich sie doch geändert und kanns nicht mehr rückgängig machen.

    Wahrscheinlich ist das sogar mein größtes Problem, etwas funktioniert wie es soll, ich spiele etwas rum, merke das ich dadurch was kaputt gemacht hab, Projekt schliessen, keine Änderungen speichern und beim wieder öffnen sind die Fehler doch gespeichert. Dann häng ich wieder Wochen daran rauszufinden wieso das kaputt gegangen ist und wie ich es wieder normal mache, manchmal hats geklappt manches lässt sich nicht wiederherstellen. Dazu fällt mir dann ein: aaaaahahahhahahahahahahahhhhaaaaaaaaaaaaaaaaaaaaaaaaaaaaa wtf

    Alle Animation Starter pack animationen sind jetzt kaputt bei mir, warum? Keine Ahnung...

    Hier ich zeigs Dir mal:

    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.

    Warum lehnt dich die Figur bei Bewegung zurück?, warum kommt die Laufanimation nicht mehr und warum funktionieren die upper body animationen trotzdem? Ich will schreien wegen sowas und zweifel daran ob ich es alleine schaffen kann. Naja, ich schau Tutorials als hab ich eh nix alleine geschafft, trotzdem ist mir dieser Hilferuf peinlich.

  • Wenn ich mir so manche Material Blueprints anschaue die gefühlt 1000 Befehle ausführen und trotzdem läuft es flüssig als wärs nur ne Textur scheint das kaum ins Gewicht zu fallen. Das packen moderne CPUs mit links und Frameraten Probleme kommen fast immer durch Auflösung, Polycount und Beleuchtung.

    Und genau das ist das Problem, weswegen sogar viel AAA-Titel versagen. Niemand macht sich Gedanken über die Codeoptimierung. Nun mag es zwar ein sehr selten vorkommendes Beispiel gewesen sein, wo ein Programmablauf oft in eine leere Else-Verzweigung schauen muss, immerhin gibt es ja noch Events, Eventdispatcher usw., über die man vielleicht solche Situationen auch lösen könnte. Aber, stell dir mal vor, du hast ein Spiel, welches mit 120 FPS, also 120 Bildern pro Sekunde, laufen soll. Und jetzt läuft es aus irgendeinem Grund mal ganz blöd und er schaut auch 120 Mal pro Sekunde in dieses leere Else. Immerhin werden die meisten solche Abfragen hinter ein Tick-Event setzen, welches wirklich oft aufgerufen wird. Doch, dann kannst du die Performance verbessern, wenn du das vermeidest. Nur, weil heutige Rechner scheinbar enorme Rechenleistungen haben im Vergleich zu einem 80386er-Prozessor und auch mehr RAM haben, als die damaligen 640 KB, gibt es da keine Ausrede sich nicht zumindest darüber Gedanken zu machen und auch das neben hohen Polygonzahlen nach Möglichkeit zu vermeiden.


    was ist dann and, or, not oder nor?


    Mit dem logischen Not-Operator sieht es dann halt so aus


    Code
    if  (i != 20)
    {
        tu das eine;
    }
    else
    {
        tu etwas anderes;
    }


    Im zweiten Beispiel hast du die IF- und Else-Zweige quasi umgekehrt.


    Dann das Ganze mit AND


    Code
    if  (i == 20 && y < 20)
    {
        tu das eine;
    }
    else
    {
        tu etwas anderes;
    }

    Hier müssen beide Bedingungen erfüllt sein, sonst landet die Abfrage im Else-Zweig


    Und das Ganze noch einmal mit ODER


    Code
    if  (i == 20 || y < 20)
    {
        tu das eine;
    }
    else
    {
        tu etwas anderes;
    }

    In diesem Fall reicht es halt, wenn einer oder beide wahr sind. Nur wenn beide nicht erfüllt sind, landest du im Else-Zweig.


    Und so funktioniert es auch in der Engine.


    Das normale IF


    Zwei Varianten mit der Verneinung !=


    Beispiel mit AND


    Beispiel mit OR


    Im Wiki auf dieser Seite habe ich die logischen Operatoren übrigens mal eingefügt, da kannst du dir genau anschauen, welche Wirkung diese haben.


    Ich habe nochmal zwei Bilder eingefügt, die den Bereich des jeweiligen Codes darstellen und auch zeigen, dass das eigentliche IF vor dem Branch stattfindet.