Unreal Engine 4: Erstellen Sie Ihren eigenen Egoshooter | Tim Lash | Skillshare

Playback-Geschwindigkeit


1.0x


  • 0.5x
  • 0.75x
  • 1x (normal)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Unreal Engine 4: Erstellen Sie Ihren eigenen Egoshooter

teacher avatar Tim Lash, YouTuber & Game Design Instructor

Schau dir diesen Kurs und Tausende anderer Kurse an

Erhalte unbegrenzten Zugang zu allen Kursen
Lerne von Branchenführern, Ikonen und erfahrenen Experten
Wähle aus einer Vielzahl von Themen, wie Illustration, Design, Fotografie, Animation und mehr

Schau dir diesen Kurs und Tausende anderer Kurse an

Erhalte unbegrenzten Zugang zu allen Kursen
Lerne von Branchenführern, Ikonen und erfahrenen Experten
Wähle aus einer Vielzahl von Themen, wie Illustration, Design, Fotografie, Animation und mehr

Einheiten dieses Kurses

    • 1.

      Kurs-Trailer

      2:14

    • 2.

      Einführung und Projektübersicht

      10:56

    • 3.

      Herunterladen und Installieren

      2:21

    • 4.

      Unser Projekt einrichten

      6:20

    • 5.

      Unsere Figur bewegen

      9:28

    • 6.

      Inhaltspakete hinzufügen

      6:04

    • 7.

      Den ersten Mensch erstellen

      10:59

    • 8.

      Unseren Charakter animieren

      13:40

    • 9.

      Ausrüstung unserer Last (Teil 1)

      19:59

    • 10.

      Bestseller

      18:02

    • 11.

      So erstellst

      26:14

    • 12.

      Unsere eigenen Animationen machen

      27:58

    • 13.

      Wechseln

      7:51

    • 14.

      Dynamische Crosshairs

      27:27

    • 15.

      Den Main erstellen

      21:37

    • 16.

      Sprinting

      23:07

    • 17.

      Sprinting hinzufügen

      10:42

    • 18.

      Ammo Pick machen

      20:49

    • 19.

      Aufnehmen

      24:47

    • 20.

      Funktionalität neu erlegen (Teil 1)

      19:44

    • 21.

      Funktionalität neu erlegen

      23:20

    • 22.

      Weapon neu

      10:37

    • 23.

      Aufnahme

      3:13

    • 24.

      Realistisches Rückruf hinzufügen

      9:16

    • 25.

      Aufnehmen

      8:06

    • 26.

      Aufnahme

      16:01

    • 27.

      Wirkeffekte erstellen

      26:41

    • 28.

      Schreckende Feinheiten

      27:21

    • 29.

      Betrachtung

      20:53

    • 30.

      Zoom

      9:51

    • 31.

      Hit hinzufügen

      13:28

    • 32.

      Damage hinzufügen

      22:04

    • 33.

      Enemy Animation

      12:30

    • 34.

      Shooting (Teil 1)

      22:46

    • 35.

      Shooting (Teil 2)

      13:42

    • 36.

      Aufnehmen

      12:09

    • 37.

      Dinge laufen (Explosionen!)

      17:48

    • 38.

      Schießen von Grenade und Rocket

      16:06

  • --
  • Anfänger-Niveau
  • Fortgeschrittenes Niveau
  • Fortgeschrittenes Niveau
  • Jedes Niveau

Von der Community generiert

Das Niveau wird anhand der mehrheitlichen Meinung der Teilnehmer:innen bestimmt, die diesen Kurs bewertet haben. Bis das Feedback von mindestens 5 Teilnehmer:innen eingegangen ist, wird die Empfehlung der Kursleiter:innen angezeigt.

1.424

Teilnehmer:innen

3

Projekte

Über diesen Kurs

In diesem Kurs erfährst ich den Kurs durch den Prozess der Erstellung eines first-person Dieser Kurs nutzt Unreal Engine 4 – die gleichen AAA Spiele-Studio

Dieser Kurs enthält 38 video die dich Schritt für Schritt durch folgende Themen führen werden:

  • Wie du 6 anpassbare Waffen erstellst (es ist Pistole, pistol, Schotterung, pistol, shotgun,
  • Wie du den Aufruf und auf hit würdigen Waffen erstellst
  • Wie du eine first-person Figur animierst
  • Wie du komplexe Nachladen und Aufnahmesysteme
  • Wie du dynamische Wirkungen hervorbringst
  • Wie du feindliche Figuren auf bestimmte Körperteile beschädigen kannst
  • So erstellst du interactable ammo
  • So erstellst du ein player mit Widgets
  • Wie du ein Spiel mit realistischen Partikel und Soundeffekte hinzufügst
  • Und so viel mehr!

Mit dem Wissen du in diesem Kurs erfährst, erziehst du ein tiefes Verständnis der erziehenden shooter Dieses Wissen gilt für alle Arten Genres, wie es um locker, Überlebens-Horror, Militär und Sci-fi und andere , sodass du dieses Projekt in eine endlose Anzahl von Richtungen machen kannst! Obwohl jemand diesen Kurs machen kann. Die Sache mit dem Nachschlagen

Triff deine:n Kursleiter:in

Teacher Profile Image

Tim Lash

YouTuber & Game Design Instructor

Kursleiter:in

Hi, my name is Tim – but some of you may know me better as Timbo from my gaming YouTube channel with over 130,000 subscribers! Outside of making YouTube videos, I work at Epic Games on the popular title, Fortnite! Over the years, my creative passions have turned into real, practical knowledge. Game design and other creative fields are within your grasp, no matter where you're starting from. With my classes, I hope to help further your knowledge and kickstart your journey!

Vollständiges Profil ansehen

Level: Intermediate

Kursbewertung

Erwartungen erfüllt?
    Voll und ganz!
  • 0%
  • Ja
  • 0%
  • Teils teils
  • 0%
  • Eher nicht
  • 0%

Warum lohnt sich eine Mitgliedschaft bei Skillshare?

Nimm an prämierten Skillshare Original-Kursen teil

Jeder Kurs setzt sich aus kurzen Einheiten und praktischen Übungsprojekten zusammen

Mit deiner Mitgliedschaft unterstützt du die Kursleiter:innen auf Skillshare

Lerne von überall aus

Ob auf dem Weg zur Arbeit, zur Uni oder im Flieger - streame oder lade Kurse herunter mit der Skillshare-App und lerne, wo auch immer du möchtest.

Transkripte

1. Kurs-Trailer: Eines der beliebtesten Genres im modernen Gaming ist der Shooter. Vertrauen Sie mir, Ich google diese cenotes legit innerhalb der Shooter-Genre kommt in Fülle von Sub-Genres. Plünderer wie Destiny, militärisches Schlachtfeld und Call of Duty, C5a, Halo-Arena, wie Overwatch, Survival Horror, Resident Evil. Die Liste geht wirklich weiter und weiter. Diese Klasse zielt darauf ab, Ihnen die Grundlagen der fortgeschrittenen Ego-Shooter-Mechanik beizubringen, so dass Sie jedes Shooter-Spiel Ihrer Wahl erstellen können. Hallo, mein Name ist Tim, aber einige von euch kennen mich vielleicht besser als Holz für meinen YouTube-Kanal mit über 130 Tausend Abonnenten außerhalb von YouTube-Videos auf meinen Lieblingsspielen, ich arbeite derzeit für Epic Games, die Macher der Unreal Engine auf dem beliebten Battle Royale Spiel Fortnite. In diesem Kurs werden wir mit einer völlig leeren Vorlage beginnen, um es in einen robusten Ego-Shooter zu verwandeln, werden wir sechs vollständig anpassbare Waffen erstellen, jede aber ihre eigenen Sounds, Animationen, Nachladezeiten, Aufschub Spreads, Rückstoßintensität, Aufpralleffekte, Munition Pickups und vieles mehr. Ich werde Ihnen zeigen, wie man Spiel imitiert, wie Call of Duty, mit unsichtbaren Linienspuren dynamische Treffer Ereignisse zu erzeugen, andere Waffen werden realistischere Titel wie Schlachtfeld nachahmen, die tatsächliche Projektile herausschießen unserer Geschütze, so dass wir unsere Geschossgeschwindigkeit und Schwerkraft anpassen können. Wir werden bedecken, wie man Dinge mit Handgranate und Raketenabschussvorrichtungen sprengt. Wir werden sogar eine feindliche Klasse bilden, die dynamisch auf Schaden reagiert , abhängig von dem Körperteil, den wir auf Festival treffen. Jedes Asset, das in diesem Kurs verwendet wird, ist 100% kostenlos, da wir Unreal Engine 4 verwenden werden, die gleiche Spiel-Engine, die verwendet wird, um diese beliebten AAA-Titel zu erstellen. Während diese Klasse von jedermann genommen werden kann, empfehle ich sie für diejenigen, die zumindest einige Unreal Engine Codierung Erfahrung haben, da die meisten unserer Arbeit Skripte in Blueprints durchgeführt werden. Also, wenn Sie Ihre unwirklichen Fähigkeiten auf die nächste Ebene bringen wollen, oder Sie wollen einfach lernen, wie beliebt Shooter-Spiele erstellt werden. Folgen Sie mir und ich werde Sie Schritt für Schritt durch den Prozess führen. In Unreal Motor vier. 2. Einführung und Projektübersicht: Hallo an alle und willkommen in dieser Klasse auf Unreal Engine 4, wo wir einen Ego-Shooter bauen werden. Mein Name ist Tim. Ich werde dich durch all die coolen und tollen Sachen führen, die wir in dieser Klasse machen werden. Also werde ich versuchen, dieses erste Video ziemlich unkompliziert zu halten und nur ein wenig Zeit zu nehmen, um in einer detaillierteren Weise zu gehen , für wen diese Klasse am besten geeignet ist. Und dann, wenn Sie sich etwas Zeit nehmen, um das endgültige Projekt zu überblicken, das wir bauen werden. So ziemlich jeder, der will, kann diese Klasse nehmen, ich empfehle es für Leute, die eher eine mittlere Ebene sind. Also, wenn Sie den vorherigen Kurs genommen haben, den ich auf Action-Abenteuer-Spiele gemacht, dann sollten Sie in Ordnung sein Schritt in diese. Wenn ich „Mittelstufe“ sage, meine ich nicht jemanden, der eine extreme Menge Dinge kennt. Ich will die Leute nicht davon abbringen, diese Klasse zu nehmen, wenn sie noch nie Unreal Engine angefasst haben. Aber du musst das nur wissen, wie ich erwarte, dass du sehr grundlegende Dinge kennst. Nur nicht die Zeit genommen werden, um zu erklären, was die Unterschiede zwischen wie ein Float und eine ganze Zahl wird eine Menge von Variablen in dieser Klasse zu schaffen. Und ich werde mir nicht die Zeit nehmen, um einen Überblick zu geben, wie wo sich die Dinge in der Engine befinden und was eine Blaupause ist. Und genau wie das ganz einfache Anfänger-Typ-Zeug. Also, wenn Sie sich Sorgen darüber machen, können Sie gehen und die anderen Klassen, die ich gemacht habe, nehmen. Aber wenn Sie sich mit dem Zeug ziemlich wohl fühlen oder es Ihnen egal ist, dann sind Sie an der richtigen Stelle. Ich werde nicht die Art von Person sein, die nur ein paar Knoten herausziehen wird und nur sagt, Tu das, tu das, und dann boom, dieses Ding funktioniert so, als ob ich wirklich will, dass die Leute lernen und verstehen, was es ist, dass ich Tun. Also werde ich gründlich und akribisch sein, so gut ich kann, damit du verstehen kannst , was wir eigentlich tun, damit du selbst etwas erschaffen kannst, weil du weißt, das ist der Punkt, nicht wahr? So hmm. Ich dachte nur, ich kriege das da raus, bevor wir anfangen. Aber wenn Sie irgendwelche Fragen haben, zögern Sie nicht , sie in der Diskussion zu lassen und ich werde mein Bestes tun, um sie so schnell wie möglich zu beantworten. So ja. Also lasst uns etwas Zeit nehmen. Ich werde das Projekt öffnen, das wir haben. Dies wird so ziemlich genau sein Ihr Projekt aussehen wird, wenn alles fertig ist. Also gehe ich weiter und klicke auf Play und wir werden sehen, was wir hier haben. Sofort wirst du bemerken, dass wir hier drüben Feinde haben. Wir haben eine sehr einfache Art von Minimap, die Tracks Trick. Wir können Spuren sehen. Trackt Spuren auf. Wen kümmert es, wo sich unser Spieler auf der Karte bewegt. Es ist nichts Besonderes, aber es gibt Ihnen eine Vorstellung davon, wie man so etwas macht. Hier drüben haben wir zwei verschiedene Arten von Oberflächen, die ich erklären werde, warum sie in einem Moment da sind. Hier hinten haben wir unseren Waffenschrank. Wir haben sechs verschiedene Waffen zu machen, von denen drei Treffer Scans sind. Sie werden in diesen unsichtbaren Linien rausziehen. Es ist ähnlich wie ein Spiel wie Call of Duty, wo der Treffer der Kugel an die Oberfläche ist sofort. Und dann unsere letzten drei hier drüben, das Scharfschützengewehr, der Granatwerfer und die Rakete. Die werden von Projektil sein. Wir werden tatsächlich eine Blaupause , die als Projektil, das eine Bewegungskomponente hat, aus dem Gewehrfass schießen wird und wir werden sehen, was das trifft. Und damit können wir coole Dinge damit machen. Wir können verschiedene Geschwindigkeiten und unterschiedliche Schwerkraft anwenden, um verschiedene Bögen und Explosionen und coole Sachen wie diese zu erzeugen , um etwas Radiusschaden zu verursachen. Die Pistole ist halbautomatisch. Das Gewehr wird einige Rückstoß, um es zu haben und eine automatische Variante in der Schrotflinte wird eine Ausbreitung schießen. Wenn wir also zu einer dieser Waffen gehen und die E-Taste drücken, werden wir sie ausrüsten und Sie können unsere aktuelle Munition oder Reserve Munition und dann auch den Feuertyp sehen . Und dann sehen Sie, dass dieser Ausdauerbalken auch unten rechts angezeigt wird. Und dann haben wir unser Fadenkreuz, das sich dynamisch auf den Spieler bewegt und sprintet. Es ist also alles animiert. Ich werde schön. Die Reihenfolge, in der diese Waffen aufgenommen werden, spielt eigentlich keine Rolle, aber in welcher Reihenfolge Sie sie auch abholen, wir binden sie irgendwie an diesen Schlüssel. Also haben wir zuerst die Pistole aufgenommen. Also, wenn ich eins treffe, wechseln wir zurück zum Stempel und ich habe zwei getroffen , um zum Sturmgewehr hier zu gehen. Dann werden drei unsere Schrotflinte sein. Vieren sind Scharfschützengewehr, fünf ist unser Granatwerfer und sechs ist unsere Rakete. Und alle von ihnen haben ihre coolen kleinen Sounds und so alles. Also, wenn ich vorwärts gehe und zurück zum Brief wechsle, damit du irgendwie sehen kannst, wie die Kugel ausgebreitet ist. Denken Sie Pistole wie das Fadenkreuz zu Raketen fühlen. Rakete hat kein gutes Hüftfeuer. Und das hippe Feuer ist etwas, das wir tun werden, und tatsächlich zählt es. Das erkläre ich Sekunden. Zu unseren Munitionstypen haben wir also eine AML-Variante pro Waffe. Wenn ich zu ihm gehe und E drücke, werde nichts tun, es sei denn, Sie holen die richtige Antwort. Das ist also die Pistolenmunition. Und wenn man sich unsere Reserven anschaut, wird die 144 jetzt 16 Acht. Und ich kann mit keinem dieser anderen interagieren, aber ich habe das Sturmgewehr getauscht. Ich kann das hier abholen, die Schrotflinte. Das hier. Du verstehst den Punkt. Ok. Gehen Sie zu unseren verschiedenen Oberflächentypen. Also eine Möglichkeit, dies in der Hit-Scan bei Projektil's Show zu veranschaulichen. Also, wenn ich das in den Himmel schieße, drücken die Briefe Scan. Du siehst, du siehst einige Effekte, aber eigentlich passiert nichts. Ich kann weitermachen und unsere Waffe wieder aufladen. Aber wenn ich auf so etwas wie das Scharfschützengewehr umschalte und die Firewall traf, sah ich tatsächlich , wenn man sich das Fass anschaut , wenn man sich das Fass anschaut, dass etwas herauskam. Wieder, es ist sehr offensichtlich, dass Sie den Granatwerfer benutzt haben. Kann dort einen viel drastischeren Bogen sehen. Was wir also tun werden, ist, dass wir unterschiedliche Auswirkungen haben werden, abhängig von verschiedenen Oberflächen. Also haben wir Metall, die Mannequin Männer sind von einer Metallvariante, weil wir in der FX-Abteilung hier fehlen. Geben Sie einfach eine Demonstration und dann haben wir Stein, also ein paar verschiedene Effekte. Also, wenn ich das erschießen würde, merkst du, dass ein paar Einschusslöcher so hineingehen. Und wir werden die Größen davon anpassen. Und du wirst ein paar kleine Metallflackern sehen. Und dann haben wir anders, es ist ein bisschen schwer mit der Pistole zu sehen. Aber ja. Wenn ich also zu unserem Sturmgewehr umtausche, werden wir ein paar Dinge damit tun, wenn ich den Abzug gedrückt halte und ich nicht ziele, wird einen Rückstoß haben der die Waffe nach oben bewegt und die Kugeln sind irgendwie nach dem Zufallsprinzip ausbreiten. Aber wenn ich in nicht Controller Rückstoß zielen und eigentlich nur für eine Sekunde nachladen würde. So kann ich das demonstrieren. Ich ziele und die Kugeln landen genau dort, wo wir zielen. Also werden wir realistisches Hüftfeuer hinzufügen, dann die Schrotflinte, wenn wir das schießen, bekommen wir eine Ausbreitung. So wie das. Ziemlich cool. Schließlich werde ich zeigen, ich glaube, ich habe der Ausdauer Bar gezeigt, wie das läuft. Lassen Sie los. Und dann geht es wieder wie Magie. Wow. Zu guter Letzt haben wir unsere Feinde. Also sind alle unsere Feinde gleich. Und was wir tun werden, ist die Nachbildung von Treffermarken. Und wir werden verschiedene Arten von HIT Markern haben je nachdem, ob es ein normaler Treffer oder ein Kill Hit ist. Und dann haben wir diesen Feinden verschiedene physische Materialien zugewiesen. Es wird verschiedene Schadensmengen erkennen, je nachdem, wo wir sie getroffen haben. Also wird der Kopf am meisten tun. Wir gehen zu Yeah, die Köpfe können das Meiste tun. Dann haben wir den Körper, die Beine, die Arme. Also, wenn ich ihn in die Brust getroffen, 2015512, und dann ist der Kopf irgendwie cool, denn wenn wir ihn in den Kopf schlagen wird eine gelbe Zahl wie die bekommen und dann hat er eine 100 Gesundheit. Damit er hier sterben könnte. Und wir sollten so einen Lese-Hit-Marker bekommen. Und dann haben wir eine Stoffpuppe Physik, die auf diese angewendet werden. Also werden wir tatsächlich ein wenig Impuls schießen , je nachdem, wo wir sie getroffen haben. Also, wenn ich 20, 40, 60, 80 habe. Also, wenn ich ihn wie in den Arm schieße, bewegt es sich mit dem Arm zurück. Und dann andere Waffe wählen, dass die Pistole nicht eine ganze Menge Kraft hat, aber unser Schock und hat eine Menge Kraft. Also, wenn ich ihn hier traf, flog er rückwärts. Wir bringen sie in den Rücken, Räder fliegen vorwärts. All das wird von dem diktiert, wo wir diese Feinde treffen. Scharfschützengewehr, wir können mit einem Zielfernrohr zielen. Da gehen wir. Und nicht zuletzt haben wir einige Granatwerfer und die Rakete, um Schaden zu treffen. So werden Sie viele beschädigte Zahlen sehen und wie ein Kegel davon, wie das, um einige coole Explosionen, einige größere Auswirkungen Effekte und all das zu bekommen . Das ist also so ziemlich das Projekt. Das ist es, was wir machen werden. Das hier. Was ich damit erstellen wollte, war im Wesentlichen wie eine wirklich, wirklich tolle Vorlage. Die Art und Weise, wie wir das konstruieren, wie Sie sehen werden, dass, wenn alles gesagt und getan wird, Sie ein wirklich, wirklich robustes, fortschrittliches System von Waffen und Pickups undverschiedenen physikalischen Materialien haben fortschrittliches System von Waffen und Pickups und , so dass können Sie ganz einfach Ihre eigenen GAN-Netze und Ihre eigenen Geschütze Soundeffekte eintauschen, wenn Sie Lage sein wollen, es zu machen, was Sie wollen. Also, während es Kunst gibt, denke ich in dieser Klasse, wie wir es mit Soundeffekten tun und wir haben etwas Kunst. meiste, was wir tun werden, ist die Verwendung von Blueprints und Skripten im Ereignisdiagramm. Also wollte ich all das grundlegende Wissen dort bekommen , so dass, wenn Sie dies in Ihr Portfolio setzen wollen, können Sie dies leicht in wie einen futuristischen Shooter machen, indem Sie die Maschen austauschen. Die Soundeffekte, wie ich sagte, können Sie es in Überleben Zombie-Typ Spiel zu machen. Sie können diese Jungs Aliens oder Zombie ihre Armee Männer machen oder was auch immer. Sie können die Menge der Munition und die Art der Höhe des Schadens, die sie verursachen, anpassen. Wir werden das alles sehr leicht zugänglich machen. Und der Grund, warum ich das getan habe, war, weil ich eine Grundlage schaffen wollte, wie ich sagte, so dass Sie dies in die Art von Spiel machen können, das Sie es machen wollen, damit alle Projekt am Ende nicht wie das gleiche aussehen. Also werden Sie alle das haben, aber dann werden Sie das Wissen haben, um dies sehr leicht zu bearbeiten und es in etwas Schönes zu machen , das Sie wollen, weil es so viele verschiedene Arten von Shootern gibt. Also wollte ich Ihnen diese Basis zur Verfügung stellen. So hoffentlich klingt das interessant und lustig, cool. Und wenn es so ist, werde ich dich im nächsten Video begleiten. Also danke euch Jungs, dass ihr diese Klasse besucht habt. Ich weiß es wirklich zu schätzen, ob Sie ein Rückkehrer sind oder das ist Ihr erstes Mal. In lassen Sie uns im nächsten Video beginnen. 3. Herunterladen und Installieren: Hallo an alle und willkommen zurück zu einem anderen Unreal Engine 4 Video. Das hier wird wirklich kurz sein, süß. Und bis zu dem Punkt, den ich tun werde, ist nur kurz darüber zu sprechen, wie Sie Unreal Engine 4 unter Ihrem Computer installieren können , wenn Sie es nicht bereits haben. Also, wenn Sie einen Browser Ihrer Wahl öffnen und gehen Sie zu Unreal Engine.com oder was auch immer. Hier, ich bin in den Vereinigten Staaten. Also, was auch immer es für Sie ist, gehen Sie hier rüber und Sie werden einige Informationen über den Motor in all diesem coolen Zeug bekommen , einige Spiele, die damit gemacht wurden. All das tolle, coole epische Spiele-Zeug, das sie hier los haben. Gehen Sie einfach weiter und klicken Sie auf Download. Sie werden nur die nette Schöpfer-Lizenz erhalten wollen, die absolut kostenlos ist. Klicken Sie auf Download, und befolgen Sie dann die Schritte, um dies zu tun. Auf diese Weise sollten Sie auch den Epic Games Launcher auf Ihrem Computer installiert haben. Also, wenn wir das öffnen und Sie ein Konto darauf haben, gehen Sie zu dieser Registerkarte „Unreal Engine“ und gehen Sie dann zur Bibliothek. Dann sollten Sie hier sehen, dies ist Engine-Versionen, die Sie gehen, um das Plus zu treffen. Und dann werden Sie wählen, welche Sie wollen. Die, die wir für dieses Projekt verwenden werden, ist 4.26.2 oder 4.26.2, ich denke, es ist das, was es technisch genannt wird. Technisch gesehen, können Sie verwenden, was auch immer Sie wollen. Wenn Sie diese Vier-Punkt-27 verwenden möchten, oder wenn Sie wirklich verrückt sein wollen und tun Unreal Engine fünf, Ich denke,, Gehen Sie weiter. Ich würde Ihnen raten, 4.26.2 zu verwenden, weil das das ist, was ich verwenden werde. Das ist wie die neueste Version, die wie kein früher Zugriff Dinge ist. Es wird also am stabilsten sein. Und während es nicht gibt, wie typischerweise viele große Unterschiede zwischen Unreal Engine-Versionen. Während Sie das machen, könnten Sie auf ein paar dieser kleinen Arten von Dingen stoßen. Sie könnten feststellen, dass etwas, das ich mache, in Ihrer Version nur ein bisschen anders ist. Also, wenn Sie es sicher spielen wollen und Sie wollen es smart spielen und keine Risiken eingehen, dann laden Sie für 0.26.2 sonst, viel Glück für Sie. Aber sobald er das erledigt hat, sind wir bereit. Im nächsten Video werden wir anfangen, unser Projekt zu erstellen und einige Inhaltsdateien hinzuzufügen. Also werde ich dich dort sehen. 4. Unser Projekt einrichten: Alle und willkommen zurück zu einem anderen Video auf Unreal Engine 4. Jetzt, da wir die Engine hoffentlich heruntergeladen haben, können wir damit beginnen, unsere Projekte zu erstellen. Das ist also, was wir in diesem Fall tun werden. Okay, also in Ihrem epischen Spiele-Launcher, gehen Sie vor und klicken Sie auf Starten neben Ihrer Motorversion, die Sie haben. Und dann nach einer Sekunde des Initialisierens und Ladens wird sich dieses Menü öffnen. Wir werden auf Spiel klicken, weil wir Spiele machen würden. Schlag als Nächstes. Und wir werden in einem leeren Projekt arbeiten. Und unwirklich hat eine First-Person-Vorlagen. Und obwohl das alles gut und gut ist, so ziemlich der ganze Code, den Epic da drin hat, werden wir sowieso nicht verwenden. also ein leeres Projekt verwenden, müssen wir ein paar Schritte in diesem Video machen und den nächsten, den wir normalerweise nicht tun müssten. Aber wenn wir es auf diese Weise tun, können wir alles und mehr personalisieren, wie wir es wollen. Es wird einfach besser für uns funktionieren. Okay, vertrau mir. Gehen Sie also voran und klicken Sie auf Leeres Projekt. Suchen Sie einen Ort auf Ihrem Computer, den Sie dieses Projekt speichern möchten. Und ich werde diese FPS nennen. Wie soll ich es nennen? Klasse-Projekt. Das sieht ziemlich gut aus für mich. In Ordnung. Und dann gehen Sie weiter und wenn Sie bereit sind, geben Sie ihm einen Namen, gehen Sie vor und klicken Sie auf Projekt erstellen. Mit unserem Projekt offen. Wenn Sie es richtig gemacht haben, sollten Sie diese beiden seltsamen, funky aussehenden Stühle mit dieser sehr teuren Glassache sehen , die auf einem Tisch sitzen. Warum dies die Standard-Engine Sache ist. Ich habe keine Ahnung, aber das ist es. Wir können voran gehen und klicken Sie auf diesen kleinen Button hier, um alle unsere Ordner anzuzeigen. Der satte, einer von ihnen, der Starter-Inhalt, der automatisch aktiviert werden sollte. Und wir werden damit beginnen, ein paar Dinge aufzustellen. Also lassen Sie uns voran und klicken Sie mit der rechten Maustaste auf den Inhalt und erstellen Sie einen neuen Ordner und wir werden diese FPS nennen. Oh, schieß. Fps-Spiel. Könnte gern um mein Mikrofon manövrieren. Halten Sie eine Sekunde. Ok. Unterhalb dieses Ordners, Lassen Sie uns mit der rechten Maustaste dorthin klicken und diese Blueprints auch dort aufrufen . Sie haben recht. Und dann wieder unten werden wir einen anderen machen, der Charakter genannt wird. So FPS-Spiel Blueprints Charakter. Und wenn du wie ich bist, setzst du die Dinge gerne als Farben. Also werde ich Shift gedrückt halten und alle auswählen. Ich gehe, um Farbe einzustellen. Ich werde meine Ordner rot machen. Lass es uns so machen, okay? Und wenn du schlau wärst, im Gegensatz zu mir, hättest du das gezogen und gespeichert, es scheint, dass wir es später immer benutzen können. Okay, in unserem Blueprints-Ordner, Lassen Sie uns mit der rechten Maustaste und öffnen Sie den Raum. Geh zur Blueprint-Klasse, was mir aus irgendeinem Grund lächerlich schwer zu sagen ist. Und wir werden eine Spielmodus-basierte Spielmodus-Basis zu machen, wie es hier sagt, dieser Tool-Tip definiert das Spiel gespielt wird, seine Regeln Scoring andere Facetten des Spiels. Wir werden nicht setzen ganze Bündel von Daten hier in, aber wir schaffen dies wurde BP unterstrichen Spielmodus-Basis genannt. Und lasst uns mit der rechten Maustaste. Machen Sie eine andere Klasse hier, Spieler-Controller, BP Unterstrich Spieler Controller. Und dann nicht zuletzt, lasst uns noch einmal darauf klicken. Und dann unter allen Klassen ist Dropdown-Menü. Lassen Sie uns nach HUD suchen, richtig, sollte gut sein, etwas mit dem HUD zu tun. Also lasst uns gehen BP Unterstrich HUD. Nun, wir können das tun, ist, dass wir die Schaltfläche „Alle speichern“ drücken können. Es wird diesen kleinen Asterix da los. Also sind all unsere Dinge jetzt gerettet. Dann innerhalb unseres Charakterordners werden wir unseren Charakter machen. Also noch einmal, Blueprint Class Charakter und wir werden diesen bp Spieler nennen. Es ist Control-S. Um das nur sehr schnell zu sagen, mache ich das sehr viel. - Ja. Also zwei Möglichkeiten, wie wir das tun können. Wir können entweder auf Demode-Basis doppelklicken oder wir können tun, was ich tun möchte, das sind Einstellungen, Projekteinstellungen. Dann unter dem Projekt hier gibt es diese Registerkarte, Sie sagen Karten und Modi. Du klickst darauf. Also werden wir unter dem ausgewählten Spielmodus fallen. Siehst du, wir haben all diese kleinen Standarddinge, die ausgegraut sind. diesem Grund haben wir hauptsächlich eine Spielmodusbasis erstellt, so dass wir unseren Charakter als Standardwert auf einspielen können . Wir tun das nicht, dann spielt es keine Rolle, was auch immer Scripting, aber in der Nähe des Spiels wird dies nicht als die Figur registrieren, die wir uns spielen wollen. Also lassen Sie uns Slot in BP Game Mode Basis für Default Pawn. Lassen Sie uns in bp Player und unsere HUD-Klasse, dp HUD und Spieler Controller Klasse bp, Spieler Controller, Spielzustand Spieler Zustand Zuschauerspiel Instanz können diese erstellen, wenn wir wollen, aber wir werden sie nicht wirklich nutzen. Die Standardeinstellungen sollten also gut und dandy sein. Eine andere Sache, die ich tun möchte, bevor ich dieses Video beenden ist auf diesem kleinen Dropdown-Menü rechts hier, auf einem Rechtsklick in erweiterten Einstellungen unter spielen, das ist nur persönliche Präferenz. Ich mag zu wählen Spiel bekommt Maussteuerung. Dies ermöglicht es, dass, wenn ich auf spielen, Ich muss nicht jedes Mal in das Fenster klicken , wenn es automatisch in das Spiel eintritt. Und dann unter dem gleichen Dropdown-Menü mag ich es ein neues Editor-Fenster, anstatt in diesem Ding zu spielen. Wenn Sie also bemerken, wenn wir Play drücken, haben Sie Musik. Nun, es ist nicht wirklich Musik. Es ist atmosphärischer Klang, nehme ich an. Und wenn Sie die Tasten drücken, drücken Sie die Maus, bewegen Sie die Maus, es tut nichts im Moment, weil wir das Skript noch nicht hinzugefügt haben. Also, wenn Sie es auf die altmodische Art und Weise tun und verwenden Sie eine der Vorlagen und nur Sie können sofort bewegen. Aber in der leeren Vorlage können Sie das nicht tun. Im nächsten Video werden wir es unserem Spieler erlauben, sich umzuschauen und sich zu bewegen. Und ja, wir machen ein paar Lattes hart. Also im Moment ist es nur einige grundlegende Framework-Dinge, aber es ist gut zu wissen, wie man das macht. Das werden wir also im nächsten Video machen. Also hoffe ich, Sie dort zu sehen. 5. Unsere Figur bewegen: Hallo an alle und willkommen zurück zu einem anderen Video. Im letzten haben wir unser Projekt erstellt. Und in diesem Video werden wir unseren Spieler erlauben, sich umzusehen und zu bewegen, so dass wir einfach nicht so seltsam, unbeweglich sind. Ich weiß nicht einmal, wie du es nennen willst. Also, um dies zu beginnen, ziemlich einfach, Gehen wir zu Einstellungen. Projekteinstellungen haben es hier bereits geöffnet. Und dann unter dem Motor, werden Sie die Eingabe auswählen wollen. Und Sie werden diese Bindungen für Aktionszuordnungen in Zugriffszuordnungen sehen. Wir wollen mehrere davon erstellen. Also lassen Sie uns beginnen, tun Sie dies in einer seltsamen Reihenfolge, weil tatsächlich Karte sagt er oben, Lassen Sie uns auf das Pluszeichen klicken. Und lasst uns springen. Darunter. Geben Sie einfach die Leertaste ein. Das ist alles, was wir dort tun wollen. Unter Zugriffs-Mappings wollen wir 41234 erstellen. Du musst dieses kleine Dreieck treffen, um sie zu sehen. Wir werden eine namens Maus X erstellen und wenn Sie darauf klicken, könnte sie auf alle fallen lassen, wie ich es gerade für mich getan habe. Maus Y ist eine andere, die ich vorwärts bewegen und nach rechts bewegen möchte. Für vorwärts bewegen und nach rechts bewegen. Du willst dieses kleine Plus treffen, um sicherzustellen, dass es zwei von ihnen gibt. Mousex, Maus weiß und hinterlässt einen. Also für Maus X, würden wir wollen, dass MouseX ziemlich verrückte Sachen für die Maus machen. Warum? Es ist nicht MouseY, es ist Maus war okay für vorwärts bewegen. Er wollte es W und S. schaffen und richtig, du willst es D und ein machen. und richtig, du willst es D und ein machen. Aber eine Sache, die Sie bemerken könnten, sind diese kleinen Dinge hier. Also warum wir nicht invertiert oder nicht komisch spielen, werden wir es negativ machen, um vorwärts für S zu bewegen, da S rückwärts sein würde und wir einen für vorwärts machen, wollen wir das negative machen. Das Gleiche für ein. A wäre übrig, ist das Gegenteil von rechts. Also wollen wir, dass es negativ ist als unsere Skala. Das ist alles aufgestellt und bereit gut. So können Sie technisch aus da raus. Das nächste, was wir tun möchten, ist eine entweder Blueprints, die Sie unseren Player-Controller öffnen möchten. Richtig? Du wirst dieses Wort Kamera sehen. Ignorieren Sie die Kamera, löschen Sie dort die Standardknoten. Und wir werden diese beiden Mauseingaben anrufen. Also habe ich gemacht, so werden wir in der Maus X eingeben. Sie wollen die Achse Ereignis klicken. Das haben wir gerade erschaffen. Und eine Maus, Warum nicht Sie? Da gehen wir. Von der Maus X möchten wir Ihre Eingaben hinzufügen. Wenn ich buchstabieren kann, gehen wir. Und der Achsenwert wird dieser Wert sein. Nun, wenn Sie dies durch eine Variable ändern wollten, könnten Sie hier ein wenig Multiplikation machen und sagte zu einer Variablen, ändern Sie Ihre Empfindlichkeitseinstellungen auf diese Weise. Das hätte vielleicht keinen Sinn ergeben, was ich gerade gesagt habe. Aber mach dir keine Sorgen. Es ist nicht wichtig. Für die Maus, warum Sie Pitch Plugin-Achsenwert zum Wert hinzufügen möchten. Gehen wir weiter und wählen Sie das Ganze aus. Drücken Sie C, um ein Kommentarfeld zu machen, und wir werden nur diese Mauseingaben aufrufen. So wie das. Ich mag die Blasen nicht und ich lasse sie lesen, wie wir es vorher getan haben. Da gehen wir. Und das ist alles, was wir tun wollen. Sie neben dem Kompilieren dieses Drop-down-Menü auf Speichern beim Kompilieren und nur bei Erfolg tun. Das heißt, wenn Sie Kompilieren drücken, wird es auch gespeichert. Hey, kompilieren, sparen Sie eine ziemlich gute, um diese kleinen Dinge zu wissen. Vertrau mir, Leute. Wie Control S da drüben. Als Nächstes ist unser HUD. Wir gehen rüber zum Veranstaltungsdiagramm hier drin. Und wir werden Ereignis gezeichnet erhalten HUD. Sehen Sie, was das in einer Sekunde tut. dem Ausführungsdraht möchten Sie ein Rechteck zeichnen, Rechteck zeichnen oder was auch immer. Und dann aus der Größe x, plotten Sie ein Sternchen, multiplizieren Sie für einen int oder einen Float. Und dann kopieren Sie es und tun Sie es für die Größe. Warum? Sie möchten dies für Bildschirm x Größe x Grün x Größe anschließen. Warum Bildschirm? Warum? Wir werden das mit 0,5 multiplizieren. Was wir hier tun, ist, dass wir ein kleines Rechteck auf unserem Bildschirm zeichnen. Sagte, dass Farbe und machen Sie es weiß. Und wir machen es zwei mal zwei, W und HR Breite und Höhe. Also nicht ganz unkompliziert da. 0.5 ist, dass sie die Größe des Bildschirms im x und im y nimmt und es in zwei Hälften schneidet. Nur um dies zu demonstrieren, wenn ich auf Play klicke, wirst du jetzt sehen, dass ich es verschieben kann. Ich kann mich nach einer Sache umsehen und du wirst da einen kleinen Punkt sehen, der für uns hilfreich sein wird, wenn wir unsere Radikale machen. Sie können die Mitte des Bildschirms sehen. Also der Controller und der Water, alles gut. Das Letzte, was wir tun wollen, ist, dass wir unserem Spieler erlauben wollen, sich mit W, A, S und D zu bewegen , und wir wollen, dass er springen kann. Also lasst uns unseren Spieler öffnen. Ich denke, all diese Einstellungen gehen tatsächlich voran und verwenden Controller-Rotation. Ja, deaktivieren Sie das beim Vizepräsident. Spielen Sie sich selbst. das rückgängig. Eigentlich werde ich ein neues Ereignisdiagramm erstellen und ich werde es und Bewegungen nennen. Wenn Sie ein neues Ereignisdiagramm hinzufügen möchten, treffen Sie einfach dieses kleine Plus in einem neuen Diagramm. Der Grund, warum ich das tue, ist nur für organisatorische Zwecke, ich möchte alle meine Art von Bewegungskomponenten setzen, springen, sprinten, bewegen sich in einem Ereignisdiagramm, so dass es einfach nicht wie ein Konglomerat von Ereignissen in einem -Graphen. Ich bleibe gern organisiert. Es ist wichtig. Also klicken Sie mit der rechten Maustaste und wir werden jetzt move forward aufrufen, nicht die Funktion, sondern das Achsenereignis, das wir erstellt haben. Und wie Sie wahrscheinlich erraten können, wollten wir dasselbe für den Umzug, oder? Ok. Aus Bewegung 40, möchten Sie eine Bewegungseingabe hinzufügen. Und wir wollen das gleiche tun beim Kopieren Einfügen, das von rechts in die Achsenwerte und den Fähigkeitswert genau wie zuvor. Aber außerhalb der Welt wollen wir vorwärts, vorwärts, vorwärts. Warum? Nun, das habe ich falsch geschrieben. Die meisten Vorwärtsvektor für Vorwärts- und dann Weltrichtung aus rechts. Ich werde den richtigen Vektor bekommen. Ausziehen eines dieser Rotatoren. Du willst einen Rotator machen. Dieser untere hier, steckte ihn tatsächlich in beide ein. Und ich werde nicht im Detail übergehen, was zum Teufel hier passiert, denn das ist, was normalerweise standardmäßig eingerichtet ist. Also ist es wirklich nicht so verrückt. Was wir hier tun. Wir sind nur so einzurichten, wie wenn Sie wie ein Third-Person-Projekt oder First-Person-Projekt gemacht haben, dieses Skript ist standardmäßig bereits hier drin. Also aus dem Hersteller Rotator und ziehen Sie aus überall in se brechen den Rotator eine WHO, das alte Gesetz Kontrolle auf jedem Knoten und klicken Sie können es tatsächlich greifen und stecken Sie es in einige andere. Also wollen wir, dass die XI's verbunden sind. Und aus dieser Rotation wollen wir Kontrollrotation bekommen. Wir bekommen Rotation unseres Controllers dort. Ich glaube, das ist richtig. Lassen Sie uns also das Ganze hervorheben. Drücken Sie C und es wird WASD-Bewegung sagen. Da gehen wir. nicht zuletzt Lasst unsnicht zuletztunser Ding für den Sprung tun. Also haben wir Action-Event-Sprung. Also, was wir auf gedrückt wollen, diese sind bereits eingebaut, so episch macht es sehr schön und einfach für uns. Drücken Sie, um in springen wollte, dann freigegeben ist aufhören zu springen. Und dann lasst uns das kommentieren. Und wir sagen Action, Event oder was auch immer. Sicher. Wie auch immer Sie es nennen wollen, was es einfach macht, was auch immer Ihr Boot schwebt, sagen wir Kompilieren und Speichern. Und jetzt, wenn wir spielen, können wir uns umsehen. Sie können sich vorwärts, rückwärts, rechts, links bewegen und wir können nach oben und unten springen. Also jetzt sind wir ein Charakter, der sich bewegen kann und so. Okay, hier ist das Drehbuch. Wenn Sie es wieder sehen müssen, halten Sie einfach eine Pause oder tun Sie, was Sie tun müssen. Da ist es. Aber ja, das sollte es sein. Also im nächsten Video haben wir unsere Charakter-Setup. Wir werden beginnen, einige Inhaltspakete hinzuzufügen. Und wenn wir das tun, werden wir anfangen, tatsächlich einige coole Sachen zu machen wie das Hinzufügen der Waffen und die Schaffung unseres Charakters und geben ihnen Waffen und solche Sachen. Hoffentlich freut ihr euch darauf und ich werde euch im nächsten Video sehen. 6. Inhaltspakete hinzufügen: Hallo an alle, Willkommen zurück zu einem anderen Video. Im letzten haben wir einige Charakterbewegungen und sehr grundlegende Sachen eingerichtet. Und in diesem werden wir anfangen, unsere Inhaltspakete zum Spiel hinzuzufügen. Es gibt nur eine oder technisch gesehen, nehme ich an , wie auch immer Sie es betrachten. Also lasst uns weiter gehen und in den Epic Game Store unter der Unreal Engine hinzufügen. Und lassen Sie uns von unserem Bibliotheks-Tab auf den Marktplatz übergehen. Fertig. Ok? Und geben Sie dann Suchprodukte ein. Du willst Militärwaffen eintippen. Silver sollte das sehen. Militärwaffen Silberpack Ich glaube, dieser besondere Hersteller hat ein paar futuristische. Und wie eine Militärwaffe, schwarz oder wie eine andere Art. Aber das Silber ist derjenige, der die notwendigen Waffen hat, die benutzt werden sollten. Sie können sich frei fühlen, einige verschiedene zu verwenden, aber nur wissen. Du musst sie auf eigene Gefahr benutzen. Wenn du dem Wissen treu bleiben willst, was funktioniert, werde ich das einfach benutzen. Aber du weißt, du kannst tun, was du willst. Es liegt an dir. Also in diesem Silberpaket für Militärwaffen das wir tun werden, werden wir zu Ihrem Projekt hinzufügen. Und Sie werden feststellen, dass es nicht sagt, dass es irgendwelche kompatiblen gibt. Seien Sie versichert, wir werden rund um den Sowjet arbeiten. Sie klicken darauf und können es einen Button nennen. Und Sie werden alle Projekte zeigen. Gehen Sie weiter und navigieren Sie zu unserem FPS-Klassenprojekt oder wie auch immer Sie es genannt haben. Und es wird sagen, dass es nicht kompatibel mit 4.26 ist. Aber es ist, ich versichere Ihnen, denn technisch gesehen haben Sie in der Demonstration gesehen, dass es war. Gehen wir also voran und wählen Sie für Punkt 2 1, die die letzte Motorversion ist, mit der es kompatibel war. Die Engine-Versionen ändern sich nicht so sehr bis zu dem Punkt, wo es wirklich die Waffen vermasseln wird, sie funktionieren immer noch. Und 4.26, obwohl sie so sind wie, technisch nicht kompatibel oder was auch immer. Also gehen Sie voran und wählen Sie das aus und fügen Sie dann zwei Projekt hinzu. Und wenn Sie hier rüber schauen, wird es es dem Projekt hinzufügen und es hat gut funktioniert. Das funktioniert also. Die andere Sache, die wir tun wollen, ist der Kopf über die Registerkarte Lernen, die ich ehrlich gesagt nicht wusste, existierte bis nach einem Jahr der Verwendung von Unreal. Und der Learn Tab hat eine ganze Reihe von diesen wirklich coolen Demos und verschiedene Spiele wie ein RPG und Fahrzeug Spiel und einige, einige Kunstlandschaften und nur einige coole Sachen hier. Sie werden auf einem Shooter-Spiel genau hier auswählen wollen. Jetzt kann dieser nicht zu einem Projekt hinzugefügt werden. Es ist eine eigene Datei, also müssen Sie ein Projekt erstellen und irgendwo auf Ihrem Computer installiert werden. Seien Sie versichert, wenn wir mit diesem Video fertig sind, löschen Sie es. Wir brauchen nur ein paar Ordner von dort, also mach weiter und erstelle dieses Projekt. Jetzt ging ich weiter und nahm mir die Freiheit, dieses Projekt tatsächlich zu öffnen. Dies ist nicht etwas, das Sie mit irgendwelchen Mitteln tun müssen, aber das ist ein ziemlich cooles Projekt, um sich umzuschauen und etwas Spaß zu haben. Und wir werden einige der Vermögenswerte von hier verwenden, aber nicht alle von ihnen. Also ein paar verschiedene Dinge, die Sie an dieser Stelle tun können. Wenn Sie auf Inhalt klicken, mit der rechten Maustaste und sagen, zeigen Sie im Explorer, Sie Ihren Windows-Explorer. Ich möchte Internet Explorer nicht anrufen. Ich weiß nicht mal, was für ein Hektar Ihre Ordner. Okay, wir öffnen uns in diesem Inhalts-Browser und Sie werden sehen, wie diese Ordner mit diesen Ordnern korrelieren. Und das ist es, was wir wollen. Du kannst es so machen. Oder im Epic Games Launcher, werden Sie sehen, Shooter-Spiel wird unter meinen Projekten erscheinen. Sie klicken mit der rechten Maustaste darauf. Sie können anzeigen, indem Sie den Ordner auf diese Weise anzeigen. Und dann klicken Sie einfach unter den Inhalt und dann ist es genau das gleiche. Wir wollen Animationen schnappen, Kontrollfiguren gedrückt halten, Ozon beeinflussen, Geräusche. Klicken Sie mit der rechten Maustaste und drücken Sie Nun, wenn das sind, wenn diese beiden Projekte, Das Shooter-Spiel und das, das wir erstellt haben, sind in demselben Ordner wie sie für mich sind , die hier ist. Sie können voran gehen und einfach unter den Inhalt gehen und sie einfach dort einfügen. Aber wenn Sie ein Problem haben, wo das ist, gehen Sie einfach zu Ihrem Projekt. Dasselbe, Inhalt, zeigen Sie im Explorer und da ist es. Und dann werde ich mit der rechten Maustaste klicken und Einfügen drücken. Und du wirst sehen, wie sie dort auftauchen. Jetzt könnte das ein bisschen eine Sekunde dauern, aber ich werde tatsächlich einen neuen Ordner erstellen. Und wir werden dieses Shooter-Spiel nennen. Und ich möchte diese Animationen, Charaktere, Effekte und Sounds nehmen , hätte das wahrscheinlich umgekehrt machen sollen. Aber hier werden wir das in Shooter-Spiel ziehen. Das könnte eine Sekunde dauern. Oh, das habe ich sofort. Wenn Sie das innerhalb der Engine tun, dauert es wahrscheinlich eine Sekunde, wenn Sie es im Datei-Explorer tun, es ist wie bam, instant. Der einzige Grund, warum ich das getan habe, ist, dass diese Dinge nett und organisiert sind. Sie werden feststellen, dass dies die Cray-Kopien sind. Das könnte, das wird wahrscheinlich gehen. Und ganz ehrlich, denn wenn ich gehe und den Inhalt lese, sehen Sie, wie es nicht da ist. Daher muss dieses Produkt aktualisiert werden. Wenn ein posiert, öffnen Sie es wieder, es wird gut. Okay, das ist alles, was wir in diesem Video machen wollten. Wir haben unsere Inhaltspakete hinzugefügt. Ich werde eigentlich das letzte, was wir tun müssen, gehen Sie zu Hinzufügen Import, gehen Sie zu Feature-Inhaltspaket hinzufügen. Und dann müssen wir uns die dritte Person schnappen, eine Blaupause, weil wir die Mannequin brauchen. Buchstäblich das Einzige, was wir brauchen. Das Hinzufügen dieses kann mit unseren Eingabe-Mappings ein wenig verschraubt werden, aber wir können sie immer einfach schließen. Wir müssen es sehen. Also lassen Sie uns das einfach zum Projekt hinzufügen. Und dann taucht das auf. Bitte sag mir, dass das immer noch funktioniert. Es hilft. Gott sei Dank gnädig. Weil ich denke, wenn du hineingehst, könnte hinzugefügt haben, ja, also hat es einige ihrer anderen Eingaben hinzugefügt, was nicht das ist, was wir sehen, ist sie loswerden. Ja, und alles funktioniert. Es ist alles gut. Also, das wird es für dieses Video tun. Danke, dass Sie zugesehen haben, und wir sehen uns im nächsten. 7. Den ersten Mensch erstellen: Hallo an alle und willkommen zurück zu einem anderen Video. In diesem werden wir weitermachen und wir werden unseren First-Person-Charakter aufbauen. Also, wenn Sie unser Projekt offen haben, gehen Sie vor und unter FPS-Spielcharakter, Lassen Sie uns die Blaupause von bp Spieler öffnen. Ziehen Sie es über den oberen Rand, falls dies nicht bereits der Fall ist. Und wir werden im Darstellungsfenster herumlaufen. Also, wenn unser Charakter ausgewählt ist, werden wir eine Komponente hinzufügen und wir werden eine Kamera hinzufügen. Und wir können das einfach mit der Namenskamera behalten. Dann unter der Kamera mit der ausgewählten, werden wir ein Kind auf dieser Kamera erstellen. Und wir wollen in ein skelettales Netz einschlitzen. Und wir können diesen Spieler Waffen nennen. Okay, mit ausgewählten Kameras gibt es ein paar Dinge, die wir tun wollen. Wir wollen die Rotation des Pfanders verwenden überprüfen. Das ist eine Sache, die wir tun wollen. Entschuldigung, ich beziehe mich nur auf meine Notizen, um sicherzustellen, dass mir nichts fehlt. Ich denke, es ist eigentlich 0 für die Kamera auf dem Z, wir wollen das auf 75 setzen. So Standort Z, 75. Dann auf den Spielerarmen ist das Skelettnetz, in das wir einschlitzen werden, dieser Held F PP genau hier. Es wird da oben laichen. Nun, was wir mit dieser kleinen Lupe tun können, wird es öffnen, wo dieses Asset in unserem Content-Browser ist hier. Und was wir tun können, ist, dass wir das ziehen und dann in unseren Zeichenordner ziehen können, damit wir es hier sehen können. Und dann können wir F2 drücken, und wir können es Spielerarme umbenennen. Es ist also das gleiche Gut. Aber jetzt ist es ein R-Ordner und wir können damit auf Dinge zugreifen. Also mit unserem Spieler ARM ausgewählt, eine Sache, die wir wirklich schnell tun wollen, ist die Suche Grenzen Skala. Wir wollen das in zwei ändern. Der Grund, warum wir dies in zwei statt eins ändern , ist, dass, wenn Sie es nicht zu zwei ändern, es wird mit der Kamera lustig interagieren. Und je nachdem, wo Sie suchen, wenn Sie gerade nach oben oder gerade nach unten schauen, wird das Netz tatsächlich verschwinden. Das ist also nur eine kleine seltsame Einstellung, die Sie sicherstellen möchten, dass Sie es tun. Also für die Arme, den Ort, werde ich dir diese Zahlen geben , damit du selbst daran fummeln musst. Ich habe das alles schon für dich eingestuft. X wird negativ sein zehn, z wird negativ 1, 50. Und dann wird die Z-Rotation negativ 90. Also mit Blick auf meine Kamerageschwindigkeit ein wenig eingeschaltet, es ist nach vorne gerichtet. Du hast so die Arme direkt auf der Kamera. Das sieht ziemlich gut aus. Das Letzte, was wir mit den Armen machen wollen, ist sicherzustellen , dass wir keinen Schatten haben, weil wir keinen ganzen Körper haben. So wird es einspringen und spielen und Ihnen dies zeigen. Es sieht etwas verrückt aus und wir wollen nicht verrückt. Also lassen Sie uns einfach deaktivieren werfen Schatten unter der Beleuchtung wieder mit Spieler ARM ausgewählt Kompilierung. Und dann gehen wir. Wir sehen normal aus. Wir können die Arme jetzt nicht sehen. Okay. Ein paar andere Dinge, die ich in diesem Video machen möchte, bevor wir unter der Charakterbewegungskomponente vorwärts gehen, das ist nur meine persönliche Präferenz hier. Lass es mich finden. maximale Gehgeschwindigkeit liegt bei 600. Ich werde das auf 750 setzen. Wie der Charakter läuft ein wenig langsam standardmäßig. Und ich glaube, das war's. Also, wenn Sie bemerken, dass das Material, das auf diesen Armen ist , vermasselt durch Übertragen. Also, was wir tun werden, ist, dass wir es neu machen werden. Wir werden es genau so schaffen, wie es ursprünglich war. Also Lassen Sie uns mit der rechten Maustaste auf FPS-Spiele wählen Sie neuen Ordner und wir erstellen einen neuen Ordner namens Materialien. Und ich werde das auf unsere rote Farbe setzen, egal welche Farbe Sie haben. Und dann hier drüben, werden Sie mit der rechten Maustaste klicken und gehen zu Materialien und Texturen werden nur Material direkt dort gehen. Wir gehen bereits M für Material Unterstriche Layer Farmen. Und dann öffnen wir die Spielerarme. Glauben Sie, Sie können das tun. Schön. Okay, wenn Sie also T gedrückt halten und klicken, können Sie Texturproben erhalten. Und für dieses Texturbeispiel, was ich tun möchte, ist, dass wir eine in Base Color 1 in Metallic stecken wollen. Und es wird Fehler sein, aber keine Sorge. Und dann der andere in den Normalzustand. Mit diesem Setup werden Sie mit der rechten Maustaste klicken und Sie werden eine Konstante suchen. Es wird nur dieses kleine Ding mit einer kleinen Nummer da drin sein. Und wir werden das in Rauheit bringen. Und da ich Perfektionist bin, werden wir sicherstellen, dass alle diese in Ordnung sind. Für unseren Rauhigkeitswert werden wir es nur etwa 0,3 oder so etwas machen. Und dann für diese Textur Samples, so haben wir einige Texturen, die existieren. In diesem vorherigen Projekt, das Shooter-Spiel ist, wo wir ziehen diese Materialien aus. Also dieses Material, wenn wir das öffnen, ist es hier drin alles vermasselt. Wie Sie wahrscheinlich sehen konnten. Das ist es, was wir neu erstellen wollen. Also müssen wir einige dieser Texturen verwenden, die existieren, diese, die noch funktionieren. Wir werden die benutzen. So dass SAP eine, die wir wollen, ist, können Sie einfach FPS Unterstrich d in FPS Unterstrich M für die metallische tun. Und dann für unsere normale, können Sie wahrscheinlich vermuten, dass es FPS-Unterstrich N für normal sein wird, dann sollten Sie eine Vorschau bekommen, um zu zeigen. Also sagt diese Rauheit tatsächlich, also tut es nicht. Also, wenn ich das hier setze, kannst du sehen, wie es keinen super rau, keinen Glanz gibt. Sagte Nullen können wirklich glänzend sein. Also lebe ich rund um den 0,3-Bereich, wenn du einen Punkt machen willst oder vielleicht magst du es wirklich glänzend und wollte nur 0.1.2. Das ist auch in Ordnung. Ich bleibe bei 0,2. Da ist also unser Material. Sie können auf Anwenden klicken. Das ist alles, was wir dort tun werden, um es zu retten. Und dann werden wir das anwenden. Es heißt also Spielerarme. Und da gehen wir. So passt es perfekt. Bereite das Letzte vor, was wir in unserem Charakterordner machen wollen. Also werden wir mit der rechten Maustaste klicken und wir gehen zu Animation, Animation Blueprint. In der Animation ist Blueprint also ein Blueprint, der eine Verbindung mit Skelettnetz herstellen kann und im Wesentlichen steuert, welche Animationen Sie spielen möchten. Also werden wir einfach weitermachen und das sofort machen. Bevor wir das tun, machen wir noch eine Sache. Also, bevor ich erwähnte, ich mag es, diese Arme zu kopieren. Ich will ein neues Skelett machen. Also werde ich tatsächlich dieses Helden FTP-Skelett nehmen und kopieren Sie das einfügen. So können wir feststellen, dass wir hier in Shooter-Spiele-Charaktere gehen, FTP in diesem Skelett. Also lasst uns weitermachen und das in unseren Charakterordner verschieben. Und dann nennen wir es wie Spieler, Spieler Skelett. Warum nicht? Also sollte es jetzt irgendwie vermasselt sein. Hoffentlich kann es noch funktionieren. Eine Sache, die wir tun können, um zu überprüfen und zu sehen ob es funktioniert, wenn wir auf eine unserer Animationen klicken. Und dann lassen Sie uns eine machen, wo sie tatsächlich nutzen werden. Das Gewehr im Leerlauf ist einer von ihnen, die wir eigentlich benutzen werden. Es wird also sein, als ob man Skelett nicht finden kann, würdest du gerne ein neues wählen? Also werde ich ja sagen. Und wir hätten direkt dort Spielerskelett und es wird es auf das Skelett zurückgreifen. Und es hilft uns und will nicht arbeiten. Teufel des Kopierens und Einfügen, ruinieren Vermögenswerte. Okay. Gib mir eine Sekunde. Ich werde das rausfinden. Das Lübeck. Okay, ich denke, ich habe mich daran erinnert, wie ich das gemacht habe. Wenn Sie also klicken, doppelklicken Sie auf unser Skelettnetz wird tatsächlich Sie auffordern, Sie zu bitten, ein neues Skelett zu erstellen, und das ist, was wir tun wollen. Es wird also all das Zeug hier bereits voreingestellt haben. Und es wird im Wesentlichen dieses Netz diesem Skelett zuweisen, das, wie wir wollen. Und so nannte es Spieler Arme Skelett. Also werde ich das wirklich löschen. Hoffentlich hassen mich der Computer nicht dafür und erzwingt es, ihn zu löschen. Wir sind gut. Lassen Sie uns eine Namensliste Spieler unterstreicht Skelett. Und dann jetzt, wenn wir wieder in unsere Shooter-Spiel-Animationen gehen, und wir würden so etwas wie Gewehr ausrüsten. Und es würde sagen, kann Skelett nicht finden. Möchten Sie neue wählen? Und ich sage ja. Und dann wählen wir unser Spielerskelett aus. Und die Animation funktioniert gut. Also acht, also haben wir jetzt 12. Also müssen wir nur manuell, wenn bei welcher Animation von diesen, die wir verwenden möchten, wir müssen nur manuell darauf klicken, es zum Skelett hinzufügen, und so wird es hier in unserem Asset-Browser angezeigt. Also können wir das für Gewehr im Leerlauf tun. Ich werde das nur tun, weil das unsere Hauptanimation genau dort sein wird. Ziemlich gut. Okay, also zurück in der Figur, können wir jetzt erstellen, was wir erstellen wollten, in erster Linie Blueprint. Keine Animation, Animations-Blueprint. Und dann setzen wir das auf unser Spielerskelett, das wir gerade erschaffen haben. Und wir nennen diesen Spieler Unterstrich Anim VP. Und wir müssen hier im Moment nichts tun. Was wir tun werden, ist, dass wir es nur zuweisen, Animations-Blueprint mit den ausgewählten Armen verwenden. Und wir wollen Spieler in und BP. Also wird es momentan nichts tun. Aber jetzt, das heißt, Funktionalität ist jetzt in unserem Zeichenordner verdrahtet. Das ist alles, was ich für dieses Video habe. Ich glaube. Ich glaube, es gibt nichts anderes, was ich ausgelassen habe. Schau dir einfach die Notizen an und es sieht so aus, als wären wir gut. Also, das wird es für dieses Video tun. Im nächsten werden wir weitermachen und anfangen, unseren Charakter zu animieren. Also ist er schon von uns, Waffen in die Hände zu legen. Also werde ich dich dort sehen. 8. Unseren Charakter animieren: Hey alle, willkommen zurück zu einer weiteren Episode in unserer Unreal Engine 4-Serie, einen Ego-Shooter macht. Im letzten Video haben wir angefangen, unseren Charakter zu kreieren. Wir haben ihm Waffen gegeben, dafür ein Material geschaffen. Und das hier, um ihn daran zu hindern , einfach nur im Widerspruch zu stehen, die ganze Zeit. Wir werden einige Arbeit in diesem Animations-Blueprint machen, um ihm etwas Bewegung zu geben. Okay, das erste, was ich tun will, ist, unseren Spieler in MBP zu öffnen. Und wenn Sie noch nicht in einem Animations-Blueprint gearbeitet haben, ist im Wesentlichen ein Animations-Blueprint ein Blueprint, der sich mit einem bestimmten Skelett und einem Teil eines bestimmten Charakters verbindet . Also, wenn ich auf meinem Skelettnetz gehen würde, auf meine Spieler Arme, die sind diese Dinge. Sie können sehen, dass dem Netz oder der Animation ein Animations-Blueprint zugeordnet ist. Und es ist dieses, das wir im letzten Video erstellt haben. Also, was wir hier drin tun, wird hier und unseren Charakter ausgegeben. Also alles, was wir in diese Ausgangspose stecken, wird an unseren Charakter ausgegeben werden. Animation. Blueprint verfügt über ein Animationsdiagramm und ein Ereignisdiagramm. Das Ereignisdiagramm ist im Wesentlichen nur ein Diagramm, das Variablen verbindet, die zwei Variablen erzeugen, die in diesem Blueprint gefunden werden. Das wird mehr Sinn ergeben, wenn wir es tatsächlich tun. Und dann ist das Animationsdiagramm, wo wir tatsächlich die Regeln implementieren, die entscheiden, welche Animationen wann abgespielt werden sollen. Das ist der beste Weg, wie ich es jetzt erklären kann. Aber es wird mehr Sinn machen, wenn wir anfangen, ein paar Sachen hier reinzubringen. Also, was wir zuerst tun wollen, ist, dass wir einen Animationsverschmelzungsraum schaffen wollen. Also mit unserem Zeichenordner geöffnet, Lassen Sie uns mit der rechten Maustaste in leeren Raum und gehen Sie zur Animation und Verschmelzung Raum, nicht verschieben 1D. Und wir werden unser Spielerskelett benutzen, das genau hier ist, das, das wir erschaffen haben. Und nennen wir diesen Leerlauf. Also laufe ich nicht, ist eine sehr häufige Art von Verschmelzungsraum. Überblendräume ermöglichen es Ihnen, mehrere Animationen in ihnen zu platzieren. Und dann können Sie eine Operation ändern , welche Animation Sie spielen, basierend auf einem bestimmten Achsenwert ändern. Also in diesem Fall wird unser Name Geschwindigkeit sein. Und was wir in diesem Verschmelzungsraum tun werden, ist, dass wir von einer untätigen Pose in eine wandelnde Pose übergehen werden . Und das wird durch unsere Geschwindigkeit diktiert werden. Für Rasterabteilungen sind in Ordnung, oder maximaler Achsenwert, werden wir 600 machen. Wenn Sie sich im letzten Video erinnern, setzen wir unsere Charakterbewegung auf 750. Wenn wir also 600 und höher gehen, möchte ich zwischen zwei verschiedenen Animationen wechseln. Also Gewehr im Leerlauf ist das erste, das wir packen wollen. Und wir werden das hier bei 0 ziehen. Dieses grüne Zifferblatt ist das, was wir sehen können, um eine Art von Bewegung zwischen. Sie können sehen, wie sich der Geschwindigkeitswert direkt dort im Vorschauwert ändert. Und wir werden eine weitere Animation machen müssen, weil diese nicht Standard waren. Wir erstellen ein neues Skelett im letzten Video. So wird es ein Spiel Animationen, First-Person-Player-Animationen genau hier zu schießen . Und du willst dein Gewehr nicht erodieren? Oder sollte das wie unsere gezogene sein? Bringen Sie ihm ein Quipfeuer. ich blind hier ist es. FTP oder gezogener Lauf. Doppelklicken Sie darauf. Skelett konnte nicht gefunden werden. Also werden wir es unserem Spielerskelett und einem Retargeting zuweisen. Und Sie können dort sehen, dass es sich vorwärts bewegt, und klicken Sie auf Speichern. Wir können es pausieren. Wir können uns später mit den Klängen verwirren. Ok. Und ich glaube, ich gehe aus unserem Mischraum raus. Es ist peinlich. Also werde ich das wieder aufmachen. Dann werde ich unser Gewehr zufällig nehmen und das bei 600 ziehen. Jetzt können Sie sehen, ob unsere Geschwindigkeiten steigen, Sie können sehen, dass sich die Animation von der Leerlaufphase 1 auf die laufende oder die Laufende ändert und wie auch immer Sie sie nennen möchten. Also werden wir auf „Speichern“ klicken. Das sieht gut aus. Und jetzt gehen wir in unsere Animation. Blaupause, Ereignis-Blueprint der DNA. Ok? In einem leeren Raum im Ereignisdiagramm suchen wir also nach einem Ereignis, Ereignissen. Blaue Drucke initialisieren die Animation. Dies ist das Äquivalent zu einem Ereignis beginnen spielen. Für Animations-Blueprints. Was wir tun wollen, ist mit der rechten Maustaste und sagen: „Get Owning Schauspieler. Manchmal sagen Sie Spieler Charakter bekommen, Spieler Pfand. Manchmal spielt es keine Rolle. Aber wir werden zu rbp werfen. Nicht 0 sein. Bp Spieler. Was auch immer das Objekt ist, es ist nur manchmal nur weiter. Dies ist das einzige Mal, dass wir nicht wirklich mit Casting oder bekommen den Charakter. Lassen Sie uns mit der rechten Maustaste auf bp Player und fördern Sie dies zu einer Variablen und wir rufen diesen Spieler. Also all dies tat, war, dass wir eine Referenz erstellt haben, Verweis auf Spieler. Also, was wir jetzt tun können, ist, dass wir das rausziehen können. Du kannst es kriegen. Und dann jede Art von Variable, die in hier oder Funktion gefunden wird oder was auch immer wir einfach rausziehen können. Das Erstellen von Verweisen auf Dinge ist etwas , das wir viel tun werden, wird hauptsächlich Verweise auf unseren Spieler erstellen. Okay, jetzt hier unten, Ereignis-Blueprint-Update-Animation. Ich werde einen Sequenzknoten aufrufen. Noch nicht wirklich etwas aus der Sequenz machen. Aber nur für zukünftige Referenz von dann wird man sagen, ist gültig mit dem Fragezeichen. Und stecken Sie das in versuchen, Holen Sie Pfandbesitzer. Und ist gültiger Knoten ist im Wesentlichen nur ein Weg , um es ist Art der Computer gesunden Menschenverstand gegeben. Wenn also etwas, das ich eigentlich nicht einmal weiß, wie ich es erklären soll aber es sagt, dass es Sinn ergibt, werden wir das auch im nächsten Video verwenden. Und ich werde es dort genauer erklären, weil es viel einfacher sein wird , irgendwie zu erklären, was es dort tut. Okay, jetzt gehen wir rüber zu unserem Anim-Diagramm. Und wir werden mit der rechten Maustaste klicken und wir werden einen neuen Zustandsmaschine suchen. Und ich möchte darauf klicken und das umbenennen. Und wir nennen diese Spielerbewegung und werden vorerst, lassen Sie uns diese direkt in die Ausgangspose direkt setzen. Wenn Sie auf einen Zustandsmaschine doppelklicken, wird diese Eintragsblase angezeigt. Und was Sie tun können, ist ziehen Sie heraus und Sie können Staaten hinzufügen. Wir werden nicht maximal sein, dann ein Kanal Staaten oder was auch immer. Also ziehen wir heraus und lassen Sie uns einen Zustand hinzufügen und wir werden diesen Leerlauf nennen. Wenn Sie also nicht mit Zustandsmaschinen vertraut sind, werden Sie in diesen Zuständen Ihre Animationen einstecken und dann können Sie Übergänge von sub erstellen, die ich einen anderen Status hinzugefügt habe. Diese Dinge sind im Wesentlichen Bedingungen, die wahr oder falsch sein müssen, um zwischen verschiedenen Animationen zu übergehen. Wie ich schon sagte, eine Menge von diesem Zeug macht Sinn, als ob du es tatsächlich machst. Also lassen Sie uns auf Idle run doppelklicken. Und was wir tun wollen, ist, dass wir unseren Blendraum namens Idle Run greifen und diesen in die Ausgangspose stecken wollen. Und was Sie mit diesem bemerken werden, ist, dass es eine Geschwindigkeitsvariable hat. Also, wenn wir das tun würden, aber sehen, wir haben unseren Namen für Geschwindigkeit. Das ist es, was es genau hier packt. Also im Moment ist es auf 0 gesetzt. Und wir wollen nicht, dass immer auf 0 gesetzt wird, denn wenn es immer auf 0 gesetzt ist, und wir werden immer genau da sein. Also wollen wir das mit unserer Charaktere Geschwindigkeit verbinden. Also lasst uns mit der rechten Maustaste hier fördert zu einer Variablen und wir werden nur diese Geschwindigkeit nennen. Und das ist alles, was wir da drin tun müssen. Also jetzt, wenn wir zurück zum Ereignisdiagramm gehen, um zu versuchen, Pfandbesitzer zu bekommen, werden wir Geschwindigkeit, die Geschwindigkeit unseres Charakters zu bekommen. Und wir wollen Vektorlänge erhalten. Und dann wollen wir unsere Geschwindigkeit nehmen und das einstellen. Wir wollen den SEC-Betrag davon ist gültig Zweig. Also, was das genau hier tut, dieser erste Teil ist es, die Geschwindigkeit unseres Charakters zu bekommen, die Länge dieses Vektors zu bekommen. Und dann setzen Sie das auf diese Variable, die wir erstellt haben, genannt Geschwindigkeit, die hier eingerichtet ist, um zu steuern, welche Animationen wir ausführen. Also für diese gemeinsame Box, werde ich nur Sets sagen, gehen in Leerlauf Animation, so etwas. Es sollte also so aussehen. Und dann die Arbeiterbewegung, die ich leiten werde, haben wir nur einen Staat, der das macht. Also kompilieren Sie, wir haben ihn im Leerlauf. Und wenn du auf Play klickst, siehst du, dass wir hier ein paar Arme haben. Eigentlich haben wir nicht viele Immobilien, also werde ich vorübergehend nur Alt füllen, oh gosh es machen und so denke ich auf zehn gesetzt. Halten Sie sich fest. Abwechselnd. Machen Sie eine Kopie von etwas, geben Sie mir einfach etwas Platz zum Laufen. Jetzt, wenn ich auf Play klicke. Du siehst, dass ich jetzt untätig bin. Und wenn ich ihn dann bei der Wanderanimation bewege, halten wir eigentlich keine Waffen, also ist es ein bisschen schwer zu sehen. Aber so funktioniert das. Wahrscheinlich werde ich diese Umgebung und zwischen Videos wiederholen. Das Letzte, was wir hier tun können, ist, dass, wenn du hier gehst und zum Gewehrlauf gehst, du wirst sehen, dass wir diese kleinen Meldungen haben. Und Sie können mit der rechten Maustaste auf eine beliebige Stelle klicken und eine Benachrichtigung innerhalb einer Animation hinzufügen und wie ein Partikeleffekt oder ein Sound oder irgendetwas abspielen. Diese Sounds sind hier tatsächlich irgendwie kaputt, also ist es niedergelegt, es ist nicht wirklich implementiert. So wie wir können, aber was auch immer wir hier drinnen wollen. Und dann, wenn diese Animation in Kreuzen spielt, sie tatsächlich den Sound ab, den wir dort einspielen. Also glaube ich, weil wir die Geräusche hier haben, haben wir Schrittgeräusche, Gras, Metallfliesen, und ich denke, dass sie irgendwie so kaputt sind. Also Mann, Gras, mentale Kachel und wir wurden komplett gelaufen. Ok. Also okay, also das Zeug kopieren/einfügen, vermasselt das irgendwie. Also, was wir hier tun werden, also folgen Sie einfach, wo ich bin. Shooter-Spiel klingt genau hier. Voll laufen. Öffne das und wir werden diese Dinger einfach in der Nähe der Schallwelle stecken. Also haben wir einen bis zehn voll durchlaufen. Also eins. Ich gebe dir eine Sekunde, um das zu tun und dann wieder zu kommen. Okay, jetzt, da alle unsere Laufwellen jetzt richtig wieder in diesen Randomizer gesetzt und ausgegeben werden. Dieser Sound-Cue sollte tatsächlich funktionieren. Also in unserer Gewehrlauf Animation, spielen Sound, und dann gehen wir zum Sound Cue. Sehen Sie, wie Sie es wirklich hören. Ich werde die Lautstärke des Spielers eins machen. Ich wollte etwas tiefer sein. Und dann machen wir das Gleiche hier. Setzen Sie auf eins. Es rettet. Jetzt habe ich meinen Lord loswerden. Was mache ich denn? Also, wenn wir gehen, sollten Sie einige Schritte hören. Und ich falle direkt von der Karte, aber Sie können sehen, dass es diesen Umgebungssound hat. Hören Sie, dass ich diesen Senior loswerde. Das hört sich viel besser an. Fußstapfen, bessere Klanglandschaften kommen zu ihm. Ok. Und wenn Sie nicht das Gefühl haben, dass das an der richtigen Stelle ist, können Sie diese an verschiedene Orte verschieben und es hier in einer Vorschau anzeigen. So wie das. Aber ja, das ist, wie wir einfach nur grundlegende Schritte in unser Spiel hinzufügen können. Also im nächsten Video werden wir weitermachen und tatsächlich anfangen, einige Waffen in diese Hände zu legen. Also hoffe ich, Sie dort zu sehen. 9. Ausrüstung unserer Last (Teil 1): Hey alle und willkommen zurück zu einem anderen Video. In der letzten haben wir einige grundlegende Spielerbewegungen eingerichtet, unseren Charakter so aussehen zu lassen, als ob sie zwischen den Videos herumlaufen, ich habe ein paar Dinge gemacht. Ich ging rüber zur Geometrie. Ich ziehe hier eine Kiste rein, damit wir hier ein bisschen mehr Platz haben. Wenn du neugierig bist, was ich getan habe. Ich setze x auf 2500, y auf 2500 und z auf 100. Und wenn Sie in unsere orthogonale Ansicht gehen, habe ich es schön und zentriert hier gemacht. Wenn Sie Dinge haben, die außerhalb des Rasters sind. So wie ich meine Snap Einstellungen auf 100. Also, als ob ich das hier rüber bewegen würde, eine 100, sehen, wie es nicht im Raster ist. Wenn Sie dieses Problem haben, drücken Sie einfach Control und es wird dann an der Rastergröße, die Sie verwenden, gefangen. Wenn ich das etwas von dem Wiederaufbau rückgängig machen kann, okay. Das war es, was ich getan habe. Und dann, wenn Sie wie Ihr Spieler gleich wie eine schlechte Größe haben oder er ist einfach wie oben in der Luft. Wenn Sie die Ende-Taste drücken, Ende ist neben zu löschen, übrigens, Hügel dann auf den Boden treffen. So fängt Control N es am Raster ein, unabhängig von den Rastereinstellungen. Und aber so etwas wie auf dem Boden. Spaßige Fakten über Unreal Engine zu wissen. Okay, jetzt, wenn das erledigt ist, werden wir weitermachen. Ich würde auch sicherstellen, dass Sie Ihre Sachen nennen. Ich habe diese Etage genannt und sie in Ordner gelegt. Organisieren Sie Ihr Leben. Du wirst mir später danken. In diesem Video werden wir also anfangen, den Code zu schreiben, der uns erlaubt, Waffen in die Hände unseres Spielers zu legen. Sofort. Dies wird eines der kompliziertesten Skripte im Spiel sein. Im Spiel. Ich schätze, ich habe wirklich Sinn in der Klasse gemacht. Das war es, was ich sagen wollte. Es ist nicht, wissen Sie, es sind keine super komplizierten Probleme sehr lange. Und der Fluss des Bewusstseins dieses Hauses, Es gibt viele Knoten, da wir sechs Waffen haben, Es gibt eine Menge Kopieren einfügen. So kann es leicht sein, verloren zu gehen oder, wissen Sie, einfach verwirrt zu werden, wie, wo alle Daten hergezogen werden, werden Sie sehen. Aber ich werde versuchen, dich Schritt für Schritt durchzuführen, damit du nicht super verwirrt wirst. Okay, das erste, was wir tun wollen, ist, dass Sie mit der rechten Maustaste auf FPS-Spiel, erstellen Sie einen neuen Ordner, und ich nenne diese Daten Rechtsklick und FPS-Spiele und erstellen Sie einen neuen Ordner. Und ich werde diese Waffen nennen. Ich werde festlegen, dass beide eine schöne rote Farbe haben. Anstelle unseres Datenordners möchten Sie eine Aufzählung erstellen. Klicken Sie mit der rechten Maustaste, gehen Sie zu Blueprint. Aufzählung. Und Enumeration ist eine Liste von benannten Werten. Es ist wirklich nicht komplizierter als das. Es ist nur wie eine Liste. Also, yo E Unterstrich, laden. Also werden wir diesen Namen nennen. Sie doppelklicken und öffnen das. Wir werden erstellen, um Touren aufzuzählen 12. Und dann nennen wir eins keine Waffe. Und dann hat dieser andere eine Waffe. Speichern Sie es. Schließen. Es ist wunderschön. Also könnte ich schreiben, um wieder zu klicken, eine weitere Aufzählung zu machen, wir werden diesen E-Unterstrich und einen Waffentyp nennen. Öffnen Sie das. Wir werden hier sechs Integratoren haben. Also 3, 4, 5, 6. Und wenn du wirklich, wirklich schlau bist, wirst du wahrscheinlich wissen, dass wir sechs Waffen haben, also werden wir die Namen und unsere Waffen einspielen. Ich werde eine serifenauto oder iPhone anrufen, weil es einfacher für mich ist, paar weniger Buchstaben einzugeben . Und ich spiele viel Schicksal. Deshalb habe ich es so genannt, was wir Scharfschützengewehr haben. Wir haben oh, meine Güte, einen Granatwerfer. Und dann Falsche Kid Launcher. Meine Finger schlugen die ganze Zeit falsche Tasten. Sagen Sie, cool. Was wollen wir jetzt tun? Wenn du noch nicht zu deinem Charakterordner gehst, öffne deinen Spieler, und wir werden unsere allererste Variable erstellen. Klicken Sie also auf Variable und wir rufen diese Last aus. Und wir werden das so einstellen, dass es vom Typ „Load Out“ ist. Wenn Sie also schauen, haben wir die Aufzählung, die wir gerade dort erstellt haben, auf eine Variable und Flüssigkeit gesetzt haben, haben wir beide unsere Optionen hier. Wir können also tun, ist, als könnten wir das rausziehen und wir können tun, was man als eingeschaltet bezeichnet. So können wir jetzt verschiedene Ereignisse ausführen, je nachdem , was auch immer die Integration S zu einem bestimmten Zeitpunkt gesetzt ist. So funktionieren Animationen. In Ordnung. Was wir jetzt tun werden, ist, dass wir unsere allererste Waffe erschaffen werden. Die Art und Weise, wie wir das tun, ist, dass wir eine Waffenbasis als Elternteil haben. Oder so ziemlich alles von unserem Skript wird, unser allgemeines Skript wird lügen. Und dann werden wir sechs untergeordnete Blueprints erstellen , die alle Daten vom Elternteil, der Basis, mit einigen leichten Anpassungen und Abweichungen erben werden. So. Wir werden weitermachen und die Basis schaffen. Also lasst uns mit der rechten Maustaste klicken und zum Blueprint gehen. Und wir werden einen Schauspieler verwenden, das ist ein Objekt, das spielen kann reagieren auf die Welt , die keine Art von Input oder irgendetwas erhält. Und wir werden diese Waffe nennen. Ich wollte dort einen Witz machen, aber ich habe mich dagegen entschieden. Okay, auf unserer Waffenbasis, fügen wir eine Komponente hinzu und wir wollen ein Gel hinzufügen, mein Gott, ein Skelettnetz, und wir nennen dieses Waffennetz. Wir werden es nicht als irgendetwas aufstellen. Das einzige, was wir mit diesem Netz machen wollen, ist sicherzustellen, dass kein Schatten wirft. Weil unser Hands-on einen Schatten wirft. Wir wollen nicht, dass die Waffe in unseren Händen einen Schatten wirft. Und wir setzen es auf nichts, weil das nur die Basis ist. Das musst du also nicht. Das nächste, was wir tun wollen, ist ein erstellen zwei Variablen. Der erste wird vom Typ Waffe sein, der Waffentyp genannt wird, tut mir leid. Und wir werden es vom Typ, Waffentyp schaffen. Also siehst du hier, ich habe alle unsere Waffen. Der andere, den wir tun werden, wird Sockets Name genannt. Und wir werden das vom Typnamen machen. Der Standardwert dafür wird b, Kleinbuchstaben b Unterstrich sein. Ist es die richtige Waffe? Überzeugungen. Also, richtige Waffe. Du musst das nicht wirklich tun. Nun, Sie müssen diese NB eingeben, müssen Sie es nicht tun. Ich werde es Ihnen hier zeigen. Wenn Sie also zu unserem Skelett, Skelett Mesh auf unseren Spielerarmen gehen, gibt es hier eine Steckdose namens B, rechte Waffe. Das ist im Wesentlichen, wir werden verschiedene Steckdosen für verschiedene Waffen erstellen , weil sie alle unterschiedlich groß sind. Und so wollen wir, dass die Steckdose ein bisschen anders ist, damit wir keine Probleme haben, dass die Waffe so viel durch die Hand schneidet. Aber der Standardwert wird diese richtige Waffe sein. Und wir setzen das auf einen Namen denn das ist der Sockel, an dem wir schließlich auch codieren werden, damit unsere Waffen befestigt werden können. Und das ist, da dies eine Variable ist, können wir sie dynamisch einstellen, abhängig von der Waffe, die wir haben. Okay, das nächste, was wir tun wollen, ist in unserem Spieler etwas offener Raum und unser Event Graph ist, wo wir all unsere Veranstaltungen platzieren werden. Wir werden eine benutzerdefinierte Ereignisse erstellen und wir rufen diese Abholung. Wenn Sie nun etwas über benutzerdefinierte Ereignisse wissen, wissen Sie, dass Sie ein Skript schreiben müssen, das dieses Ereignis tatsächlich aufruft. Dieses Ereignis wird innerhalb unserer aufgerufen werden, wenn Sie sich im ersten Video erinnern. Und wir hatten die Waffen auf und ab, wir werden dieses Ereignis in diesen Blaupausen nennen. Das ist also nur ein benutzerdefiniertes Ereignis, das hier vorerst sitzt. Kleine Vorschau für die Zukunft. Ich nehme an, wir werden eine Eingabe eines neuen Parameters hinzufügen. Und wir werden diesen Waffenspawn nennen. Und wir werden diese Art Waffenbasis machen. Und wir machen das zu einer Klassenreferenz. In diesem Kurs werden wir sowohl Klassenreferenzen als auch Objektreferenzen verwenden. Der Hauptunterschied zwischen ihnen besteht darin, dass sich eine Klassenreferenz auf die gesamte Klasse bezieht. Es bezieht sich also auf die Waffenbasis, diesen Entwurf, und es wird sich auch auf alle seine Kinder beziehen. Alles. Eine Objektreferenz ist ein Exemplarobjekt vom Typ. Also, das würde sich auf wie das Sturmgewehr speziell beziehen, sind die Pistole speziell, wir wollen auf alle Klassen beziehen. Also werden wir eine Klassenreferenz erhalten. Und das ist eigentlich alles, was wir jetzt tun wollen. Ähm, denn wir werden eine Funktion in das stecken. Lassen Sie uns also voran gehen und diese Funktion erstellen. Und wir nennen diese Laichwaffen. Und wir wollen, dass dies einen Eingang hat, ist gut vom Typ Waffenbasis und wir werden diese Waffe nennen. Der Grund, warum wir wollen, dass dies eine Eingabe hat, ist, wenn wir zurück zu unserem Ereignisdiagramm gehen und wir diese Ereignis-Spawnwaffe nennen, was wissen Sie, dass es um eine Waffe bittet? Weil wir diese Eingabe gemacht haben. Wenn ich voran gehe und diese Eingabe lösche und es kompiliere und speichere. Es ist weg. Und wir haben nein, ja, nichts, worin wir das stecken können. Sie am Ende in einem Stecker diese Daten in. Und das ist deprimierend. Wir wollen also eine Eingabe erstellen, um die Daten wie solche weiterzugeben. Und das ist wunderschön. Ich finde es wunderschön. Jetzt wird dieses Skript extrem dumm lang sein. Und um zu verhindern, dass wir aus diesem Knoten buchstäblich wie 20 Mal ziehen, werde ich dies zu einer Variablen fördern. Und ich werde das auf eine lokale Variable setzen. Der Unterschied zwischen einer Variablen und einer lokalen Variablen, wenn Sie nicht vertraut sind, besteht darin, dass eine lokale Variable eine Variable ist , die hauptsächlich gemacht wird, um die Dinge ein wenig organisierter zu halten. Eine lokale Variable. Zum einen können sie nur innerhalb von Funktionen erstellt werden. Wenn ich also irgendwo anders gehe, kann ich keine lokale Variable in meinem Ereignisdiagramm erstellen, die nur innerhalb von Funktionen existieren kann, und sie existieren nur innerhalb dieser spezifischen Funktion. Also weiß ich, dass ich diese Variable nirgendwo anders in meinem Skript verwenden werde. Also könnte es genauso gut zu einer lokalen Variable machen, so dass, wenn ich irgendwo anders gehe, ich es nicht sehen muss, weil ich es nicht brauche. Die nächste Variable, die wir erstellen, wird in anderen Ereignissen verwendet werden. Also machen wir es zu einer normalen Variable. Und wir nennen dies ist der erste Schlitz gefüllt. Und alles, was mit einem a beginnt, ist und das Fragezeichen ist normalerweise ein boolescher Wert. Also lasst uns voran gehen und diesen Boolean herausziehen. Nun, was Sie tun können, ist, dass Sie das in einen Zweig stecken und das wahre Falsche tun können , was ich gerne tue, ist, nicht zu sagen. Also sagt es ist der erste Slot und nicht ausgefüllt, dann können wir unseren Zweig plotten und das so einstecken. Also ohne den Knoten ist im Wesentlichen nur schaltet, was wahr und falsch wäre. So ist der erste Schlitz. Wenn der erste Slot noch nicht gefüllt ist, möchten Sie einen Schauspieler aus der Klasse hervorbringen. Welche Klasse wollen wir, dass das sein soll? Nun, was wir tun können, haben wir drei Möglichkeiten. Wir können unsere Klasse einstecken. Von hier aus. Von hier aus haben wir eine lokale Variable erstellt, also könnten all diese drei Dinge genau dasselbe bedeuten. Und diese Daten, diese Variable, dasselbe wie diese Variable, und alles ist gleich diesem Blueprint. Also wollen wir etwas von einer Waffenbasis spawnen. Die Spawn-Transformation. Wir wollen den Schauspieler transformieren. Der Schauspieler ist selbst. Selbst der Spieler. Zu tun, um das ein bisschen zu tun. Ok? Und dann, was wir tun wollen, ist dieser Rückgabewert, der jetzt von einer Klassenreferenz zu einer Objektreferenz umgewandelt wird. Sie mit der rechten Maustaste auf eine Variable heraufstufen. Und wir werden diesen Waffenschlitz 0, 1 nennen, wie so. Und dann wollen wir R nehmen ist Waffe ersten Schlitz gefüllt und wir werden sagen wahr, dass es gefüllt ist. Dadurch wird verhindert, dass dieses Skript mehr als einmal durch diesen Zweig läuft. Das nächste, was wir tun wollen, ist, dass wir Schauspieler an die Komponente anbringen wollen. Die Sache, die wir wollen, um das Ziel, dass wir seine Waffen Slot befestigen wollten 1, was auch immer Waffen in Waffen Schlitz eins. Der Elternteil wird die Arme sein. Also wollen wir diese Schauspieler Waffe Slot 1, 2 unsere Arme befestigen. Und es wird so sein wie, na ja, was ist Steckdose Willst du? Nun, ich habe dir schon gesagt, dass es die richtige Waffe ist. Deshalb haben wir diese Variable. Da dieser Rückgabewert und das alles von Waffenbasis ist, können wir auf seine Variablen zugreifen. Nehmen wir also an, holen Sie den Socket-Namen und stecken Sie ihn für den Namen ein. Deshalb haben wir diese Variable erstellt. Und wir können darauf zugreifen. Ich hasse es, wenn es das tut, wenn es nicht perfekt aufgereiht ist. Ok? So können wir auf diese Variable zugreifen, weil dieser Rückgabewert ist, können Sie Waffenbasis sehen. Wir haben also die Waffenbasis, also bekommst du die Variablen. Und das wunderschön. Jetzt wollen wir eine andere Variable erstellen und wir werden diese aktuelle Waffe nennen. Die aktuelle Waffe wird eine Variable vom Typ Waffe Basisobjekt wird eine spezifische sein. Wir werden Waffenschlitz eins auf die aktuelle Waffe setzen. Die aktuelle Waffe ist im Wesentlichen genau die Waffe in unseren Händen. Also, wenn wir Waffen Schlitz eine derzeit ausgestattet, Waffenschlitz eins ist die aktuelle Waffe. Wir wechseln zur Sekundärwaffe. Waffenschlitz t2 wird die aktuelle Waffe sein. Und dann wollen wir eine Rücksendenotiz hinzufügen. Sie möchten also diese Daten zurückgeben. Also können wir das einfach packen und es direkt dort hinzufügen. Und jetzt fügt es einen Waffenbasis-Objekttyp hinzu. Wir hätten einfach neue Parameter treffen können und dann auf diese Weise, aber wir sind Lust auf. Nennen Sie diese Waffe. Es ist jetzt eine Kompilierung. Lass mich hierher zurück. Jetzt geben wir Daten zurück. Also beginnen diese Daten hier drüben. Es geht hier durch und es durchläuft das alles. Und dann wird es direkt dort ausgegeben. Und es ist alles Art Waffenbasis. So funktioniert das. Aber wir haben mehr als nur eine Waffe. tun wir. Wir haben sechs. Hier wird es also ein bisschen lächerlich. Aus dem falschen Zweig. Sie wollen dann fragen, ob Waffen Schlitz t2 nicht gefüllt ist. Also lassen Sie uns das kopieren und einfügen. Und dann lassen Sie uns eine neue Variable erstellen. Eigentlich wollte ich Control W bei diesem hier treffen. Und wir werden sagen, ist zweiter, ich sollte sie ehrlich so nennen. Quantum. Machen Sie es einfacher für die Augen ist zuerst. Schlitz gefüllt. Ich werde den zweiten Schlitz ziehen und ihn dort ablegen. Also, jetzt, wenn der erste Slot gefüllt ist und es wird wie, Nun ist der zweite Slot gefüllt? Und dann wird es wieder durch die gleiche Codezeile laufen. Wenn der zweite Slot nicht gefüllt ist, dann werden wir einen Schauspieler hervorbringen. Wir werden es uns in die Hände geben. Und wir werden das auf Waffenschlitz 2 setzen. Und dann werden wir sagen, dass die Waffen der zweite Slot-Film ist. Ja, das ist es. Wir müssen das eins bis sechs machen. Also werde ich voran springen. Ich werde den dritten Schlitz machen, vierten, fünften. Sie bekommen den Punkt den ganzen Weg durch sechs. Dann komme ich zurück und zeige es dir. Okay, wenn du also fertig bist, hoffentlich dieser kleine Test, war eine kleine Aufgabe nicht allzu schwierig. Wenn es dir nicht genau zeigen würde, was sein sollte. Also erster Schlitz, erster Schlitz, Waffe, Schlitz 1, zweiter Schlitz, Sekunden Menge Waffen wie 2 , Sekunden Menge Waffen wie 2, 3, 3, , 4, 4, 5, 5, 6, 6. Das ist also dieses riesige Konglomerat einer, einer Funktion hier. Was wir tun werden, ist, dass wir Kästchen um dieses Ding kommentieren, werden Laichen, Waffe, Schauspieler in den Händen des Spielers sagen , und Zuweisungen können es sogar in Schlitz 0 sehen. Ich glaube, ich buchstabiere alles genau dort. Okay, das ist also, was das im Wesentlichen tut. Und wir geben diesen Wert jedes Mal zurück. So werden wir also unsere Waffen hervorbringen. Also, wenn wir zurück zu unserem Veranstaltungsdiagramm, was wir hier tun wollen, ist, wollen wir ein weiteres benutzerdefiniertes Ereignis machen. So kommen Kunden mit mir zusammen. Oh, meine Güte. Warum kann ich nichts tun? Ok. Wir machen eine so genannte Ausrüstungswaffe. Und dann werden wir so ausgerüstete Waffe nennen. Bei Ausrüstungswaffe werden wir eine Eingänge von genannter Waffe machen und wir werden es aus Waffenbasisobjekt schaffen. Also, jetzt können wir die so anschließen. Vorerst werde ich dieses Video hier abschneiden. Es wird einen Zweiparter geben, denn wie ich schon sagte, es ist ziemlich kompliziert. Dies, wenn dieses Ereignis läuft, die wir nicht haben, wen das hier passiert, die es ausführt. Wir werden eine bestimmte Waffe hervorbringen. Also, wenn unser erster Slot, lassen Sie uns einfach sagen, es ist die Anstrengung. Wir haben keine Waffen. Wenn der erste Slot nicht gefüllt ist, werden wir einen Schauspieler vom Typ Waffenbasis hervorbringen. Wir werden das dem ersten Slot zuweisen. Ich werde das einstellen. Ich werde sagen, dass unsere ersten Slots jetzt filmen, damit, wenn wir mit einer anderen Waffe interagieren, sie hier runtergehen wird. Und dann da unten, da unten, sind sie da unten. Wir werden diesen Schauspieler, diese Waffe an den Armen unserer Spieler an diesem Steckdosennamen befestigen . Wir werden das als unsere aktuelle Waffe festlegen. Und dann werden wir diesen Wert zurückgeben, um dann mehr Dinge zu tun , um diese Waffe auszustatten. Denn was wir tun müssen, ist, dass wir tatsächlich einige dieser Waffen laufen müssen , die Animationen in den Klängen wechseln. Und wir müssen tatsächlich das Waffennetz in unseren Händen erscheinen lassen. Es gibt nichts, was das Netz tatsächlich erscheinen lässt. Und dann auch, wenn wir wechseln, machen das andere Netz verschwinden. Das ist also, was wir im nächsten Video machen werden. Und ich hoffe, Sie dort zu sehen. 10. Bestseller: Willkommen zurück zu einem anderen Video. Und der letzte, wir starteten dieses sehr lange Drehbuch, das es uns erlaubt, unsere Waffen auszustatten, zu zeigen und zwischen ihnen zu wechseln. Wie ich schon sagte, diese Klasse ist eine Menge Ereignisdiagramm Zeug. Das ist einer der schwereren. Sobald wir mit diesem Teil fertig sind, werden wir daran arbeiten, unsere Waffen zu erschaffen. Und es wird noch mehr spannende Sachen vor sich gehen, aber wir müssen all diese Back-End-Sachen zuerst erledigen , damit unser Spiel tatsächlich funktioniert. Ok? Also, wo wir aufgehört haben, haben wir unsere Waffenabholung sind Laichwaffenfunktion und dann unser Ausrüstungswaffen-Event. Was wir tun werden ist, dass wir anfangen werden, dieses Ausrüstungswaffen-Ereignis aufzubauen. Das erste, was wir tun wollen, ist, dass wir einen Zweig 0 herausziehen wollen, auch kleine Leckerbissen zwischen den Videos. Ich nahm alle unsere Variablen der Waffen-Slots und ich habe eine Kategorie erstellt. Alles, was Sie tun müssen, um eine Kategorie zu erstellen, ist eine Variable ausgewählt zu haben und eine Kategorie einzugeben. Und dann erschaffe ich einen. Und dann kannst du sie herumziehen, sie in die richtige Reihenfolge bringen. Also, jetzt müssen Sie diese super lange Liste von Variablen nicht überall haben, macht es einfacher für Ihr Leben. Aber was wir tun werden, ist, dass wir eine neue Variable erstellen. Recall tauscht Waffe. Und das wird ein Boolean sein. Also wollen Sie überprüfen, bevor wir eine Waffe ausrüsten können, wir wollen sicherstellen, dass wir nicht bereits Waffen wechseln. Ok? Wenn wir es derzeit nicht tun, wenn wir nicht bereits eine Waffe wechseln, dann wollen wir noch einen Scheck machen. Und wir werden sagen, ist das Nachladen. Das ist ein boolescher Wert, ja. Ok. Wir werden sehen, ob wir neu laden und ich neu lade Skript existiert das noch nicht, aber es wird schließlich. Dieser Teil davon ist im Wesentlichen hier. Wenn wir also eine Waffe neu laden und wir versuchen zu wechseln, wird das Nachladen tatsächlich abgebrochen. Es wird nicht weitergehen, während das andere Waffennetz und die Daten angezeigt werden. Wenn wir also neu laden, möchten wir das Nachladen deaktivieren. Wenn wir nicht nachladen, dann wollen wir nur sagen: Nun, wir tauschen eine Waffe aus. Und wir wollen diese beiden so verbinden. Wenn wir neu laden, laden wir jetzt nicht wieder, und dann können wir anfangen, die Waffe zu wechseln. Wenn wir nicht nachladen, dann wird es nur sagen, dass wir eine Waffe wechseln. Nun, wir wollen hier tun, ist, dass wir eine andere Funktion erstellen wollen, die ausgeführt werden soll. Diese Funktion wird existieren, um unsere Waffenmaschen zu zeigen oder die, die wir derzeit ausgestattet haben, zu verstecken. Also werden wir genau dieses Versteck- und Waffennetz nennen. Wir können weitermachen und das schließen. Wir können das rausziehen und dort hinlegen. Auch wenn es kein Skript drin ist. Das erste, was wir tun wollen, wenn es darum geht, Waffennetz zu verstecken und zu zeigen, ist , dass wir diese Daten von vorher weitergeben wollen. Also haben wir es automatisch auf Waffe Basisobjekt gesetzt und wir werden nur diese Waffe nennen. Alles klar, und genau wie zuvor möchte ich das zu einer lokalen Variablen fördern, weil dies eine haarige, haarige Funktion sein wird. Lokale aktuelle Waffe. Nun, wenn Sie sich erinnern, ich sprach darüber ist gültig, bevor und das ist, wo es wieder kommen wird. Also, wenn wir unsere Waffe Slots bekommen, Lassen Sie uns einen Waffenschlitz bekommen, einer der ersten, die wir fragen wollen, öffnen Schlitz 1. Wenn Waffen dachten, man sei gültig, wir wollen setzen, könnte dies nicht einmal auftauchen, es sei denn, ich habe, oh, es setzt Schauspieler im Spiel versteckt. Der Schauspieler, den wir Hinweis und Spiel setzen wollen, ist Waffenschlitz 1, und wir wollen es versteckt machen. So wahr bedeutet unsichtbar. Das bedeutet sichtbar. Der Grund dafür, dass das gültig ist, existiert, okay. Wenn es um dieses Skript geht, ist, dass, wenn Sie laufen verstecken und zeigen Waffennetz, wenn Waffenschlitz man nicht existiert, wird es verwirrt. So ist gültig ist eine Art wie gesunder Menschenverstand für Computer. So wird es erkennen, wie, okay, Sie sagen, um Waffen Schlitz ein unsichtbar zu machen aber ich weiß nicht, ich sehe nichts in Waffen Slot 1. Es gibt derzeit keine Daten in dieser Variablen. Also werde ich nur meinen Weg weitermachen. Alles klar, jetzt wollen wir das nochmals für Waffen Slot 2, 3, 4, 5 und 6 fragen . das Gleiche. So können wir kopieren und einfügen. Nicht gültig. Also, wenn es nicht gültig ist, dann wird über Waffen Slot zwei fragen. Wenn es gültig ist, wird es das Schauspieler versteckte Spiel setzen und dann wird es nur auf das Skript so weiter . So sollte es aussehen. Und dann wollen wir Waffenschlitz 2 so einbauen. Das ist also eine gültige Sache, die es hauptsächlich gibt , weil wir Waffen denken, sichtbar machen wollen, oder? Aber es wird eine fortsetzen und es wird auf die Waffen viel schauen , um die erste Waffe, die wir abholen. Wenn wir unsere erste Waffe abholen, wird es nichts in den Slots 23456 geben. So ist gültig wird in der Lage zu bestimmen, dass dies nicht einmal verbeugt ist. Es ist also nur eine Möglichkeit, Fehler zu vermeiden. Das war ein sehr langer Weg, das zu erklären, schätze ich. Also lassen Sie uns diese beiden kopieren und einfügen und genau die gleichen Dinge tun, bis wir sechs davon haben. Kann ein wenig umleiten Knoten treffen, um es nicht hässlich zu machen. Also haben wir 1, 2, 3, 4, mindestens zwei weitere für 5 und 6. Wie ich schon sagte, das ist nicht super kompliziert, es ist nur lang, weil du jetzt nach dir suchen musst, ich bin nett. Ich gebe euch sechs Waffen hier drüben. Ok. Also haben wir Waffen raus. Eine Waffenlatte auch. Nun, es sind nicht drei. Offener Schlitz für Cinco sagt, oh, cool. Okay, was das macht? Kommen wir von dieser ganzen Sache zurück. Und wir werden sagen, versteckt, derzeit ausgerüstetes Waffennetz. Also, wenn du das hier nicht hast, wirst du neue Waffe ausrüsten, und es wird richtig funktionieren. Sagen wir mal, Sie haben das Sturmgewehr, richtig? Und dann wechseln Sie zum Stempel. Die Pistole wird richtig funktionieren, aber Sie werden das Pistolennetz oder das schmerzhafte noch Netz sehen und es wird sich überlappen. Das Sturmgewehr. Dies verbirgt also nur all diese Netze, damit sie sich nicht überlappen. Aber wir wollen sicherstellen, dass unser neues auftaucht. Hier wird das noch lächerlicher. Also aus dem Set Schauspieler, versteckt und Spiel wollen einen Zweig zu plotten. Und wir wollen dies tun, ob es gültig ist oder nicht. Beide werden sich also so verbinden. Ich möchte das vielleicht ein bisschen weiter unten haben, weil es groß wird. Und dann, was ich tun will, ist aus diesem Zweig, ich will unsere lokale aktuelle Waffe nehmen. Also denken Sie daran, lokale Strömung wird passieren, ist dies genau hier, die hier hineingezogen wird, was auch dem entspricht, was ich auch gleich diesem, was auch gleich diesem ist, was auch diesem entspricht, was auch diesem entspricht, was das ist. So kann das verwirrend werden. Ok? Also, wenn unsere, wenn unsere aktuelle Waffe gleich Waffenschlitz 1, und wenn Sie sich erinnern, in Laichwaffe, wir setzen Waffenschlitz eins auf aktuelle Waffe. Wenn wir zu Waffen wechseln, wird viel dazu die aktuelle Waffe. Also, wenn unsere aktuelle Waffe gleich Waffenschlitz eins ist, können Sie vielleicht erraten, was wir wollen. Wir wollen Waffen Slot 1 nehmen, und wir wollen Schauspieler in Endgame setzen. Und das wollen wir ungehindert lassen. Wir wollen, dass das auftaucht. Wir wollen, dass Waffen diese, was auch immer diese Waffe ist, sich enthüllt und auftaucht. Mit anderen Worten, was wir jetzt tun werden, ist, dass wir es noch fünf Mal kopieren müssen . Ich weiß, ich kenne Leute. Das ist verrückt. Also, da gehst du. 123456. Alles, was Sie hier tun wollen, ist nur Schlitz in Waffen gedacht, um Slot 2 zu öffnen. Das entspricht also Waffenschlitz. Wenn es also, wenn es nicht gleich 0 und Slot 1 ist, wird es herunterlaufen. Es wird sagen, Nun, es entwickelt sich in Schlitz zwei? Wenn ja, wird es es es zeigen. Wenn nicht, wird es so sein, okay, tut es, es wird drei öffnen, so weiter und so weiter. Drei. Codierung ist eintönig, wenn er so sein wird, und Sie haben so viele Waffen zu überprüfen. Alles klar, jetzt habe ich das Highlight, das Ganze. Kommentar zeigt letzter Zeit ausgerüstete Waffe Mesh. Boom, so. Ok. Seien Sie versichert. Diese Funktion und diese Funktion sind die längsten, die jemals erstellt werden. Ok? Du kannst schließen, nie zurückblicken. Lasst uns Waffe in die Waffe stecken. Nur um sicherzustellen, dass Daten ordnungsgemäß weitergegeben werden. Lassen Sie uns aussehen wie eine ziemlich gerade Linie unwirklich. Oh, meine Güte. Und was wir tun wollen, ist, dass wir die Ladung rausnehmen wollen und wir wollen, dass sie eine Waffe hat. Wir haben jetzt eine Waffe. Dann werden wir einen Verzögerungsknoten herausziehen. Und wir werden für Punkt verzögern. Oh Gott, 33 Sekunden. Ich füge hier einen Kommentar für Sie hinzu. Und sagen erlaubt Zeit. Für die Animation des Waffenschalters. Wenn dies nicht existiert, diese kleine Verzögerung, dann die Waffenanimation, dieser Code wird so schnell laufen, dass Sie nicht wirklich sehen, dass die Waffen wechseln Animation. Jetzt werden wir schließlich zu Punkt 33 einrichten war ein guter Zeitpunkt, dass ich finde, wo es ziemlich gut aussah. Waffen ist Waffe tauscht Waffe. Wir tauschen die Waffe nicht aus. Und dann machen wir sofort einen Boolean. Nennen Sie das schießen, können wir unsere Waffe schießen? können wir. Okay, es wird standardmäßig falsch sein. Wenn wir anfangen, andere Ereignisse in Eingabe-Aktionen zu erstellen, werden wir dies ein- und ausschalten, weil wir nicht in der Lage sein wollen, unsere Waffe zu schießen. Und wir sind wie nachladen und andere Dinge tun. Also werden wir sagen, dass URI Aufnahmen ermöglicht. Und danach, oder Sie können nicht schießen, während. Schalten von Leptonen wollen in der Lage sein, eine Waffe zu schießen , wenn Sie zwischen ihnen wechseln wird seltsam sein. Ok? Das ist also alles, was wir dort tun wollen. Cool. Okay, jetzt, wie ich schon sagte, unsere Waffentonabnehmer werden dieses Waffenabhol-Event durchführen. Aber was, wenn wir bereits alle unsere Waffen haben und wir einfach zwischen ihnen wechseln wollen. Gut, dass du gefragt hast. Dann hätten wir einfach Ausrüstungswaffe laufen lassen. Aber wir wollen binden, dass die beiden Schlüssel eins bis sechs sind. Also, jetzt werden wir das tun. Also lassen Sie uns voran und ich werde ein neues Ereignisdiagramm dafür erstellen, und ich werde diese Aktionszuordnungen nennen. Was ich hier machen will, ist, dass ich Eins, 23, mir einen Sturz von fünf geben will, und du hast es erraten, 2100 und nur ein Scherz, es sind sechs. Ordnung. Alter, mach die in halb okay. Positionen. Sie haben viel Abstand. Okay, also haben wir 1, 2, 3, 4, 5, 6 genau da. Zum einen, ziehen Sie es rein. Und wenn ein Zweig als nicht verwandt, es zu nennen. Und wir werden sagen, ist Waffenschlitz gefüllt? Wenn unser Waffenschlitz gefüllt ist, dann wollen wir einen weiteren Scheck machen, nur um extra sicher zu sein. Wir wollen sicherstellen, dass unsere aktuelle Waffe gleich Waffen Slot 1 gleich 0 ist . O, warte, sorry, ist nicht gleich. Ich war wie Warte, das klang nicht ganz richtig aus meinem Mund. Ok. Wenn es aktuell ist, okay. Diese Sache hier erlauben deaktiviert wie so, wenn Sie Waffen Schlitz ein überprüft haben oder Sie haben offenen Schlitz 1 ausgestattet, Sie wollen nicht. Wenn er wieder auf die eine Taste drückt, und das ist nicht hier. Sie werden diese Umschaltanimation einfach weiter ausführen. Du wechselst immer wieder auf dieselbe Waffe. Dadurch wird die Möglichkeit deaktiviert, zu der Waffe zu wechseln, die Sie bereits haben. Wenn das also, wenn die aktuelle Waffe nicht bereits eine ist, was bedeutet, dass, wenn n gleich 2, 3, 4 ist und Sie versuchen, zu einer wechseln, dann wollen wir ihre Event-Ausrüstungswaffe nennen. Und die Waffe, die wir in diesem Fall spawnen wollen, ist Waffenschlitz 1. Und dann werden wir das als aktuelle Waffe setzen. Der Grund, warum wir dies als aktuelle Waffe festlegen, liegt darin, dass diese Laichwaffenfunktion nur beim ersten Mal ausgeführt wird , wenn du mit dieser Waffe interagierst. Also habe ich die kleine schwimmende Waffe , die diesen Schauspieler zum ersten Mal in die Welt bringt. Ich lege alle Orte davon in meine Hand und all das Zeug. Ich setze das als aktuelle Waffe ein. Aber jetzt sagen wir, ich habe alle sechs Waffen. Sie sind schon alle ausgelocht. Und ich will nur zwischen ihnen wechseln. Jetzt müssen wir nur die ausgerüstete Waffe laufen, die das Spiel zeigt und versteckt. Und auch die kleine Animation. Das ist alles, was wir tun wollen. Deshalb wollen wir, dass nichts das als die aktuelle Waffe bestimmt. Und da wir diese Eingabe hier erstellt haben, können wir es so einstellen, dass es sich um alles handelt. Wir wollen immer, dass der einzige Schlüssel Waffen sein soll. Also lassen Sie uns voran gehen und kopieren und fügen Sie diese ganze Sache ein und tun dasselbe für 2, 3, 4, 5 und 6. Diese sind ein bisschen nahe beieinander. Also werde ich Ihnen eine Sekunde geben, um all das für Waffen Slots zwei bis sechs zu tun . Also sehe ich dich in einer Sekunde. Ok. Nun, mit all dem erledigt, sollten Sie die ersten 11 bis 2 Sekunden 333444 haben. Stellen Sie einfach sicher, dass all dies die richtigen Zahlen hier sind. Und dann lasst uns die ganze Sache kommentieren. Und wir werden wichtige Erkenntnisse sagen, um Waffen auszustatten , nachdem sie Ben und anfangs abgeholt haben. Also, wie ich schon gesagt habe, das alles als Back-End-Zeug. Es ist vielleicht nicht völlig sinnvoll an dieser Stelle, aber wenn wir tatsächlich die Waffenmaschen hinzufügen, wenn wir tatsächlich die Animationen machen, um sie in unsere Hände zu legen. All das wird plötzlich oder schön sein, und du wirst so sein, Oh mein Gott, das ist erstaunlich. Okay, also danke, dass du das mit mir hast. Im nächsten Video werden wir damit beginnen, unsere Waffenabnehmer zu erstellen , so dass wir etwas haben, um dieses Ereignis tatsächlich durchzuführen. Und wenn wir das Ereignis ausführen können, können wir dann anfangen, unsere Animationen zu erstellen, um die Waffen zu halten, die Arme neu zu richten, weil es ein wenig kaputt ist mit den Vermögenswerten, die wir haben. Und dann können wir ihnen die Waffen in die Hände legen. Und wenn wir das ganze Setup haben, wird es schön sein. Und dann können wir den Waffen einige coole Funktionalität hinzufügen, sie tatsächlich zur Arbeit bringen. Also hoffe, ihr seid immer noch in unserem Weg durch das hier. Du hast ein paar Sachen gelernt, die er beobachtet hat, und ich sehe dich im nächsten. 11. So erstellst: Hallo an alle und willkommen zurück zu einem anderen Video auf Unreal Engine für die Herstellung dieses Ego-Shooter. In den letzten paar Videos haben wir eine Menge von Copy Paste Art von Scripting gemacht, um unsere Waffen sowohl erscheinen als auch verstecken, einfach sagen, erscheinen und wieder erscheinen, aber sie machten keinen Sinn. Also in diesem Video werden wir mit dieser Funktionalität fortfahren, erstellt einige Blaupausen, um uns tatsächlich etwas zu geben, um das Ereignis, das wir gemacht haben, abzuholen und auszuführen. Das erste, was wir tun wollen, ist auf unserer Waffenbasis, wir werden tatsächlich alle unsere Kinder machen , was auch immer wir innerhalb der Waffenbasis vornehmen, es wird automatisch auf alle Kinder angewendet, ob oder nicht machen wir sie jetzt oder später. Also werden wir sie jetzt machen und du wirst sehen, warum wir das jetzt in einer Sekunde tun. Also lasst uns mit der rechten Maustaste auf Waffenbasis klicken, Kinder-Blueprint erstellen. Und ich werde diese Pistolen-Unterstriche Waffe nennen. Wir werden das nur für alle sechs tun. Also haben unsere beiden Gewehre und wir eine Schrotflinte. Sie haben ein Scharfschützengewehr? Wir haben einen Granatwerfer. Warum vergesse ich das? Ok. Raketenwerfer. Willkommen. Ok. Ich habe den Unterstrich Waffen, dass sie mit der Waffenbasis verbunden sind oder nur aus Nomenklaturgründen. Weil wir wie Auto Rivalen Auswirkungen, Effekt und Auto Ankunft schaffen werden , diese und diese Art von Sache. Alles, was wir bisher tun wollen, öffnen wir unsere Waffe. Das einzige, was wir haben, können wir hier klicken und sagen, zeigen geerbte Variablen. Das ist es, was wir wollen. Also wollen wir in der Lage sein, unseren Waffentyp und unseren Socket-Namen zu sehen. Also gehen wir voran und machen das tatsächlich eins nach dem anderen. Socke einen Namen. Lassen Sie uns benennen. Dies ist immer noch Unterstrich-Socket und wir werden das erstellen. Weißt du was? Nein, ich nehme das zurück. Machen wir das später, weil es noch nicht erstellt wurde, also könnte es uns einen Fehler geben. Tut mir leid. Für Waffentyp können wir das jedoch als Pistole festlegen. Und für das Waffennetz wollen wir, dass dies unser Klick zu früh oder Pistole ist. Da gehen wir. Da ist es. Verlassen Sie da raus. Wir werden hier drinnen viel mehr bearbeiten. Später. Waffentyp, Auto-Gewehr, Waffenmaische Es nennt sich Sturmgewehr. Wir gehen mit der Schrotflinte. Machen Sie das vom Typ Schrotflinte. Und gehen wir weiter und nicht Schwartz Pistole, Schusswaffe. Und wir gehen als unsere Schrotflinte. Scharfschützengewehr Scharfschützengewehr Wir haben noch zwei. Eigentlich wird das hier nicht mal zu einem größeren Fenster machen. Wen kümmert es? Granatwerfer und Raketen , die jetzt in die Maschen stecken, obwohl es keine Funktionalität hinzugefügt, nur so können Sie sie visuell sehen, wenn wir müssen. Okay, das nächste, was wir tun wollen, ist, dass wir unsere Waffentonabnehmer erstellen wollen. Also, wenn Sie es wissen, zeige ich Ihnen, dass die anderen Projekte hier noch offen sind. Wenn ich also gehe und auf Play klicke, werden wir diese Dinge erschaffen, die wir dann aufnehmen und mit so interagieren können . Das ist großartig. Diese Dinger, Ziele, Film da drüben. unser FPS-Spielordner ausgewählt ist, lassen Sie uns einen neuen Ordner erstellen und wir nennen es interagieren eine Schüssel. Und dann in diesem Ordner möchte ich einen Ordner namens Waffen erstellen. Weil wir auch in unserem interagierbaren Ordner sind, um M0 zu machen, wird das auch interaktierbar sein. Jetzt bleiben wir bei Waffen. Rechtsklick. Also haben wir eine Klasse eines Schauspielers und nennen es eine Waffe. Abheben, Basis. Lass uns das öffnen und du kannst das ganz oben ziehen, weil wir hier drin ein paar verschiedene Dinge tun werden. Also sofort, Lichter mit unserer Szenenroute. Behalten Sie das einfach. Wen kümmert es? Lass uns einen Schritt überspringen. Skelettnetz, und wir nennen dieses Waffennetz. Und dann ist das etwas seltsam, aber wir werden ein statisches Netz hinzufügen und diese unsichtbare Box nennen. Und dann lassen Sie uns auch eine Komponente der rotierenden Bewegung hinzufügen. Und wir werden das Z auf 130 einstellen. Je höher es ist, desto schneller wird es gehen. Z bedeutet, es wird schwanken. So wie Sie können, können Sie, Sie können, Sie können sich damit anlegen, wenn Sie möchten, dass es etwas verrücktes rotieren. Aber um dies willen, werden wir es ziemlich einfach halten. Diese unsichtbare Box ist ein bisschen seltsam. Der Grund, dass wir eine unsichtbare Box haben, weil die Art und Weise, wie wir mit diesem interagieren, durch eine Linie Spur in einigen der Maschen wie die Pistole ist sehr klein. Und als ich damit herumgeschraubt habe, fand ich, dass es nicht immer so toll trifft oder funktioniert, weil das Netz selbst so klein ist. Diese Box, die unsichtbar ist, bedeutet, dass wir immer mit etwas anderem treffen, geben Sie uns einfach einen größeren Radius, dann können wir die E-Taste drücken und mit interagieren, obwohl Sie es nicht wirklich sehen können. Also mit dieser Box, was ich tun will, ist, dass wir sie unsichtbar und im Spiel versteckt machen. So unkompliziert, sichtbar und überprüfen versteckte Spiel. Die Skala, Lassen Sie uns sperren und Sie machen es 0,55 seiner Größe. Und für das statische Netz wollen wir nur den grundlegenden 1-m-Würfel. Da es unsichtbar ist, werden Sie es auch in den Ansichtsfenstern hier nicht sehen. Aber da ist es. Es ist unsichtbar. Aber jetzt ist alles eingerichtet. Und wir können weiter zu unserem Event Graph gehen. Wir müssen nicht wirklich, wir brauchen eine Veranstaltung, wir brauchen Event Begin Play. Wenn du sie losgeworden bist, kannst du sie immer zurückrufen. Holen wir unseren Spielercharakter hier raus. Lassen Sie uns sein, warten Sie eine Sekunde. Während der Vernetzung. Es sollte funktionieren. Seltsam, vielleicht aus nur in den API-Player gegossen. Und meine Rechtschreibung Dinge falsch. Warum hasst uns das Ding? Warte mal eine Sekunde hier. Okay, also bin ich auf etwas gestoßen, dem ich vor meinem Leben buchstäblich nie begegnet bin, als ich eine Lösung dafür fand. Also, wenn Sie nicht in der Lage sind, um den bp-Spieler aus bekommen Spielercharakter zu werfen. Gehen Sie weiter zu unserem bp Spieler. Genau hier auf sich selbst. Scrollen Sie nach unten zum Bauern und besitzen Sie automatisch Spieler, gehen Sie zu Spieler 0, kompilieren Sie das. Du hast Spiel getroffen. Alles funktioniert noch. Und jetzt aus unserem Spielercharakter, können wir darauf werfen. Jetzt ist es dünn. Geh zum Spieler, was ich immer erwartet hatte, zu passieren. Das war also sehr seltsam. Aber leider werden wir mit der rechten Maustaste fortfahren und dies zu einer Variablen fördern und es Spieler nennen. Eine Sache, die Sie über mich bemerken, ist, dass ich sehr Perfektionist bin, also werde ich immer kommentieren Box, sogar die einfachsten Skripte, so dass ich weiß, was all das hier tut. Also ja, wir haben gerade eine Variable für den Spieler, so dass wir alle seine Funktionen und Variablen und all das Zeug referenzieren können. Hier werden wir ein benutzerdefiniertes Ereignis erstellen und wir werden diese Abholung aufrufen. Ich habe eigentlich irgendwie herausgefunden, was los ist, mit der Waffe interagiert. Okay, nur um es zu behalten. Also werden wir eine Bindung erstellen, die interaktiv genannt wird. Also lassen Sie uns es schön und ähnlich halten. Schlagen Sie unseren Spieler an. Wenn Sie die Steuerungstaste gedrückt halten, wird sie automatisch angezeigt. Und dann wollen wir schon das Ereignis einer Waffenwaffe holen. Also, wenn Sie sich aus dem letzten Video erinnern, zwei Videos vor, Waffenabholung ist dieses Ereignis, das das Laichen der Waffe beginnt, es zum ersten Mal in die Welt bringt und dann ausstattet. Und da wir diese Eingabe hier haben, wenn wir es nennen, wird es fragen, welche Sie erkennen wollen? Und Sie können sehen, dass es fragt, jetzt, da dies eine Klassenreferenz war, ist es, es bekommt alle von ihnen. Jetzt haben wir das Auto-Gewehr, Granatwerfer, Pistole. Wir können jeden von ihnen spawnen. Was wir tun wollen, ist, dass wir das zu einer Variablen fördern und wir können die Namenswaffe zum Laichen behalten. Ich will einfach nicht wirklich die Räume und es ist so. Ok? Danach wollen wir einen do einmal Knoten herausziehen. Also wollen wir das nur einmal machen und wir spielen heute einen Ton. Und wenn wir dann den Ton abspielen, wollen wir den Schauspieler zerstören. Also werden wir diesen Pickup zerstören. Sobald wir einen Ton abspielen, möchte ich diese Sounds uw Variable zwei fördern, und wir werden es Pick-up Sound nennen. So wie das. Ich glaube, das war's. Also müssen wir hier drinnen für unsere Waffenabholungen tun. Weißt du was? Ich werde cool sein. Und wir werden noch eine Sache für Flare hinzufügen. Aber bevor wir das tun, lassen Sie uns kommentieren und ich werde sagen, läuft Ereignis in bp Player, dass wir das Skript kennen. Jetzt sagen Sie wahrscheinlich zu sich selbst, Tim, das ist ein benutzerdefiniertes Ereignis selbst wird das, was dieses Ereignis nennen wird. Und du würdest Recht haben, wenn du dich das fragst. Und wir werden schaffen, das ist, was wir werden. Wir werden eine Aktion Mapping auf die 0x0 in der Ike ist, was wird dieses Ereignis zu aktivieren, die dann dieses Ereignis aktivieren. Und das wird in diesem Fall funktionieren. Und es wird nur eine große lange Sache sein. Also, bevor Sie jetzt sagen: Nun, das ist wie hart. Es ist wirklich nicht so schwer, es ist nur sehr kompliziert. Und so gibt es viele Blaupausen, die miteinander reden , um so etwas geschehen zu lassen. Wenn dir das auffällt, ließ ich die Waffen rauf und runter rollen. Also machen wir das jetzt. Also aus der Veranstaltung Tick, wenn Sie nicht vertraut sind, so Event Begin Play und Event Tick, unsere President Eddie Blaupause. Wenn Sie mit ähnlichen Codierung vertraut sind, ist Event Begin Play das Äquivalent zu void Start. Es läuft immer dann, wenn dieser Blueprint existiert, wann immer er in die Welt gerufen wird. So kann das vielleicht wie die Sekunde sein, die Sie spielen. Oder es kann sein, wann immer, weißt du, in diesem Fall, wann immer du diese Waffe lachst. Wenn die Waffe hervorgebracht wird, laufen diese Ereignisse und das Spiel. Ereignis-Tick läuft einmal jeder einzelne Frame. Also Event Tick ist besser für wie das, was Sie hier sehen, wenn wir sind, wenn Sie bestimmte Werte ändern, Sie wollen, dass das Spiel ständig danach sucht. Also würden Sie es als Ereignis-Tick ausführen. Wir werden eine Zeitleiste hinzufügen und diesen Bob nennen. Für Bob nach oben und unten. Ehrfürchtig. Doppelklicken Sie auf Bob. Okay, öffnen wir den alten Bob. Und ich werde das letzte 2,5 Sekunden machen. Wir wollen, dass das eine Schleife durchläuft. Wir wollten uns ständig nach oben und unten verbeugen. Wir werden Vektorspur von Vektor hinzufügen ist x, y und z. Und wir können sperren und loswerden x und y. Wir wollen nur mit z durcheinander gehen. Also lassen Sie uns voran und wenn Sie Shift gedrückt halten, werden Sie Keyframes hinzufügen. Also werden wir vier davon haben. Der erste wird Zeit 0 sein, Wert 0. Zweite wird Zeit von 0,75 sein und es wird einen Wert von haben, lassen Sie mich einfach auf meine Notizen verweisen. Es wird einen Wert von 0,5 haben. Dieser dritte wird 1,75 sein. Oh Gott, sie haben sich überlappt. Der letzte legte zum Zeitpunkt 2.5. Ok? Drittens ist Zeit 1,75, Wert von negativem 0,5. Und dann ist diese letzte Zeit von 2,5, Wert von 0 wieder. Dann geht es hoch und dann runter. Jetzt ist das ein bisschen gezackt. Wenn wir also alle markieren, klicken Sie mit der rechten Maustaste und drücken Sie Auto, jetzt wird es eine glattere Linie wie diese erstellen. Und genau das wollen wir. Damit wir Bob schließen können, und jetzt haben wir eine neue Strecke. Und tatsächlich, tut mir leid, wir haben diesen neuen Track nicht benannt. Wir können ihm einen Namen geben, der rauskommt. Ok, Cool. Nennen wir das Schweben oder so. Jetzt können wir wirklich aussteigen. Aus dem Update. Wir wollen Akteur und lokalen Offset und den Ort, den wir wollen, dass Wert sein. Also ist es aktualisiert. Also ist es nicht, es ist nicht, dass es nicht läuft dieses Werbegesetz oder Gesetz Offset. Wenn dies abgeschlossen ist, wird es als Update ausgeführt, so dass es ständig ausgeführt wird. Und es sind diese Ereignisse, die jede Sekunde laufen. Und der Standort wird mit diesem Wert aktualisiert. Also lassen Sie uns voran und kommentieren Feld dies auch und sagen, schwebt auf und ab für Stil. Okay, also haben wir so viel für ähnliche Funktionalität getan. Also, hier geht's. Es gibt etwas Stil für dich. Alles klar, ich habe es versprochen und lass es cool aussehen. Ok. Also werden wir mit der Waffe fertig sein, eine Basis wählen. Das ist alles, was wir tun wollen. Also wollen wir auch damit anfangen, Kinder zu machen. Also lassen Sie uns eine Kinder-Blueprint-Klasse erstellen und diese Pistolenwaffe Pickup nennen. Und ich werde voran gehen und voran springen. Ich vertraue darauf, dass Sie wissen, wie Sie mit der rechten Maustaste klicken und Kinderblueprint-Klasse für alle sechs unserer Waffen erstellen können. Also mach das und ich werde dich in einer Sekunde begleiten. Okay, jetzt, wenn das erledigt ist, solltest du alle sechs haben. Wir sollten sieben Blaupausen und Ihre Gesamtsumme haben, denn einer ist die Basis. Und was wir tun wollen, ist einfach nur eines davon zu öffnen. Und gehen wir zu unserem Waffennetz und machen wir das einzige Gewehr. Also, was wir wollen, ist da draußen so. Oh, eine Sache, die ich vergessen habe. Entschuldigung ist das Waffennetz. Ich will oben in der Luft sein, so sagte man vielleicht etwa 150 sein. Also der Wert, den ich in dem anderen Projekt hatte, ist 110, musste zurückgehen und überprüfen, was diese Nummer war. Also, jetzt wird das tatsächlich über dem Boden schweben und Sie bemerken, dass es hier automatisch so aktualisiert wird. Die andere Sache, die ich tat, war, dass ich die y negativ 20 gemacht habe. So tritt es ein wenig zurück. Das macht das hier nur ein bisschen zentrierter mit unseren Szenenwurzeln. Sie können die Landschaft ersetzen, indem Sie das einfach über ziehen. Aber wenn Sie das tun, dann werden Sie nicht in der Lage sein, es nach oben zu bewegen, denn dann wird dies das Zentrum von allem sein. Es wird die Wurzel sein. Ok? Also die anderen Dinge , die wir in all diesen Blaupausen machen wollen, ist es Waffe zum Laichen. Wir wollen es als Autogewehr setzen. Und der Pick-up-Sound ist, dass wir Slot den Sinn beginnen können, da wir dies auf eine Variable setzen. Und es gibt eine so genannte Gewehrerhöhung. Und das ist das, was wir wollen. Wenn Sie das Gefühl haben, dass es zu laut oder zu leise ist, können Sie immer unter Tonabnehmer gehen. Und Sie können dies wie 1,5 oder so etwas machen , wenn Sie wollen, oder Sie können leiser machen. Es liegt wirklich an dir. Aber das ist es, was wir in all den tun wollen. Damit du weitermachen kannst. Noch einmal, ich vertraue dir, ich zeige dir noch einmal, dass du den Rest erledigen kannst. Gib dir eine kleine Aufgabe hier, Waffe zum Laichen. Wir wollen machen, dass die Pistole in wie diese noch nichts drin hat, aber wie gesagt, wird die Funktionalität einmal funktionieren. Alles hat das Waffennetz aufgebaut. Lass es uns bei der Pistole schaffen. Da ist es also. Und der Tonabnehmer, diese alle werden Strahlen genannt. So werden Sie Pistolenstrahlen sehen und Sie wollen die Warteschlange verwenden , die die klingt etwas anders jedes Mal. Also geh weiter und versuche, den Rest der Waffen zu machen, und ich werde in einer Sekunde wiederkommen. Also entschuldige ich mich wieder. Es gibt eine Sache, die ich vergessen habe zu erwähnen. Also in der Waffe Pickup Basis, stellen Sie sicher, in der Basis, so dass dies für alle Kinder gilt. Gehen Sie zum unsichtbaren Feld und deaktivieren Sie die Sperre und machen den y-Wert von 1, bevor es 0,5 war und das ist ein Würfel. Wir wollen, dass dies rechteckiger ist, weil unsere Waffen ziemlich lang sind. Wir wollen, dass das die gesamte Waffe kapselt. Also mach es einfach 0.51.5. Und dann können Sie dies wieder unsichtbar machen und kompilieren und speichern. Und dann wird das auf alle anderen von ihnen angewendet werden. Damit können wir unsere Waffenabnehmer in die Welt bringen. Also lasst uns den Stempel, das Auto-Gewehr oder die Schrotflinte setzen. Oh Gott, die Schrotflinte. Wissen Sie, warum der Schock auf niedriger. Seltsam. Und dann gehen wir, diese Bibliothek fällt. Vielleicht muss nur der Winkel, den ich in die Karte fiel , gedacht haben, dass ich ihn tiefer unter den Boden stelle. Granatwerfer und Raketenwerfer. Jetzt haben wir alle unsere Waffen. Wenn ich hineingehe und Play drücke, kannst du sehen, dass sie dort Bob machen und sogar etwas zu hoch, vielleicht noch ein bisschen zu hoch, du kannst das senken, einfach den Z-Wert auf dem Elternteil ändern. Und dann sollte das beheben. Und du kannst diesen Abby immer einstellen, sie schneller drehen lassen, was immer du willst. Das letzte, was wir in diesem Video machen wollen, ist , dass wir mit diesen Waffen interagieren können. Gehen wir also in unsere Einstellungen, Projekteinstellungen. Lassen Sie uns in Eingaben gehen und lassen Sie uns eine neue Aktion Mapping erstellen. Und nennen wir das „Interact“. Und wir werden das an unser Gleiches binden. Wenn wir es finden. Jemand Leichtigkeit und das Alphabet häufigsten Buchstaben. Okay, also wollen wir im BP-Spieler sein, in der Figur. Und wir wollen, dass dies in unseren Action-Mappings ist, damit wir hier etwas Platz finden können. Und lasst uns interagieren. Hier sind einige Dinge, die wir tun wollen, wenn wir interagieren. Wir wollen eine Linie Trace für Kanal zeichnen. Eine Zeilenverfolgung ist das Gleiche, was wir tun werden, wenn wir unsere Hit-Scan-Waffen schießen. Es wird eine unsichtbare Linie in die Welt ziehen, aber wir müssen ihr einen Startpunkt und einen Endpunkt geben. Nehmen wir also unsere Kamera-Komponente und lassen Sie uns den Weltstandort bekommen. Also der Standort der Kamera. Und wir wollen auch den Vorwärtsvektor bekommen. Also die Position der Kamera und der Vektor, der gerade nach vorne zeigt. Wir werden diesen Vorwärtsvektor mit einem niedrigen Wert multiplizieren. Ja. Und das wird sein, wie weit wir in die Welt schießen wollten. In diesem Fall stellen wir es so etwas wie 200 ein. Und dann werden wir diese so zusammenfügen. Es hasst mich. Warten Sie. Ich dachte, das wäre ein Schwimmer. Warten Sie eine Sekunde. Ich hatte gerade Vektor einen Plus-Vektor. Und wir gehen Vektor plus einen Vektor und machen das zu unserem Endpunkt. Und dann wird unser Startpunkt der Standort der Kamera sein. Okay, was wir hier tun, ist, dass wir den Standort unserer Kamera-Komponente bekommen. Das hier. Wir werden seinen Standort bekommen. Wir werden bekommen, was auch immer die Richtung vorwärts ist, wir werden die 200 Einheiten multiplizieren. Das wäre also der Abstand von hier, wie hier, wie von hier nach hier zu beginnen. Und dann werden wir diese beiden Dinge zusammen hinzufügen, um unseren Endpunkt zu erhalten. Und dann ist unser Ausgangspunkt nur der Standort der Kamera. In Ordnung? Und so wollen wir aus dem Rückgabewert eine if-Anweisung erhalten. Weil wir nur wollen, also wenn Sie wahr sehen, wenn es sonst einen Treffer falsch gab, also wollten wir nur, dass diese Zeilenverfolgung etwas tut, wenn wir tatsächlich etwas treffen. Denn gerade jetzt werden wir eine Sequenz herausziehen, obwohl wir nur eine Sache tun, weil wir mit mehreren Dingen interagieren wollen. Das ist also nur für die Zukunft. Und dann aus dem einen wollen wir auf unsere Waffe werfen, die Basis abholen. Und dann aus unserem Outfit, werden wir diese Ergebnisse brechen. Und dann ist der Hit Actor das, was wir an unser Objekt anschließen werden. Was also für ein Bremsergebnis im Wesentlichen macht, ist es, diese Linie zu zeichnen, sie zu verfolgen, zu sehen, okay, was hat das getroffen? Es gibt all diese Optionen für Dinge, die treffen können. In diesem Fall suchen wir nach einem Schauspieler, der von dieser unsichtbaren Linie getroffen wird. Und der Schauspieler, den wir sehen wollen, ob wir schlagen, ist unser Waffenabholgesicht. Und dann, wenn unsere Waffen-Pickup-Basis getroffen wird und lassen Sie mich einfach zurück zu dem, damit Sie sehen können, ob unsere Web Me Pick-up-Basis getroffen wird. Wir wollen das mit Waffe interagiert laufen. Interagiert mit Waffe. Und dann, wenn Sie sich erinnern, interagiert mit Waffe, läuft Waffe Pickup, die Laichwaffe läuft, die dann rüstet eine Waffe. Und da gehst du. Sie sind jetzt ein Kodierungsgenie. Herzlichen Glückwunsch. Nun, wenn wir hineinspringen und spielen und zu jeder Waffe gehen und mit ihr interagieren würden. Sie werden feststellen, dass wir diesen Soundeffekt bekommen. Es verschwindet und all das. Aber wir können es nicht wirklich in unseren Händen sehen, obwohl es in unseren Händen ist, die Waffenbuchsen sind ein wenig vermasselt, also zeigt es tatsächlich gerade nach unten und wir können es nicht wirklich sehen, aber wir tun es haben es zu diesem Zeitpunkt ausgestattet. Also können wir ein bisschen eine Debugging-Sache tun, um sicherzustellen, dass das funktioniert, und wir werden das jetzt tun. Also überall in unserem Ereignisdiagramm wird dies vorübergehend sein. Schlag einfach sieben aus gedrückt. Lassen Sie uns eine Druckzeichenfolge machen. Und dann holen wir die aktuelle Waffe, ziehen sie raus und stecken sie in die. Also jetzt, wenn wir sieben treffen, wird es auf den Bildschirm durch Text, was unsere aktuellen Waffen ausgegeben. Also, wenn wir im Spiel passieren, und ich würde mit dem Sturmgewehr interagieren und ich sieben schlagen. Wir haben die Auto-Gewehrwaffe als aktuelle Waffe. Jetzt die Pistole und der Schuss der Scharfschütze. Und wenn ich sieben hätte, sollte der Scharfschütze sein. Es, die Granate sein sollte. Da, die Rakete. Jetzt versuchen wir, zwischen Waffen zu wechseln. Also haben sie einen getroffen. Das war die Pistole, ich denke, Rizzi, traurig, dass wir abgenommen haben. Also traf eins und traf jetzt sieben. Also Auto-Gewehr, die zweite Waffe, die wir ausgesucht haben, waren auch die Briefe davon. Und jetzt sieben, da die Pistole, so ist es zwischen den Waffen zu wechseln. Es tut alles, was wir tun wollen. Es funktioniert einwandfrei. Jetzt müssen wir uns nur einen Weg geben, um zu sehen, dass es tatsächlich auf dem Bildschirm passiert ist. Das werden wir im nächsten Video machen und hoffen, Sie dort zu sehen. 12. Unsere eigenen Animationen machen: Hallo alle, Willkommen zurück zu einem anderen Video. In der letzten Episode haben wir unsere Waffen-Tonabnehmer erstellt und alle unsere Waffenwechselfunktionen scheinen zu funktionieren. In diesem Video werden wir wieder im Animations-Blueprint sein , damit wir sehen können, dass es passiert ist. Hm, anstatt nur rechnerisch im Hintergrund zu passieren. Also lasst uns weitermachen und das tun. Nun, das erste, was wir tun wollen, ist, zu unserem Spielerarmskelett zu gehen , das sich in unserem Charakterordner befindet. Und wie ich schon sagte, wir haben die richtige Waffensteckdose. Aus diesem Socket wollen wir mit der rechten Maustaste klicken und wir möchten einen Socket hinzufügen. Okay, wir haben hier F2 angefahren. Wir können diesem einen bestimmten Namen geben. In diesem Fall nennen wir diese Pistolendose. Lasst uns wieder mit der rechten Maustaste auf eine Steckdose klicken und wir werden eine für jede einzelne Waffe hinzufügen. So Auto Gewehrbuchsen, so weiter und so weiter, und fügen Sie eine Steckdosen, Schrotflintenbuchsen. Und dann vertraue ich dir, ich glaube, du kannst die letzten drei machen. Ich bin in einer Sekunde zurück. Okay, jetzt, da wir alle unsere Steckdosen an Ort und Stelle haben, bin ich in erster Linie in einer perfekten Welt, hätten wir einen Animator, der Animationen machen würde , die jede einzelne unserer Waffen perfekt aufnehmen würden. Und dann könnten wir diese Animationen einfach einspielen. Luxus haben wir nicht. Dieses Paket kommt nur mit, kommt mit zwei. Es ist nur eine für einen Launcher, aber der Launcher ist nicht der richtige Launcher und das Gewehr ist nicht das richtige Gewehr. Was wir also tun müssen, müssen wir dies tun, die Art der Problemumgehung, um Knochen herum zu übersetzen und unsere eigenen Sockets zu erstellen. Deshalb machen wir das. Wenn Sie eine Reihe von Animationen hinzufügen, müssen Sie dies nicht nur für die Aufzeichnung tun. Also, was wir tun wollen, wenn du dich daran erinnerst, wenn wir in unserem BP-Spieler, in unserer Laichwaffe, unsere Waffe an den Spieler-Armen befestigen, basierend auf dem Namen einer bestimmten Steckdose. Und standardmäßig ist das richtige Waffe, das ist diese. Nun, wir werden das ändern, damit es richtig in die Hand passt. Wir wollen also zu unseren Waffen gehen. Und in jeder Waffe wollen wir diesen Socket-Namen in den Namen ändern, den wir erstellt haben. Also Auto Gewehrsteckdose ist, was wir wollen. Granatwerfer, stellen Sie sicher, dass es anders richtig geschrieben ist. Der Spielweg zur Arbeit. Pistolen-Steckdosen Ja. Kombiniere sie mit diesen und buchstabiere sie richtig. Wie ich schon sagte. Im Gegensatz zu mir, die offenbar schrecklich in der Rechtschreibung ist, sind fast fertig. Nur noch eine. In Ordnung, und dann bleibt die Basis einfach die gleiche wie die Standardeinstellung. Eins. Das nächste, was wir tun werden, ist, dass wir diese Werte ändern, so dass es tatsächlich richtig passt. Etwas, das wir tun können. Es sagte, ich kann es dir zeigen, was irgendwie cool ist. Also unter Vorschau-Szene Einstellung, Vorschau-Controller, Lassen Sie uns zu US-spezifischen Animation gehen und wir wollen ein Gewehr Leerlauf verwenden. Also, oh Gott, das war viel zu schnell. Du wolltest wahrscheinlich wie zwei oder eins hier sein. Also haben wir unsere Steckdose genau da. Unter unserem Stempel Sockel, wenn Sie mit der rechten Maustaste klicken, können Sie eine Vorschau Asset hinzufügen und wir können tatsächlich unsere Stempel direkt dort hinzufügen. Und du siehst, im Moment, deshalb konnten wir unsere Waffe nicht sehen, wenn wir mit ihr im letzten Video interagieren würden, wie ich schon sagte, sie war gerade nach unten gerichtet. Wir müssen also ein paar Änderungen daran deutlich machen. Gehen Sie also zu unserem Details-Panel. Wenn Sie das Detailfenster nicht sehen, gehen Sie einfach zu den Fensterdetails und es wird angezeigt. Und Sie werden sehen, hier ist unser Name. Der Knochenname ist die richtige Waffe. Wir möchten die Einstellungen ändern. Also habe ich das alles schon für dich getan, weil ich so ein netter Mensch bin. Dies sollte relativ gut ausgerichtet sein, aber Sie können es von Hand tun, indem Sie es wie bewegen und all das. Aber die Orte, die ich habe, sind negativ 0,71. Für das x ist das y 0,6, z 9,3. Die Rotation ist negativ 90. Das y ist 0, z ist 0. Und das wird wirklich schön aussehen. Nun, was wir im Animations-Blueprint tun werden, ist, dass wir diesen Arm verschwinden lassen und wir werden tatsächlich die Finger an einem guten Ort bewegen. Aber wir könnten, für andere Waffen, ändern, wo diese andere Schulter ist und so. Wenn Sie möchten, können Sie hier mit der rechten Maustaste klicken und alle angehängten Objekte entfernen und jetzt wird die Pistole verschwinden. Aber Sie können jetzt sehen, wie die Pistolenbuchsen an einem anderen Ort als die richtige Waffe. Also gehen wir zum Auto-Gewehr und wir machen das jetzt. Tut mir leid, ich überprüfe nur, was die Steckdose war. Auf dem anderen Projekt. Die relative Position ist negativ 1,5, das y ist 1,5, das z ist 7,6 und die Drehung ist negativ 90. Also, wenn Sie sehen wollten, wie das bei PU-Assets aussieht. So Gewehr. Also, da gehst du hin. Jetzt hat er ihnen wirklich gesagt, dass ein verrücktes Ding. Dann machen wir die Schrotflinte. Vorschau von Assets. Ich mache das heute nur zum Spaß. Ich finde es cool. Sieh mal, wie das wirklich dumm aussieht. Du siehst tatsächlich einen Umzug. Wenn ich dort Säure vorschau, ist es irgendwie cool. Relative Lage ist negativ 1,17. Das y wird 2.06 sein, einige sehr wirklich spezifische Zahlen hier und dann 10.2 und dann negativ 90. Und da gehst du. Da ist das und sehen, wie sich die Finger hier durchschneiden. Also werden wir das im Bild reparieren, eine Blaupause und die Hand ist nicht ganz da oben genug. Aber wir wollen nur die Steckdose, auf die wir uns hauptsächlich konzentrieren, ist sie in dieser Hand, dem Daumen und diesen Finger? Sieht das aus, als wäre es in seinem Gedicht? Das ist, worüber wir uns hier hauptsächlich Sorgen machen, denn das ist die Wurzel, das ist der Zuordnungspunkt, den wir über diese Blaupausen festlegen. Scharfschützengewehr ist der Nächste. Lass mich gehen. Was kriegen wir jetzt zu diesem Scharfschützengewehr? Das Scharfschützengewehr ist ein negativer 0,53. Das y ist 0. Es gibt 0,87 und die Z ist 12,9. Und dann wird die Rotation wie immer negativ 90. Und das sieht genau dort ziemlich gut aus. diese Hand angeht, denken Sie daran, dass wir nur diese Finger fokussieren. Granatwerfer, App-Vorschau Asset, Granate. Wissen Sie, dass es einen Hilfewerfer gibt. Hey, Kanzi, klicke rein. X ist negativ 0,42, y ist 1,46, z ist 10 und dann negativ 90. Also, da gehst du hin. Es ist ein netter Login-Granatwerfer da drin. Endlich haben wir unsere Raketen. Und dann so für die Rakete haben wir x von negativen 0,72, y von negativen 2,36, z von 13, und dann negativ 90. Also, wenn du willst, kannst du damit geigen. Diese Zahlen funktionieren. Ich habe es von Hand gemacht und jetzt sage ich Ihnen nur, was die Zahlen waren, aber das sollte alles funktionieren und dann können Sie einfach diese Vermögenswerte entfernen und aus unserem Skelett herauskommen. Wenn du nun in unseren Charakter gehst und in den Player-Animations-Blueprint im Ereignisdiagramm gehst, werden wir etwas aus unserem anderen Sequenzknoten machen wollen. Endlich weiß ich es. Also lasst uns das jetzt machen. Da-da, Da-da, Da-da, Da-da. Also, wenn Sie sich erinnern, lassen Sie uns zuerst einen Zweig zeichnen. Wenn Sie sich erinnern, haben wir einen Verweis auf unseren Spieler erstellt und wir haben eine Last out. Und so wollen wir diese Variable hier reinbekommen. Also lassen Sie uns überprüfen, ob es etwas gleich ist. Wenn das eine Waffe hat, stecken Sie die da rein. Ich versuche nur, sicherzustellen, dass das nicht super lächerlich aussieht. Oh, Gott. Kann das wahrscheinlich ein wenig neu schreiben. Da gehen wir und sehen schlecht aus. Okay, also wollen wir nur Animationen spielen. Wenn wir eine Waffe haben, wollen wir nicht, dass unsere Hände so nach außen gerichtet sind, und wir haben keine Waffe. Wenn wir also eine Waffe haben, lassen Sie uns eine neue Variable erstellen. Und wir nennen diese Waffe. Und wir werden das vom Typ ausladen. In Ordnung. Wir werden das so einstellen, dass es etwas wird. Das ist also gleich. Die aktuelle Waffe in diesem Blueprint entspricht der Auslastung in diesem Blueprint. Aber wir wollen, dass diese beiden Blaupausen miteinander reden können und diese eine aktuelle Waffe in diesem Blaupause gleich machen , wie sie in diesem Fall auslasten. Also lasst uns zum Spieler gehen. Lass uns unsere Ladung rausholen. Und dann lassen Sie uns auch, oh, eigentlich, es tut mir leid. Ich habe es rückwärts gemacht. Statt es zu laden, machen Sie es zu einem Waffentyp. Ich entschuldige mich dafür. Ja. Variablentyp ändern. Es wird so sein, als wäre es in Ordnung. Wir haben also einen Spieler und holen uns die aktuelle Waffe. Also werden wir den aktuellen Waffentyp bekommen und dann werden wir Waffentyp bekommen. Besorgen Sie Waffentyp und setzen Sie das dann. Also lassen Sie uns dies hervorheben und Links sagen. Aktuelle Waffe in Waffenbasis mit Anime Blueprint. Also, was das hier macht, und Sie werden sehen, warum wir das in einer Sekunde tun. Wir nehmen diese Variable und unsere Waffe basiert auf dem Waffentyp. Und wenn du dich daran erinnerst , dass wir das bei allen Kindern etwas machen. Und im Wesentlichen, was wir tun, ist, dass wir sagen, was auch immer die aktuelle Waffe ist, was auch immer die aktuelle Waffenart ist. Also Pistole, Sturmgewehr, wir wollen das so einstellen, dass es gleich der Variablen ist, die in diesem Animations-Blueprint gefunden wird. Ok? Wenn wir nun zum Animationsdiagramm zurückkehren, werden wir die Verknüpfung dieser Spielerbewegung aufheben, weil wir einige verrückte funky Dinge machen wollen. Also werden wir es hierher ziehen und wir werden Bargeld sagen. Wir werden diese Pose zwischenspeichern und wir werden sie den gleichen Namen nennen, Spielerbewegung. Was Caching Posen im Wesentlichen ist, dass es all diese Daten nimmt und sie dann in einen neuen Namen setzt. Wenn Sie also bemerken, dass diese nur in eine Richtung gehen, hier oder hier, sind sie nicht wie Knoten, die Ausgänge und Eingaben auf beiden Seiten haben. Also, was ich jetzt tun kann, ist, dass ich US-Cashflows, Spielerbewegung aufrufen kann, und ich kann irgendwie auf dem Zweig fortfahren, um das zu tun, speichern Sie das als Cashpose und dann stecken Sie es in etwas anderes. Das werden wir also tun. Also lassen Sie uns auf dieser hervorheben und sagen, Zustand Maschine in Zustand Maschine Steuerung Spieler Bewegung. Das ist also sozusagen unser erster Schritt. Aber wir wollen Änderungen an diesen Animationen vornehmen, die auf verschiedenen Waffen basieren. Zugegeben, das wird ein wenig verwirrend sein. Aber wenn wir unsere Waffen halten, wie ich schon sagte, sind diese Animationen nicht perfekt ausgerichtet. Also müssen wir einige unserer Knochen in Steckdosen in unserem Skelett modifizieren . Wir müssen diese bewegen, damit es so aussieht, als hätten unsere Jungs die Waffen in der Hand. Da die, es gibt alle in verschiedenen Größen und wir haben keine eigenen Animationen. Also nehmen wir diese Cash Pose Spieler Bewegung. Und lassen Sie uns mit der rechten Maustaste in einem offenen Raum und sagen Transformieren, Transformieren, Bone ändern hier. Und sie sind eingesteckt. Sie werden eine Art kleinen Konvertierungsknoten wie diesen bekommen. Ok? Dieser erste wird für die Pistole sein. Ich möchte zwei davon schnappen und sie ineinander stecken. Und dann möchte ich hier rausziehen und möchte zwischenspeichern. Ich werde zu lokalen Komponenten, okay, sicheres Spiel. Und jetzt können wir zwischenspeichern. Und dann speichern wir das als Pistolen-Pose. Ok. Für den Knochen zu ändern, Wir wollen den linken Schulterknochen linke Schulter bekommen. Und wir wollen das übersetzen. Also lasst uns dieser kleine Stift entlarvt und lasst uns das deaktivieren. In deaktivieren, dass wir nur Übersetzung tun wollen. Wir drehen nicht oder ändern die Skala von irgendetwas. Anstatt zu ignorieren, Lassen Sie uns zu bestehenden hinzufügen. Und wir wollen x negative zwei machen, y negativ 34, und z negativ zehn. So wie das. Das andere, was wir tun wollen, ist, dass wir auch mit der rechten Schulter schrauben wollen. Denn wenn du dich daran erinnerst, hat die rechte Schulter auch ein wenig vermasselt. Wie Sie sehen werden, möchten wir dies drehen. Lassen Sie uns also die Übersetzung unbelichtet und die Skala nicht belichtet. Wir wollen die nicht benutzen. Wir wollen nur die Rotation, die Rotation, die wir zu bestehenden hinzufügen werden. Und dann werden wir das auf negativ 10 setzen. Und das X wie das markieren diese ganze Sache. Und wir werden sagen, übersetzen. Animation oder Pistole Coase. Wir haben ein niedriges Budget. Wir haben keine ausgefallenen Animationen. Wir könnten einfach einstecken. Für alle unsere Waffen. Wir müssen die Knochen von Hand übersetzen, damit sie tatsächlich aussehen, als würden sie etwas tun. Also könnten wir das wahrscheinlich kopieren und einfügen. Und wir übersetzen Pistole für Auto-Gewehr. Weil wir noch keine Animationen haben. Ok? Anstelle von Pistole Pose, Lassen Sie uns es Auto Gewehr Pose machen. Ok. Was kapitalisieren? Es tut mir wirklich das an. Ok. Gott sei Dank. In Ordnung. Wir haben ein paar verschiedene. Wir haben die linke Schulter, die wir negativ sein wollen 20 und Z , und das ist eigentlich das einzige, was wir hier übersetzen wollen , wenn es um unser Auto Gewehr geht. Nur ein bisschen Schulterbewegung dort, um es nach unten und über ein wenig zu bewegen. Kopieren und fügen Sie erneut ein. Und wir machen das für unsere Schusswaffe. Eigentlich, weil wir sie brauchen. Also lassen Sie uns diese kopieren, stattdessen die Pistole einfügen. Und lasst uns diese Schrotflinte machen. Und ich werde aufhören, Witze zu machen. Genau hier. Für Cache-Name zu komponieren. Linke Schulter für die Schrotflinte wird negativ sein zwei, y von 0 und z von drei. Und dann der andere Knochen, den wir wollen, ist, dass wir mit dem Index anfangen wollen. Also wollen wir rechter Index eins. Also, wenn Sie vorher bemerken, wie wie der Zeigefinger den Auslöser ein wenig überlappen, das ist, was wir hier reparieren. Also wollen wir die Übersetzung nehmen oder sorry, nein, die Rotation. Wir wollen nur dieses Z von 20 und dann diese anderen machen. Also 000 20. Dasselbe für das Scharfschützengewehr. Die linke Schulter für das Scharfschützengewehr wird negativ sein. Und dann negativ zwei im y und dann sieben für die linke Schulter. Und dann wird das gleich bleiben, weil die Finger so vermasselt sind. Oh, ich muss das in eine Scharfschützengewehr-Pose ändern. In Mann, denn wir sind jetzt bei unserem Granatwerfer. Granatwerfer Pose. Für den Granatwerfer wollen wir 000 und und ich meine, das einzig Gute ist, dass die gleiche Art von Steckdosen, eine linke Schulter und der Index der, die wir ändern müssen. Sie ändern sich nicht wirklich wie eine Menge von diesem anderen Zeug. Aber ja, es ist trotzdem ziemlich mühsam. Und dann zu guter Letzt, Raketenwerfer, Rakete, Raketenwerfer Pose. Und dann für den Raketenwerfer wird die Übersetzung negativ 0.5 sein und die x, y ist 0, und dann z ist 5. Und dann ist das alles. Also haben wir alle diese gemischten Posen hier. Sie können pausieren, wenn Sie ein wenig verloren gehen, Sie müssen die Zahlen wieder sehen. Und dann, was wir tun werden, ist eine letzte Sache, bevor wir das alles aufbauen und arbeiten. Also wollen wir unsere derzeitige Waffe greifen. Und wir wollen Posen mischen. Hofft, dass der andere. Oh Gott, Mischung. Posen durch diese Aufzählung verschmelzen. Wo ist sie? Wenn Posen nach Waffentyp? Ja. Ok. Das ist richtig. Ok. Wir wollen Posen nach Waffentyp mischen und dann wollen wir Pins für all diese Elemente hier hinzufügen, was alle unsere Waffen hier sind. Bumm. Und dann, was ziemlich cool ist. Wir können uns einfach schnappen. Also für unsere Standard-Pose, Lasst uns einfach die Spielerbewegung verwenden. Für unseren Stempel wollen wir den Pistolenschlauch benutzen, genau diesen, und dann die Auto-Gewehr-Pose, und dann der Hai komponieren. Und dann hat das Scharfschützengewehr Pose zwischengespeichert. In dann die Granatwerfer Pose, dann die Raketenwerfer Pose. Ok? Und wenn wir das tun, es immer noch nicht funktionieren, weil wir eigentlich nichts ausgeben. Wir können also tun, ist, gehen wir voran und zahlen das wieder und rufen diese Waffenpose. Und jetzt lasst uns Waffen Pose schnappen. Oh mein Gott, Spiel. Arbeite mit mir und manchmal hasst es, wie mit Cash-Posen. Manchmal, ja, suchen sie wirklich nach diesem Sauger. Jetzt können Sie sehen, dass aktualisiert wird und wir sind in Pistolen-Pose , weil ich denke, es muss nur Pistole standardmäßig sein. Ein Standardwert dieser Aufzählung ist pistol. Sie können sehen, dass es tatsächlich durchfließt, es läuft hier durch. Wo gehen wir zur Waffenbasis? Sehen Sie diese Magie an. Wenn ich es im Auto Gewehr speichern würde. Komm schon. Ok. Es möchte nicht aktualisiert werden. Das ist peinlich. Nun, im Geiste hat es funktioniert. Oh, warte. Da. So können Sie sehen, wie sich seine Hände tatsächlich bewegen. Sieht Finger, wie sich das ein wenig viel bewegt hat, dass Granate. Du hast die Pistolen-Pose. Genau da. Wir übersetzen diese Knochen. Das Autogewehr, die Schusswaffe, der Scharfschütze, die Granate, die Beachtung Schusswaffe, der Scharfschütze, die Granate, die Beachtung , den Raketenwerfer und das alles. Und so wird dieser Wert der aktuellen Waffe mit der Waffe verbunden werden , die wir im Spiel ausgestattet haben. Und was passiert, dass Anim-Graph ist, dass wir unseren Leerlauf kontrollieren oder das hier zwischenspeichern. Und wir nehmen diese Daten und wir transformieren einige der Standorte davon basierend auf der Waffe, die wir durch diese Aufzählung gesetzt haben und die auf den Bildschirm ausgegeben wird. Wenn wir also tatsächlich Animationen hätten, würden wir einfach wie Gewehrlauf nehmen und dann das hier rein ziehen. Aber diesen ganzen Schritt überflüssig machen. Aber wie gesagt, wir haben keine Animationen. Das ist also die Art und Weise, wie wir es tun müssen. Eine Sache, die ich vergessen habe zu erwähnen, die ziemlich wichtig ist, ist, dass innerhalb unseres BP-Spielers, ähm, wenn wir die Akteure zwei Komponenten anbringen, anstatt der Standardeinstellung, die relative und schweißsimulierte Körper ist, Wir wollen sicherstellen, dass diese alle so eingestellt sind, dass sie auf Ziel ausgerichtet sind und wir wollen deaktivieren, gut die simulierten Körper. Also lasst uns weitermachen und das tun. Das ist nur eine kleine Einstellung, die ein bisschen ein Problem in unserem Skript verursachen wird und im Wesentlichen dazu führt, dass es nicht funktioniert, was nicht gut ist. Keine Mischung wird das tun. Und wenn wir uns umdrehen, haben wir unseren Stempel für Gewehr, was ich denke, es gibt ein Problem mit dieser Animation. Schrotflinte sieht gut aus. Scharfschützengewehr sieht gut aus. In einer Menge wirklich gut. Und der Schläger sieht gut aus. Wir können jetzt zwischen diesen wechseln. Sehen Sie, dass das aktuelle Netz verschwindet, das neue Netz angezeigt wird und die Animation ordnungsgemäß funktioniert. Sehen Sie, wie sich die Hände dahin bewegen, wo die Waffen nicht sind. würdest du eigentlich ziemlich gut sehen, besonders so etwas wie das. Das funktioniert also gut und gut. Lass uns das Sturmgewehr reparieren, und dann sind wir fertig mit diesem Video. Also als kleiner Leckerbissen, genau wie ein cooler kleiner Tipp, wenn Sie wirklich sehen wollen, was hier falsch ist, können Sie die Semikolon-Schaltfläche auf Ihrem Computer drücken. Auf der rechten Seite von L können Sie die sogenannte Debug-Cam eingeben und wir können uns von unserem Spieler lösen. Wir können sehen, dass wir ein Problem mit unserer linken Schulter haben. Also ist unser rechter Arm in der richtigen Position, aber unser linker Arm ist viel zu weit zurück. Und nur, einfach nicht, das zu tun. Großartig. Also, ich muss das reparieren. So peinlich genug, fand ich heraus, dass Sie wahrscheinlich nicht einmal dieses Problem hatten, denn wenn ich in meine Auto-Gewehrwaffe gehe, habe ich es auf eine Pistole eingestellt. Es macht also die Pistolen-Animation. Wenn Sie eine Vorschau dieser Assets ausgeführt haben, können Sie dies hier immer einfach wechseln. Und dann können Sie sehen, als ob ich etwas Verrücktes wie 40 machen würde, können Sie sehen, dass sich ihre Hand so nach oben bewegt. Sie ist irgendwie cool. So wie das. Ich kompiliere oder gehe zurück zu seinem Standardwert und dann ist es fertig. Wenn ich also auf Play klicke, könnte das nur ein Problem mit mir gewesen sein. Da gehst du. Jetzt ist unser Auto-Gewehr derjenige, der gehalten wird, und das ist auch in Schlitz eins, so können wir diese aufheben und was auch immer Reihenfolge, die wir wollen. Also Schlitz eins war die schmerzhafte Pistole, Schrotflinte, Granate, eine von diesen Hypern. Da gehen wir. Es gibt also eine Funktionalität, die wir tatsächlich alles tun können, aber es funktioniert alles. Wir halten unsere Waffen und wir können sie abholen und es sieht alles schön und gut aus. Also machen wir hier große Fortschritte. Ich hoffe, Sie genießen die Klasse bisher und ich hoffe, Sie im nächsten zu sehen. 13. Wechseln: Hallo an alle und willkommen zu einem anderen Video. In der letzten Episode haben wir einige Animationen hinzugefügt, damit wir uns visuell sehen können , wie wir uns zwischen unseren verschiedenen Waffenbauplänen umgeschaltet haben. Zwischen den Videos habe ich ein paar wirklich kleine Dinge in unserer Waffenabholbasis gemacht, ich habe die Höhe unserer Waffe gemacht. Mattea war 110, animierte 75. Das ist nur persönliche Vorliebe. Für mich. Ich fühle mich, als wären sie jetzt in einer besseren Höhe. Und dann in unserem Spieler Anime Blueprint, Ich habe diesen Abschnitt hinzugefügt, der sagt übersetzt Knochen, um eine andere Waffen zu halten, nur so dass die Menschen sehen können, was dieser Teil tut. Okay, was wir in diesem Video machen werden, werden wir uns von der Welt der schweren Codierung entfernen und all diese Knochen übersetzen und dieses verrückte Zeug machen. Und wir werden unserem Projekt etwas Flair hinzufügen , denn gerade jetzt, wenn Sie den Knopf drücken, es einfach irgendwie ungeschickt automatisch übergeht es einfach irgendwie ungeschickt automatischzwischen den Waffen, die wir tatsächlich animieren wollen etwas in spielt sich aus. Gehen wir also weiter und machen das jetzt. Also, wenn Sie in unserem Spieler Anime Blueprint sind, Das ist genial. Geh rüber zu unserer Spieler-Bewegungszustandsmaschine und öffne das. Und wir werden rausziehen, und wir werden einen Staat hinzufügen, und wir werden diese Wechselwaffe nennen. Und ich möchte einen Übergang nach und zurück ziehen. Also wollen wir in der Lage sein, von unserem Leerlauf zu unserer Wechselwaffe und dann von unserer wechselnden Waffenanimation zurück zu unserem Idol zu gehen. Um dies einzurichten, müssen wir ein paar Dinge tun. Also in erster Linie, wenn Sie sich erinnern, wenn ich nur gehen, um im Grunde kaufen Grafik ist schließen. Wenn Sie zu diesem Ausrüstungswaffen-Ereignis gehen, das zufällig ist, nehmen wir zuerst eine Waffe und wenn wir zwischen ihnen jedes Mal wechseln, werden Sie wissen, dass innerhalb dort haben wir diese Variable, die besagt, dass die Waffe wechselt. Wenn dieses Ereignis ausgeführt oder ausgeführt wird, ist Englisch hart, diese Variable wird true und dann nach 0,33 Sekunden wird es falsch. Und wir sagten, dass es Zeit für eine Waffenwechselanimation zulässt. Es geht also nicht sofort von wahr zu falsch. Sie lässt Zeit für diese Innovation. Also, das werden wir jetzt tun. Also zuerst, lasst uns zu unserem Event Graph gehen und oder zu einem Plan. Und lassen Sie uns eine neue Variable erstellen und nennen Sie diese Waffe wechseln. Und ich mache das zu einem Boolean. Und alles, was wir wollen, ist, dass wir das so einstellen wollen dass es der gleichen Variablen entspricht, die in unserem Spieler gefunden wird. Get wechselt die Waffe. Stecken Sie das in das. Jetzt haben wir also einen booleschen Wert, der sich in unserem Anime-Blueprint befindet, der zu jeder Zeit dem Wert des in unserem Player gefundenen ist. Also lasst uns das machen. Und es sagt, sagen sehr wenig für den Wechsel Waffe angereichert. So ziemlich unkompliziert, oder? Das bis jetzt. Und wir fügen das aus dem Zweig anderer, anderer Sachen hinzu. Sie könnten, wenn Sie wie ich kompilieren, werden Sie wahrscheinlich ein paar kleine Probleme hier bekommen. Das liegt nur daran, dass wir in unserem Enum-Graph hier eigentlich keine Animationen haben. Also müssen wir voran gehen und 11 hinzufügen, die wir hinzufügen möchten, ist in unserem Shooter-Spiel. Lassen Sie uns zu Shooter-Spielanimationen gehen, FTP-Animationen, und wir wollen Gewehr ausrüsten. Also Gewehr ausgestattet sieht so aus und wir haben ein kaputtes Geräusch hier drin. Also die eine, die wir wollen, heißt es ein Quip, ich glaube, SR, SR, Sound Queue AR-Clip, und es ist kaputt. Also lassen Sie es uns sowieso ausrüsten. Volume Multiplikator, wir können bei einem für jetzt bleiben und sagte, diese Lupe tatsächlich zu finden, diese. Und lasst uns weitermachen und es reparieren. Suchen Sie also einen Clip, Clip 1, und dann ausgestattet, um n gleich 3 zu schreiben. Also jetzt sagen wir, dass wir in eine Warteschlange stellen. Und jetzt funktioniert es. Und ich kann es so hören. Ziemlich unkompliziert. Das hier funktioniert jetzt. Also gehen wir zurück zu unserem Anime-Blueprint, Animationsgraph-Spielerbewegung, öffnen Sie Schaltwaffe. Es hat unseren Asset-Browser. Und wir haben Gewehr hier ausgestattet. Wenn Sie nicht Gewehr ausgestattet haben, sind bereit, nur wird es wahrscheinlich sagen, es ist nicht konfiguriert, um dieses Skelett getroffen Ja, und dann wählen Sie Spieler Skelett und dann wird es hier angezeigt , weil Spieler Skelett ist die Skelett genau hier, das wir geschaffen haben, um an diese, unseren Charakter und die Animationsblueprint unseres Charakters befestigt zu werden. Jetzt müssen wir tun, ist, dass ich einige Zustände schaffen muss, meine ich, bis zum Spiel. Okay, wann möchten Sie zu dieser Animation wechseln? Und was willst du zu diesem zurückwechseln? Es ist sehr, sehr einfach. Wir wollen nur sagen, Tja, tauschen wir eine Waffe aus? Wenn wir eine Waffe wechseln, wollen wir von Idle Run 2 wechseln. Und dann, wenn wir keine Waffe wechseln, wollen wir zurück. Und ich lasse sollte kompilieren und speichern. Also, wenn wir hier raufgehen und eine Waffe aufnehmen, sollten wir sehen, wie sie wieder animiert und unbelebt ist und es wieder anatomisch macht. Und es ist animiert. Wissen Sie das. Und wir können jetzt wechseln. Wieder, die Santa Fe komplette Abfälle, es ist irgendwie seltsam. Aber es ist nur manchmal weiß. Das ist sehr seltsam und wird mit dieser Animation etwas dabei sein. Mal sehen, was das Versprechen, okay, ich denke, das Problem war hartnäckig, weil ich die Animationsdatei geöffnet hatte , weil ich jetzt diesen Fehler nicht bekomme. Es funktioniert gut. Also, wer hat die Waffe aus dem Rahmen gezogen? Es wird so schnell wechseln, man nicht einmal wirklich sagen kann, dass es irgendwie rauskommt. Auch, eine andere Sache, die wir überprüfen können, ist ich derzeit Waffen Slot 1 ausgestattet , Das ist der Stößel derzeit, wenn ich ein schlagen, es ist nichts zu tun. Wenn Sie sich erinnern, haben wir dieses Skript hier hinzugefügt, um das zu gewährleisten. Also, wenn unsere aktuelle Waffe die gleiche Sache ist wie der Waffenschlitz, den wir ausrüsten. Wir werden nichts laufen lassen. So können wir nicht ausrüsten, die Waffe wiederkennen, die wir bereits haben. Man funktioniert also nicht und zwei arbeiten nicht, arbeitet nicht für seine Arbeit 56. Und da wir diese haben, ist gültige Knoten. Finde sie, meine Güte. Oh mein Gott, leicht, sich zu verirren. Also sagt er, wir haben diese ist gültig weiß, ob ich davon loswerden würde , dass es gültige Knoten hier ist. Und ich mache das und dann traf ich 2, 3, 4, 5 oder 6. Es wird verwirrt. Das Gefühl, dass wir diese haben. Es wird einfach weiter runter zum nächsten fahren. Es wird nicht verwirrt. Und alles funktioniert einwandfrei. Das ist also alles gut und gut. Wir werden nur weiter, fügen einige Funktionalität, um diese Waffen und machen sie aussehen und klingen und fühlen sich wirklich genial. Also machen wir das im nächsten Video und wir sehen uns dort. 14. Dynamische Crosshairs: Alle und willkommen zurück zu einem anderen Video in Unreal Engine 4. Es ist ein brandneuer Tag, zumindest ist es für mich. Also beginnen wir diesen Tag direkt mit dem Flugzeug. epische Ego-Shooter-Musik, die wirklich den Ton angibt, glaube ich. So. Was wir in diesem Video und in der nächsten Reihe von Videos tun werden, ist, dass wir die Benutzeroberfläche verwenden, einige Widgets, einige UMG, die Haube, wie auch immer Sie es nennen wollen. Also werden wir dies beginnen, indem wir einen neuen Ordner in unserem FPS-Spiel erstellen und diese Benutzeroberfläche aufrufen. Fühlen Sie sich frei, es UMG auf echten Motion Graphics Widgets zu nennen, was auch immer Sie es nennen möchten, ich werde es UI nennen. Im Inneren von hier werden wir zwei Widgets erstellen. Wenn Sie nicht mit welchen Widgets es gibt, wie etwa 2D-Ebenen, wo Sie Ihr HUD und andere 2D-Assets platzieren können. Also haben wir HUD und dann haben wir hier überquert. In diesem Video werden wir unsere dynamischen Fadenkreuze machen, die sich bewegen , je nachdem, wie schnell sich unsere Charaktere bewegen, je nachdem, wie schnell sich unsere Charaktere bewegen. Bevor wir hier unser Kreuz öffnen, wollen wir zwei neue Variablen erstellen, eine innerhalb unseres Charakters. Und dann wollen wir eine in unserer Waffe erschaffen. Also innerhalb unseres Charakters, werden wir einen Boolean erstellen und nennen es zielt. Dies wird in mehreren Skripten innerhalb des Charakters verwendet werden, wo wir verschiedene Ereignisse abfeuern, je nachdem, ob wir zielen, abzielen Website oder nicht. Der Grund, warum wir es jetzt machen, ist, weil es einige Funktionen in unserem Cross ihr Widget hat. Der andere Plan wollen wir seine Waffenbasis öffnen und lassen Sie uns eine neue Variable erstellen und College und Kugeln verteilen. Um das zu machen, habe ich Schwimmer getippt. Diese Variable wird es auf den Standardwert von 350 setzen. Was diese Variable tun wird, ist, dass sie die Kontrolle über eine Berechnung haben wird , die vorschreibt, wie viel sich unsere Kugeln ausbreiten, wenn wir hip feuern, weil wir nicht ganz genau sein wollen. Und so wird diese Zahl direkt damit korrelieren wie weit auseinander Fadenkreuze standardmäßig sind. Also lasst uns hier aufmachen. Und Sie werden unsere Standard-16 mal 9 Bildschirmgröße auf Fill Screen hier oben sehen wir diese benutzerdefinierte machen und es ist automatisch, oder standardmäßig wird es auf eine 100 von einem 100 eingestellt. Und das ist völlig in Ordnung mit mir. Ich werde unser Canvas-Panel umbenennen, indem ich es auswähle und F2 und dieses Kreuz hier anrufe Leinwand. Und ich werde eine Größenbox durchsuchen, die auf die Leinwand fallen lassen. Und dann werde ich ein Bild ziehen und das auf die Größe Box setzen. Sie sollten also eine Hierarchie haben, die so aussieht, wobei das Bild ein Kind des Größenfelds und der Größenfelder ist, das dem Canvas-Panel untergeordnet ist. Die Größe Feld, wir werden das obere Kreuz hier im Bild nennen wird nur dieses Top-Füllbild nennen. Jetzt werden Bilder standardmäßig auf Variablen gesetzt. Sie können denken, Sie können das deaktivieren. Ich glaube nicht, dass ich es benutzen werde, aber wir wollen, dass unser Kreuz hier eine Variable ist. Mit unserem Top-Fadenkreuz ausgewählt. Wir wollen das oben verankern. Ich möchte sicherstellen, dass unsere Positionen beide um 030 Uhr sind. Größen sind in Ordnung. Das x, wir machen es 0,5 in der Ausrichtung. Wir werden sicherstellen, dass wir auf Größe zum Inhalt klicken, die dieses Füllbild zwei, diese Zahlen, und wir werden eine Breite und eine Höhe überschreiben. Und machen wir es 1,5 und 20. Also jetzt haben wir unser kleines Top Fadenkreuz Bild genau da. Lassen Sie uns voran und drücken Sie Control W zu kopieren Einfügen diese dupliziert sind und wir machen diese ein unten Fadenkreuz genannt. Und unten drücken Sie Caps Lock, unten füllen Bild und das untere Fadenkreuz Haar. Lassen Sie uns voran und stellen Sie dies so fest, dass es unten verankert wird. Und wir machen diese kleine Blume hier unten. Lassen Sie uns unsere Positionen zurücksetzen, stellen Sie sicher, dass sie alle bei 0 sind. Und dann glaube ich, dass das Warum davon eins sein wird und wir halten die 0,5 Ausrichtung für den Boden. Gehen wir weiter und machen die linke. Wir haben das linke Fadenkreuz und das Bild von Phil links. Für die Linke. Ich werde es nach links verankern. Ich werde unsere Positionen auf 00 zurücksetzen. Und wir werden tun, ist, dass wir nur die Breite und Höhe invertieren. Die Breite beträgt also 20 und die Höhe beträgt 1,5. Und ich muss das etwas überlegen. Lassen Sie uns also die Ausrichtung 0 machen. Ja. Und wahrscheinlich 0,5. Das sieht gut aus. Ja, links kreuzen ihre Ausrichtung 0 und die 0,5 im y. last but not least, wir haben das Recht. Also machen wir richtig, Fadenkreuz und richtig. Phil Bild. Lassen Sie uns das auf der rechten Seite verankern. Lassen Sie uns die Größe notieren. Seine Position von 0. Die Ausrichtung wird x von 1 und y von 0,5 sein. Und da gehen wir. Jetzt haben wir jemals so Haare gekreuzt. Und da wir diesen weißen Punkt bereits in der Mitte des Bildschirms haben, brauchen wir nicht wirklich einen weißen Punkt in die Mitte zu setzen. Für den Rest des Videos. Wir werden im Ereignisdiagramm sein und wir werden diese Fadenkreuze tatsächlich bewegen lassen. Und der beste Weg, dies zu tun, ist, dass wir ein paar Funktionen erstellen , die wahrscheinlich ziemlich hässlich sein werden. Also, wenn Code es hässlich wird, stecken Sie einfach diesen bösen Jungen in eine Funktion. Das werden wir also tun. Erstellen Sie eine neue Funktion und nennen Sie diese Bewegung Fadenkreuze oder so etwas. Für diese Funktion wollen wir diesem eine Eingaben eines Floats geben und wir werden nur diese Ziele nennen, weil es ein Zielwert ist, auf den wir uns bewegen werden. Und lassen Sie uns dies zu einer lokalen Variablen heraufstufen und es lokal Target nennen. Weil dieses Skript ziemlich lang sein wird. In diese Richtung. Ich ging voran und traf Alt, um diese Pin zu brechen weil wir etwas Mathematik machen, das Lieblingsthema aller. Also fügen wir bei einem Ziel einen Float plus einen Float hinzu. Und lassen Sie uns dies zu einer Variablen fördern und nennen wir es Kugeln Verbreitung. Wir werden diese Kugel Spread variabel bis zu unserer Kugel Spread Variable verknüpfen , die wir in der Waffenbasis erstellt haben. Also dieses Plug-in, das Ergebnis dieser Mathematik in unsere lokalen Ziele. Es übergibt also nur das, fügt es zu einem Wert hinzu und setzt es dann als neuen Wert ein. Das ist die Zeit, in der wir hier rausfahren. Also lasst uns unser oberes Fadenkreuz schnappen. Wenn Sie die Strg-Taste gedrückt halten, wird sie automatisch angezeigt. Wenn nicht, wird es Sie fragen, ob Sie es bekommen oder es hier raussetzen wollen. Lassen Sie uns Renderübersetzung setzen. Und dann aus der Übersetzung werden wir mit der rechten Maustaste klicken und den Struck Bleistift in einem x- und einem y-Wert teilen. Und was wir hier raus wollen, ist, dass wir die Übersetzung bekommen oder transformieren wollen , tut mir leid. Und dann werden wir das noch zwei Mal teilen. Also teilen wir es auf und teilen Sie dann die Übersetzung erneut auf. Also bekommen wir jetzt ein x und y. Stecken Sie das so ein. Schließen wir das X direkt an, weil wir es nicht ändern wollen. Aber für das y, hier gehen wir, werden wir auch interpretieren. Der Rückgabewert davon wird in unser y gehen, aber wir müssen diese ausfüllen. Unser Ziel wird also unser lokales Ziel sein. Delta Zeit wird, wir werden die Welt Delta Sekunden zu bekommen, die genau wie die Zeit innerhalb des Spiels ist, gibt die Frame-Delta-Zeit in Sekunden durch Zeiterweiterung angepasst. Zeiterweiterung ist wie wenn Sie beschleunigen, Zeit beschleunigen oder pünktlich aufschlitzen, das ist genau wie die Zeit, die in der Welt auftritt. Dann unterbrechen Sie die Geschwindigkeit. Lassen Sie uns dies zu einer Variablen fördern und wir nennen es Interrupt-Geschwindigkeit. Und lass es uns so machen, Oh, du kannst zuerst kompilieren und es 30 machen. Also, was macht das alles? Also, unser oberstes Fadenkreuz, wollen wir, dass sich das nach oben und unten bewegt, richtig? Das ist also in der y-Ebene. X ist hier. Warum ist das so? Also halten wir die Taten genau gleich, wenn wir uns bewegen würden oder was auch immer. Aber wir wollen das y ändern, das oben und unten ist. Interrupt oder Interpolation ist im Wesentlichen eine Bewegung von einem Wert zum anderen über einen bestimmten Zeitraum mit einer bestimmten Geschwindigkeit. Also haben wir unseren aktuellen Wert, der dieser y-Wert ist, der bereits festgelegt ist. Und dann werden wir unseren Zielwert haben, der dort sein wird, wo er sich zum Zielwert bewegen wird. Denken Sie daran, ist das, und es wird durch den Wert der Kugel angepasst werden , den wir in unseren Waffen gesetzt haben. Es wird dort über nur Delta-Zeit zu bewegen, ist immer genau wie die Zeit der Welt. Du hast diesen Knoten so ziemlich immer herausgezogen. Und dann ist die Interpolationsgeschwindigkeit nur für Sie eingestellt, wie schnell Sie wollen, dass es von Punkt A nach Punkt B bewegt und so sagte ich, 30 ist in Ordnung. Und so funktioniert das. Das ist irgendwie das, was das genau dort macht. Versuchen Sie, das zu machen. Jetzt sieht es super hässlich aus, aber es ist irgendwie ein flippiges kleines Skript. Also lasst uns dieses Feld kommentieren und oben sagen. Fadenkreuz-Bewegungen, so etwas. Was wir jetzt tun wollen, ist, dass wir das für all unsere anderen Fadenkreuze tun wollen. Also lassen Sie es uns kopieren und einfügen. Und all das werden nur leichte Variationen haben. Also lasst uns den unteren nächsten machen. Ziehen wir unten über oben. Es wird es ersetzen. Das einzige, was wir tun wollen, ist, dass der Boden sich in die entgegengesetzte Richtung bewegen wird , wie oben. Also lassen Sie uns dies einfach mit einer ganzen Zahl multiplizieren, mit einem anderen Floats fließen mal schwimmt. Stecken Sie das als Ziel und multiplizieren wir dies mit negativem 1. Also, das wird einfach diese Zahl für uns invertieren. Tut mir leid, das Skript ist irgendwie hässlich. Und dann nennen wir diesen unteren Kreuzfeuer-Moment. Und wenn Sie nicht schon für unsere Linke und unsere Rechte erraten konnten, wollen wir nur das x und das y invertieren, denn jetzt bewegen wir uns auf der x-Ebene statt auf der y-Ebene. Also gehen wir voran und greifen wie ein Lift Fadenkreuz. Und die Linke wird nur das lokale Ziel sein. Aber anstelle von x und y, Lasst uns diese Stifte hier brechen. Lassen Sie uns das x in unseren Strom stecken und dann das x zurückgeben und dann einfach direkt in das y stecken. So wird die linke Fadenkreuz Bewegung ich etwas geschrieben. Ja, 30. Und dann nicht zuletzt für das Richtige. Nennen wir diese Rechte. Und alles, was wir für die Rechte tun wollen, ist aus lokalen Zielen Fließzeiten Floats, multiplizieren Sie es mit negativem 1, um was auch immer dieser andere Wert ist zu invertieren. Und dann Bada Bing, Bada, Boom. Jetzt haben wir das ganze Setup. Sieht ziemlich gut aus. Damit können wir in unser Ereignisdiagramm gehen und diese Funktion tatsächlich ins Leben rufen. Also werden wir brauchen, wir brauchen nicht vorkonstruiert wird Event Construct und Event Tick benötigen. Also aus einem Van Konstrukt, das die Widget-Variante eines Vamping im Spiel ist. So ist es, als wenn dieses Widget erstellt wird, wird dies ausgeführt. Was wir tun wollen, ist, dass wir unseren Spielercharakter bekommen. Und dann werden wir zu besagtem Spielercharakter, dem BP-Spieler. Und dann lassen Sie uns dies auf eine Variable namens Player setzen. Ja, das ist unser Hinweis auf unseren Spieler. Also jetzt haben wir den Player als Variable in diesem Blueprint hier. Und dann wollen wir sofort ein benutzerdefiniertes Event erstellen. Und wir nennen dieses Fadenkreuz Update. Dann. Wir werden dieses Ereignis sofort vom Event-Konstrukt ableiten wollen. Also im Crosser Update, was wir es tun wollen, Lassen Sie uns die Referenz zu unserem Spieler bekommen, und dann lassen Sie uns unsere Last aus. Und denken Sie daran, dass ich Ihnen vorher von Enums erzählt habe und in der Lage sein kann, sie ein- und auszuschalten und verschiedene Ereignisse auszuführen , je nachdem, was es auch gesagt hat. Das werden wir jetzt tun. Also schalten wir unsere Enumeration so ein. Und was ich tun will, ist, wenn wir keine Waffe haben. Also, okay, machen wir das. Also geh, um deine Leinwand zu überqueren. Stellen Sie sicher, dass dies auf eine Variable gesetzt ist. Dann greifen Sie es, holen Sie es, und dann lassen Sie uns Sichtbarkeit festlegen und kopieren und einfügen. Also haben wir zwei davon, stecken Sie es in das Ziel. Wenn wir also keine Waffe haben und eine Waffe haben, wenn wir eine Waffe haben, wollen wir, dass unsere Fadenkreuze sichtbar sind. Wenn wir es nicht tun, lassen Sie es zusammenbrechen. So wie das. Los geht's. Also wollen wir nur unser Kreuz. Da ist dieser Auftritt, wenn wir tatsächlich eine Waffe haben. Also ist dieses Top-Skript fertig. Gehen wir nach unten und wir wollen noch ein paar andere Dinge tun. Nachdem wir diese Show haben, lasst uns voran und holen die aktuelle Waffe. Und dann lassen Sie uns die Kugel von der Waffe ausbreiten. Also bekommen wir, was auch immer wert ist. Also, wenn ich in unsere Waffenbuchten gehen würde, richtig, wir haben die Kugel verteilt auf 350 gesagt. Aber ich kann in unser Auto Gewehr gehen und jetzt habe ich gesehen, dass die Kugel ausgebreitet ist und ich kann das auf etwas setzen, andere Nummer, und ich kann das auf einer Waffe die Waffenbasis ändern. Also, was dieses Kreuz hier tut, ist, dass es diesen Wert bekommt. Also, jetzt werden wir etwas Mathematik machen. Okay, lass uns eine Teilung Flöte machen, die durch Schwimmer geteilt wird. Und teilen wir diese Zahl durch 50. Und ich setze hier ein Komma und sage bei Zählungen für die Ausbreitung der Kugel. Okay, du musst zu viel über die Mathematik und die Werte erfahren. Das ist nur Sachen, die ich beim Testen gemacht habe, herausgefunden habe, dass das funktioniert hat. Dann multiplizieren wir das mit negativem. So stellen Sie sicher, dass es sich in die richtige Richtung bewegt. Und dann das Geräusch, dass die Kugel HUD ausbreitete. Ich werde diesen Wert als Mathematik festlegen. So Revolte Spread HUD ist in unserer Bewegung Fadenkreuz Funktion. So, mutig gestreute HUD, fügen wir das hinzu, was auch immer unser aktuelles Ziel ist. Okay, danach, was wir tun wollen, ist, dass Sie einen Timer für Ereignis einstellen wollen. Timer unterscheiden sich geringfügig von Timelines. Wir wollen sicherstellen, dass diese Schleifen und wir wollen diesen Timer alle 0,01 Sekunden ausführen, so dass es sich schnell bewegt. Und aus der Veranstaltung werden wir ein benutzerdefiniertes Ereignis erstellen. Und wir werden diesen Zug hier nennen. Oder, Ooh, das ist auch ein Name, den wir schon benutzt haben. Lassen Sie uns nennen, die Kreuzung hier und lassen Sie uns das wie gosh nennen, sich hier über bewegen. Eigentlich nennen wir es übersetzen. Fadenkreuz ist das, was wir tun. Wir übersetzen sie tatsächlich. Da gehen wir. Das macht eigentlich mehr Sinn. Ok? Das ist es, was wir eigentlich wollen, um sie herum zu bewegen. Ok. Es sieht alles gut aus für mich. Ich bewege mich nicht hierher. Lassen Sie uns einen Zweig hinzufügen, weil wir wissen wollen, dass sich unser Spieler tatsächlich bewegt. Also lasst uns unseren Spieler holen. Holen wir uns unsere Charakterbewegungskomponente. Da gehen wir. Charakterbewegungskomponenten ist dies, steuert all diese Sache. Also haben wir die Gehgeschwindigkeit vorher geändert. Du kannst dich höher springen lassen, siebenmal springen, Budget machen, ganze Haufen verschiedener Sachen. Also packen wir diese Komponente und es gibt etwas eingebautes namens fällt. Stecken Sie das in den Zweig, weil Sie überprüfen möchten, ob wir fallen oder nicht. Wenn wir fallen, Lasst uns voran und tun trans-späte Fadenkreuze. Und das Ziel, das wir wollen, ist, dass wir dies zu einer Variablen erstellen und es fallendes Ziel nennen. Das wird also die Nummer sein, auf die wir es gesetzt haben, wenn wir fallen. Und lassen Sie uns diese negative 60. Also denken Sie daran, auf Übersetzen Fadenkreuz, wir haben diese Eingabe hier hinzugefügt. Jetzt fragt es nach einem Ziel eines Float-Werts. Also, was wir hier tun, ist, dass wir sagen, okay, wenn wir fallen, beginnen Sie das als negativ 60 und dann fügen wir das dem fett Spread hinzu und setzen es dann als diesen Wert ein. Und dieser Wert ist, was unser Zielwert sein wird , dieses Fadenkreuz zu bewegen, um den Bildschirm zu überqueren. Du musst also nicht, wie ich schon sagte, du musst dich zu sehr mit der Mathematik beschäftigen. Aber das macht es, dass sich die Zahl einer Kugel ausbreitet. Bewegen Sie sich über den Bildschirm in einer Weise, die nicht dämlich aussieht. Sie lächerlich. Wenn wir also nicht fallen, wollen wir einen anderen Zweig herausziehen und sehen, okay, wir fallen nicht, aber wie schnell bewegen wir uns? So verschrottet den Spieler. Holen wir unsere Spieler oder Geschwindigkeit. Lassen Sie uns den Vorwärtsvektor nach der Vektorlänge erhalten, tatsächlich die Länge des Vektors von uns bewegen. Und wenn dies größer ist als, eins, überprüft, ob es größer als eins ist. Denn wenn es größer als eins ist, bedeutet das, dass wir uns bewegen. Also, wenn es größer als eins ist, AKA, wir bewegen uns, dann machen wir unsere Bewegung. Keiner bewegt sich. Übersetzen, übersetzen, überqueren Sie hier, Ereignis. Und das Ziel für diesen wird das Gefühl Länge unseres Vektors sein. Und wir werden das mit negativem multiplizieren. Also die Umkehrung davon. Und dann werden wir etwas Division machen, das durch 25 teilen, und dann wird das unser Ziel sein, wenn wir umziehen. Und wenn wir uns nicht bewegen, lassen Sie uns das nochmal rennen, trans spätes Fadenkreuz. Und unser Ziel wird 0 sein, weil wir nicht wollen, dass sie sich irgendwo bewegen. Das ist also, wenn Caret Charakter läuft, steht der Charakter still, und dieser, wenn der Charakter fällt. Also wollen wir, dass das wirklich groß ist, wenn wir springen. Das ist also das Größte. Größter Wert ist absolut kleinster Wert, weil es negative Zahlen sind, richtig? Okay, also gibt es unser ganzes Drehbuch genau da. Überquere ihr Update all das. Okay, das Letzte, was wir hier machen wollen, ist Gewicht. Tun wir überhaupt, okay, ja, wir sind gut. Also ativan Tick, wir wollen das jede Sekunde überprüfen. Hier kommt das Amy Ding ins Spiel. Es hat den Spieler gepackt und wir werden sagen, ist das Ziel. Ok? Denn wenn wir auf Seiten abzielen, wollen wir nicht, dass unser Kreuz hier auftaucht, oder? Also lasst uns wieder das Fadenkreuz Canvas greifen. Und lasst uns wieder Sichtbarkeit machen. Kopieren Sie Einfügen. Ok. Lassen Sie uns dies so einstellen, dass es ausgeblendet wird, und stellen Sie dies dann sichtbar ist. Und das letzte, was wir überprüfen wollen, ist, dass wir den Spieler holen und dann die Last wieder raus bekommen wollen. Und dann wollen wir das wieder ausschalten. Wenn wir also nicht zielen und eine Waffe haben, dann werden wir sichtbar sein. Wenn wir das tun, wenn wir zielen, werden wir das zusammenbrechen lassen. Was ist, als könntest du es nicht sehen. Der Grund, warum wir diesen zusätzlichen Schritt hier einfügen wollen , ist, dass, wenn Sie keine Waffe haben, aber Sie die rechte Maustaste drücken, es wird es machen, dass es immer noch angezeigt wird, auch wenn Sie keine Waffe haben. Also wird es irgendwie ein bisschen so zum Spiel gehen. Also lasst uns das nach unten bewegen. Komma Feld entfernt Fadenkreuz. Wenn Amy unten Seite. Wir wollen nicht, dass es noch zweifeln, dass Scott in diesem Fall zitiert. Wenn wir also Play drücken, tut es nichts, weil wir ein paar andere wirklich, wirklich einfache Dinge machen müssen . Also gehen wir jetzt zu unserem Haupt-HUD. Ziehen Sie das heraus, und dann wollen wir unser Fadenkreuz durchsuchen und es auf der Leinwand ablegen. Es wird auftauchen, aussehen und wirklich dumm. Also lassen Sie uns voran und verankern das in der Mitte des Bildschirms. Setzen Sie es auf 0. In 0. Lassen Sie uns es auf Größe zwei Inhalt setzen. Das ist eigentlich sehr klein. Ich werde es auf 100 und um eine 100 setzen und nicht auf den Inhalt, der in einer Ausrichtung für x viel besser aussieht, 0,5 und die Ausrichtung für y ist 0,5. Also gehen wir, da ist es genau da. Und schließlich, lasst uns zu unserem Spieler gehen, und lasst uns zu unserem Veranstaltungsdiagramm gehen und wir sollten feststellen, dass Ereignisse beginnen zu spielen. Und lassen Sie uns unser Widget erstellen. Wir müssen es tatsächlich erstellen, um dem Bildschirm hinzuzufügen. Lassen Sie uns das Haupt-HUD hinzufügen. Lassen Sie uns voran und fördern dies zu einer Variablen und nennen es Haupt-HUD, so dass wir es später verwenden können. Und dann fügen wir dem Ansichtsfenster hinzu. Und dann werden wir sagen, schafft Haupthaube. Das macht das HUD tatsächlich auf dem Bildschirm angezeigt. Also, wenn wir im Spiel passiert sind, wirst du nichts sehen, wenn ich versuche zu zielen. Nun, wir haben keine zielgerichtete Funktionalität, aber es tut nichts. Nimm eine Waffe auf. Jetzt haben wir unsere Fadenkreuze hier und sie bewegen sich nicht, was wir gerade sind , wir lieben es nur zu sehen, dass passiert, nachdem wir die ganze Zeit mit dem Programmieren verbracht haben. Liebst du es nicht einfach? Also lasst uns weitermachen und das reparieren. Okay, wie sich herausstellt, habe ich einen ziemlich entscheidenden Schritt verpasst, den wir tun müssen. Also in unserem Spieler, in unserem Event-Graph auf diesem Ausrüstungs-Waffen-Ereignis, Lassen Sie uns voran und greifen Sie den Verweis auf die wichtigsten , wie wir gemacht und greifen unser Fadenkreuz. Und dann wollen wir das Fadenkreuz aktualisieren. Wenn wir eine Waffe ausrüsten. Es läuft eigentlich nicht weniger, wir tun das. Das sollte also jetzt funktionieren. Und dann ist die andere Sache, die wir jetzt tun wollen, dass Fadenkreuz aktiviert ist, dass wir jedes Mal über ihr Update laufen wollen , wenn wir eine Waffe wiederkennen und zwischen ihnen wechseln wollen, genauso wie ein Fail-safe, stellen Sie sicher, dass all das tatsächlich funktioniert. Also gehe ich einfach voran und kopiere das, gehe zu Aktionszuordnungen einfügen. Und dann werde ich jeden einzelnen dieser Knoten hier anschließen, nur um sicherzustellen , dass wir dieses Ereignis immer laufen, wenn wir eine Waffe wie diese wechseln, ziehen Sie das jetzt raus. Also, wenn ich reingehe, drücken Sie „Speichern“. Eine andere Sache, ich habe auch vergessen, das hier auf das rechte Kreuz zu wechseln. Aber wenn du klug wärst, hast du diesen Fehler nicht gemacht. Also gehen wir hier rüber. Es ist eine Waffe. Und jetzt, wenn wir springen, bewegt sich, kommt zurück. Es bewegt sich auf dem Bildschirm. Das wird immer gleich groß sein. Aber Sie können sehen, wie sich unser Fadenkreuz bewegt. Und wenn Sie denken, dass sie sich zu viel bewegen oder gar nicht, können Sie einige der Mathematik anpassen, einige dieser Zahlen darin. Dann hier. Einige dieser Mathematik in einigen dieser Mathematik halten die negative, aber wie dividieren durch eine andere Zahl, geteilt durch eine andere Zahl, setzen Sie dies als eine andere Zahl, und das wird Ihnen etwas anders Ergebnisse. So können Sie voran gehen und mit dem nach Ihren Wünschen spielen. Aber abgesehen davon, dass alles funktioniert, sieht alles gut aus. Also sehe ich dich den nächsten. 15. Den Main erstellen: Hey alle und willkommen zurück zu einem anderen Video. Im letzten haben wir einige dynamische Fadenkreuze erstellt. Und in diesem werden wir weitermachen, indem wir unser Haupt-HUD machen und unsere Waffeninformationen in bestimmten Sachen wie diesem machen. Genau wie im letzten Video werden wir anfangen, indem wir ein paar Variablen machen. Diese werden innerhalb unserer Waffenbasis existieren. Machen wir drei davon. Also die ersten beiden werden wir ganze Zahlen sein. Einer von ihnen wollen wir als aktuelle Munition machen. Und vom Typ Integer. Wir werden einen weiteren machen, der aktuelle Gesamtwert genannt wird. Und dann noch eine, die heißt, wie wollen wir es nennen? Nennen wir es Munitionstyp, und wir machen dies vom Typ Text. Es ist kompiliert, damit wir diese bearbeiten können. Also für aktuelle Munition, das wird die aktuelle Menge an AMO sein, die wir zu jeder Zeit in unserem Magazin haben. Also für den Standardwert, lassen Sie uns das so etwas wie vielleicht 30. Dann für unsere aktuelle Gesamtmunition, Lassen Sie uns eine Menge Munition geben und sagen, wie 244 oder so. Und für den Munitionstyp werden wir so etwas wie Racket-Platz, Auto-Leerraum, Klammern, etwas in der Linie davon machen . Alles klar, und so wie zuvor, wenn wir zum Beispiel unser Auto-Gewehr öffnen , haben wir jetzt diese Variablen. Und wir können diese unabhängig ändern. Granatwerfer, glänzender, Sie können sie in ändern und all das, wie Sie möchten schon. Also nun gehen wir zurück zu unserem UI-Ordner und lassen Sie uns eine neue Widgets erstellen. Und nennen wir diese Waffeninfo. Und lassen Sie uns das hier aufmachen. Womit fangen wir an? Lasst uns weitermachen. Ist das eine Art große Hierarchie, dieses Ding. Also gehen wir zum Vollbild und lassen Sie uns zu gewünschten gehen. Schon. Das erste, was wir packen wollen, ist eine vertikale Box. Ziehen wir das auf unsere Leinwand Panel und wir können ersetzen die Leinwand Panel 0? Jetzt wollten wir es tun, okay, vielleicht bin ich irgendwie so, als würde ich versuchen, das Leinwand-Panel loszuwerden. A. Wir können keine Sekunde warten. Okay, lasst uns löschen. Ich kann einfach das Canvas-Panel löschen. Da gehen wir. Okay, lassen Sie uns diese Hauptbox umbenennen. Wir wollen, dass alles um diese Box zentriert ist, nicht um eine zufällige Leinwand. Der Grund ist, dass, wenn wir die Größe Box haben und es verschiedene Parameter hier hat, wo wir nur wollen, dass alles auf dieser Box erstellt wird. Das erste, was wir tun wollen, ist eine nicht eine Aussage unserer erstellen, Wie heißt es? Fortschrittsbalken? Es wird von uns Ausdauerbalken genannt. Ok? In der Ausdauer-Bar werden wir noch nichts damit machen, aber wir werden diese behalten, wie sie sind. Ich bin von links nach rechts ist in Ordnung. Wir können einige der Füllfarbe und Deckkraft ändern. Das sieht vorerst gut aus. Lass es uns einfach behalten, lass uns das vorerst behalten. Als nächstes wollen wir ein Overlay machen und wir werden das Overlay auf die Hauptbox setzen. Und wir werden das als Overlay behalten und sehen, wie es darunter ist. Also haben wir diese vertikale Box, die Hauptbox, den Standard von uns oben, und dann ist das Overlay darunter und wir können sie so verschieben und sie bewegen sich in der Hierarchie, aber wir wollen das Overlay darunter. Gehen wir weiter und machen eine Hintergrundunschärfe. Ich werde das auf das Overlay legen. Also, das lebt innerhalb der besagten Overlay. Und dann für unseren Hintergrund verschwommen, Lassen Sie uns voran und machen es eine Füllung wie das. Es füllt also die ganze Sache aus, die Unschärfekraft. Lassen Sie uns das so etwas wie 1. So siehst du das da drin. Es ist irgendwie schwer zu sehen, weil alles so klein ist. Aber ich meine, das ist eine Sache. Als nächstes wollen wir ein Bild und das Bild wird so auf dem Overlay leben. Und nennen wir diesen Hintergrund. Dies wird alles gut füllen, für Farbe und Deckkraft. Lass es uns schwarz machen. Und dann für unseren Wert, lassen Sie uns das 0,35 machen, so etwas. Es schafft also diese verschwommene Art schwarzes Bild hier. Bewegen Sie sich in unserer Bildgröße. Wenn Sie dies nicht unter dem Aussehen sehen, öffnen Sie einfach den Pinsel. Wir werden das auf 250 mal 150 setzen. Und dann, da es Ausdauer Bar ist so nah, Lassen Sie uns wählen meine Ausdauer Bar. Und dann auf der Bottom Polsterung, Lasst uns etwas wie 10 vielleicht machen. So gibt es ein wenig getrennt. Und wir können tatsächlich sehen, als würden wir das einfach wie SharePoint 75 oder so etwas machen , nur damit wir das sehen können und wir uns mit den Farben und anderen Dingen wie diesem durcheinander setzen können. Später. Lassen Sie uns eine horizontale Box machen. Setzen Sie das auf unser Overlay, und wir nennen diese Munitionszählbox oder so etwas. Lassen Sie uns Polsterung links von negativen sechs machen. Warte nein, bis zum oberen negativen 6. Und dann möchte ich das hier so zentriert machen. Ich meine, dass 0. Jetzt neg negative sechs , weil es einige seltsame Dinge mit dem Text gab, die es besser aussehen auf diese Weise. Das nächste, was wir aber tun wollen, ist, dass wir einen Text machen und diesen in unsere Box legen wollen. Und dann für unseren Text, was wir tun wollen, ist, oh, ich verstehe. Lassen Sie uns den Text negativ sechs und dann die Munition zählen. Das ist derjenige, der negative sechs hatte. Deshalb ist Wer der Text, der für unseren Standardwert für einen Text etwas seltsam aussieht . Machen wir einfach 0, 0 für Farbe und Deckkraft. Ich mag nur ein bisschen wie, wenn du diese Zeile hier siehst, einfach da drüben. Es wird wie Punkt 77 für alles so sein. Es ist irgendwie das, was ich für die Größe unter der Schriftgröße bis 64. Ich glaube nicht, dass wir irgendeine Art von Schatten oder so etwas brauchen. Das sieht also ziemlich gut aus. Eine Sache, die wir tun möchten, ist, eine bestimmte Schriftart zu importieren. Gehen wir also voran und machen das jetzt wirklich schnell. Wenn Sie dies nicht bereits getan haben, können Sie die Projektdateien, die Kursdateien, wo immer sie aufgerufen werden, auf der Website, auf der Sie gerade diesen Kurs ansehen, herunterladen die Kursdateien, wo immer sie aufgerufen werden, , sollten Sie drei Ordner sehen innerhalb dieses Projekts Dateien, Audio-Schriftarten und Symbole. Was wir tun wollen, ist in unserem FPS-Spiel, Lassen Sie uns einen neuen Ordner erstellen und etwas Fonts nennen. Und lassen Sie uns eine Farbe auf Rot setzen. Lassen Sie uns das öffnen, öffnen Sie Schriftarten und Sie werden Parese peri Schritt fett und halb fett sehen. Lassen Sie uns einfach beide ziehen und ablegen. Ich sagte nur „Ja“ zu allen. Und es wird vier verschiedene Vermögenswerte schaffen. Eine Sache, die wir tun können, um dies ein wenig angenehmer zu betrachten, ist, wenn Sie auf eine von ihnen klicken, werden Sie sehen, es erscheint wirklich klein. Gehen Sie weiter und machen Sie diese Schriftgröße wie 100, und es wird sie standardmäßig größer machen. Und sehen Sie das für beide, so etwas. Und speichern Sie diesen Vermögenswert einfach so. Nun, zurück in unsere Waffeninfo über den Text unter Schriftarten. Lassen Sie uns dieses halb mutige tun und sagte, jetzt haben wir dieses aussehende Ding genau dort. Und ich benenne diesen Text auch um. Aktueller Munitionstext Sieh gut aus. Innerhalb unserer horizontalen Box wollen wir eine weitere vertikale Box erstellen. Also lasst uns das auf die horizontale legen. Und wir können einfach diesen Namen behalten. Das ist in Ordnung. Und das ist, wo es ein wenig peinlich wird, weil wir jetzt in dieser vertikalen Box eine horizontale Box setzen wollen. Also haben wir eine ganze Reihe von verschiedenen Boxen. Also lasst uns unseren Text zurückholen und diesen auf diese horizontale Box setzen. Und lassen Sie uns diesen Munitionstext nennen. Wieder einmal, was wir hier tun wollen, ist, dass wir mich einfach meine Notizen wirklich schnell überprüfen lassen wollen. Oh, ich verstehe. Ich verstehe. Ich verstehe. Was wir das so einstellen wollen, ist nur ein kleiner Schrägstrich. Wir werden das so einstellen, dass es die gleiche Farbe hat. Irgendwie diese Linie mit dieser Linie, es wird nah genug sein. Wir müssen hier nicht super perfekt sein. Und plus es ist alles persönliche Vorliebe für die Schriftart. Lassen Sie uns es auf 20 setzen. Und wir werden das halb kühne wieder machen. Und das sollte sein, ich glaube, es sollte links ausgerichtet sein. Nein, lass es uns oben ausgerichtet und zentriert machen. Und dann wird das gut aussehen. Lassen Sie uns einfach diesen Text kopieren und einfügen. Und dann lege ich eins direkt daneben. Und wir sagen nur Reserve Munition Text. Noch eine andere, beide Farben sind verfügbar, was man Reserve nennt. Rufen wir das einfach an. Schrägstrich Text Und dann wird das kein Reserve-Munitionstext sein. Lassen Sie uns dies standardmäßig auf Nullen 0000 setzen. Und dann lassen Sie uns das zentriert und oben machen. Das ist richtig. All das sollte richtig sein. 20. Ja. Ja, ich denke, sieht gut aus. Ok. Das Letzte, was wir tun müssen, ist, dass wir noch einen Text erstellen müssen. Und wir wollen, dass das auf der vertikalen Box steht. Also, jetzt wird es es so darunter legen. Okay, und dann werden wir hier unsere Art von Feuertyp setzen. Also lassen Sie uns diese auch zentrieren und unten ausrichten. Wir müssen keine Polsterung setzen. Die Farbe noch einmal, das ist eine Art wie off-white kleine graue Farbe, die ich denke, sieht in Ordnung, Lassen Sie uns halb fett tun. Du kannst dieses Zeug immer meistern, wie du willst. Die Größe davon wird 15 sein. Der Standardwert. Lassen Sie uns setzen, dass Klammern Platz, Auto und alle Kappen, Klammer Enter sein. Also setzt es es irgendwie so ein. Und diese sind eigentlich nicht zentriert. Interessant. Wahrscheinlich wie eine kleine Einstellung, die ich noch wiederholen muss. Es könnte mit dieser vertikalen Box sein. So sieht das besser aus. Mit diesen sehen Sie nicht ganz richtig aus. Sie haben wahrscheinlich wahrscheinlich eine Art Polsterung. Lassen Sie mich hier ganz schnell überprüfen, herausfinden, was das verursacht und nicht aufstellen, wie ich es wollte. Ok, also ist alles tatsächlich gleich, aber auf diesem Schrägstrich, tun Sie es ist tatsächlich ein Schrägstrich und dann die Leertaste und drücken Sie dann die Eingabetaste und es wird getrennt und es wird mehr zentriert sein. Nun, die andere Sache ist, dass ich die ein bisschen mehr voneinander trennen möchte. Also eine Sache, die wir tun können, ist, dass wir einige linke Polsterung von wie gut für vielleicht sechs oder so etwas erstellen können . Und dann werden diese Zahlen ein bisschen mehr getrennt sein. Jetzt, in der Render-Transformation für unsere Ausdauerleiste, werden wir diese Version 1.5 erstellen. Ich werde, wenn das eine ziemlich gute Zahl ist, und dann können Sie in allen Farben, die Sie möchten, Schlitz. Du kannst es rot machen, weißt du, und ich mache es rot. Ich mache es zu dieser roten Farbe. Und dann ein Stil für das Füllbild. Hier können Sie auch verschiedene Farben bekommen. Sie können das Rot und Blau machen und das wird es tatsächlich wie eine andere Tönung geben. Also ja, es gibt eine Menge Dinge, die Sie mit den verschiedenen Ausdauerbalken und verschiedenen Optionen wie diese tun können . So können Sie diesen Look machen, wie Sie möchten. Okay, nur als Zusammenfassung werde ich dir alles zeigen. Also haben wir eine Hauptbox. Und wenn Sie irgendeine Art von Sache haben, die seltsam aussieht, werde ich einfach durch alle Einstellungen scrollen. Wie ich schon sagte, viel davon ist nur persönliche Präferenz, wie Sie wollen, dass es aussehen. Aber das sind alle Einstellungen, die ich derzeit habe. Die Überlagerungen wie diese, Hintergrund verwischen so. Sie können sich also einfach frei fühlen, innezuhalten, wenn Sie mich kopieren möchten, oder fühlen Sie sich frei, einfach Ihr eigenes Ding zu tun, weil es wirklich, wirklich egal ist. Dies macht es nur so aussehen, wie ich versucht habe, es Schlachtfeld ein wenig durch die Schriftarten und Dinge wie diese zu replizieren . Du kannst tun, was du gerne tun möchtest. Es gibt keine richtige oder falsche Antwort. Sie können einfach zwei Textnummern auf dem Bildschirm setzen, wenn Sie nicht wollen, dass es schick aussieht. Und die Ausdauer Marker, das sind die einzigen zwei Dinge, die wir wirklich setzen Funktionalität. Das einzige Skript, das in diesem Video existieren wird, ist die Bindung einiger dieser Dinge. Jetzt, da wir das alles durchgemacht haben, werden wir ein paar Sachen an diese Zahlen binden. Wir, das sind die Variablen, die wir zu Beginn des Videos erstellt haben. Gehen wir also weiter und machen das jetzt. Also im Ereignisdiagramm, lasst uns voran gehen und das Spielercharakter-Ereignisdiagramm unserer gleichen genauen Waffeninformationen abrufen. Wenn Sie es nicht wussten, werfen Sie in den Player, steigen Sie zu einer Variablen, nennen Sie ihn Player. So wie, so. Wie wir es jetzt schon oft getan haben. Aber es wird nie alt. Sie wollen immer Verweise auf unseren netten Bilayer machen, damit wir immer wieder Daten daraus ziehen können. Okay, das nächste, was wir tun werden, ist, dass wir ein paar Bindungen erstellen. Gehen wir zurück zu unserem Designer. Der erste, den wir machen wollen, ist diesen aktuellen Munitionstext zu bekommen. Und dann für unseren Text, Lassen Sie uns gehen, um eine Bindung zu binden und zu erstellen. Es wird automatisch eine Funktion erstellen. Und wir werden das nur nennen bekommen aktuelle Munition, weil der Name, den es kommt mit ist absolut grausam. Also lasst uns voran und schnappen uns unseren Spieler. Und dann wollen wir diese Ladung rausbekommen. Und dann wollen wir gleich sagen, gleich hat eine Waffe. Also wollen wir dieses Skript nur laufen lassen, wenn wir noch einmal eine Waffe haben, weil wir nicht wollen, dass das Spiel verwirrt wird. Wenn wir also eine Waffe haben, können wir tun, was wir gerade tun werden. Also aus unserem Spieler, lasst uns unsere aktuelle Waffe holen. Was auch immer die aktuelle Waffe in unseren Händen ist. Und lasst uns die aktuelle AML von dieser Waffe holen, die Variable, die wir am Anfang des Videos erstellt haben. Und wenn Sie das einstecken und ich mache einen kleinen Konvertierungsknoten, und es wird genau das tun. Das ist alles, was wir dafür tun müssen. Zurück zu unserem Designer. Gehen wir weiter und klicken Sie auf Munitionstexte reservieren und lassen Sie uns eine Bindung dafür erstellen. Lassen Sie uns diesen grausamen Namen ändern, um Reserve Munition zu bekommen. Und dann wird es sein, es wird genau das Gleiche sein. Was wir also tun können, ist, dass wir all diese Skripte dazu bringen können, es zu kopieren und hier einzufügen. Stecken Sie es an, stecken Sie es an. Genau so. Aber statt aktueller Munition wollen wir aktuell werden. Insgesamt Munitionssätze sind größere Munition. In. Dann ist das letzte, was wir tun wollen, diese Auto-Text-Bindung zu bekommen, um eine Bindung zu erstellen. Und wir haben den Namen nicht wirklich geändert und das ist in Ordnung, Nehmen wir an, bekommen gefeuert Typ oder so etwas. Und dann wird es weitgehend dasselbe sein, was wir tun wollen. Ja, ich wechsle ständig zwischen den falschen Dingen. Lassen Sie uns das nochmal kopieren. Fügen Sie es erneut ein. Wir wollen das nur laufen, wenn wir eine Waffe haben, ist es eigentlich nicht? Das und dann kriegen wir das Feuer und den Feuertyp oder bekommen, was wir nannten, das draußen ist. Es sollte es Typ gefeuert werden. O wird sagen, Munitionstyp bekommen und dann sollte das einfach direkt so einstecken. Es läuft nur, wenn wir die Waffe haben. Und so ja, das sieht alles gut und gut aus. Also jetzt wieder in unserem Haupt-HUD, wollen wir das schaffen. Lasst uns eine Waffe Info schnappen sie auf die Leinwand werfen. Seine Größe zum Inhalt. Gehen wir weiter und verankern das unten rechts. Nehmen wir an, denken, das ist ein hübscher, ziemlich anständiger Ort. Richtig? Und die Position x, Lassen Sie uns negative tun 350, Position y, negative zweihundertfünfzig, hundert und 3000 und 0. All das ist in Ordnung. Ich denke, das wird denken, dass es in Ordnung ist. Das sieht ziemlich gut aus. Das Letzte, was wir hier tun wollen, ist, dass wir das nur zeigen wollen, wenn wir eine Waffe haben, was die übliche ist. Also müssen wir noch einmal einen Verweis auf unseren Spieler erstellen. Gehen wir also voran und machen das wirklich schnell. Ähm, ich werde nur überspringen, weil wir das so oft gemacht haben . Ich weiß nicht, mehr Zeit zu verschwenden. So sehen wir uns in einer Sekunde. Okay, jetzt, da wir einen Verweis auf unseren Spieler erstellt haben, ziehen wir diese Referenz heraus, um unsere Last wieder zu entfernen und wieder einzuschalten. Das ist, was wir im letzten Video mit dem anderen das Fadenkreuz gemacht haben. Und dann wollen wir uns Waffeninformationen holen und die Sichtbarkeit einstellen. Kopieren Sie Einfügen. Wir haben eine Waffe, sie ist sichtbar. Wenn wir keine Waffe haben, ist sie zusammengebrochen. Stecken Sie beide Ziele so ein. Und das sollte alles sein, was wir tun müssen. Knochen. Was wir jetzt tun können, ist, dass wir in diese verschiedenen Waffen gehen können, genau hier. Und ich möchte, dass du dich etwas Zeit nimmst und eingibst, wie viel AML willst du die Waffe? Ein halbes. Und wie viel und was wollen Sie insgesamt haben. Also ändere die Zahlen um und dann sehe ich dich in einer Sekunde. Ok. Hoffentlich war das nicht zu schwer. Alles, was Sie tun mussten, ist die Waffen zu öffnen und das aktuelle Tier in der aktuellen Gesamtmenge ML zu ändern. Also passen Sie jetzt alles richtig, wenn wir hineinspringen und spielen, wir rüsten eine Waffe aus, sie hat was auch immer diese Zahlen sind, und dann wechseln wir zu der anderen Waffe. Und in der anderen Waffe und der anderen Waffe, der anderen Waffe und der anderen Waffe. Es wird jetzt alles ändern, was wir für die aktuelle Munition haben, die aktuelle Gesamtmunition und dann unseren Ausbruch. Also habe ich gerade gesagt, einzelne Auto für automatische Verbreitung für die Schrotflinte in den Rest von ihnen nur sagen, einzelne, diese Zahlen ändern sich. Also, wenn Sie diese Zahlen verschieben möchten oder irgendeine Art von Änderungen am visuellen Stil davon vornehmen möchten. Fühlen Sie sich frei, um in den Widgets herum und tun Sie das, aber die Funktionalität davon ist immer noch da. Das ist die Hauptsache, die ich zeigen wollte, wie es geht. Also ja, das ist alles eingerichtet. Also danke für das Ansehen und wir sehen uns im nächsten Video. 16. Sprinting: Hey alle und willkommen zurück zu einem anderen Video. Heute werden wir mit der Arbeit in unserem HUD fortfahren. Im letzten haben wir verschiedene Munitionszahlen hinzugefügt. Und während das alles funktioniert, ist eine Sache, die nicht funktioniert, die Ausdauer Bar. Also zuerst müssen wir tatsächlich eine Sprint-Funktionalität hinzufügen, bevor wir das tatsächlich verknüpfen können. Das werden wir jetzt tun. Also, um zu beginnen, öffnen wir unseren Charakter und wir gehen in unser Bewegungsdiagramm. Das ist es, was wir das setzen werden. Also haben wir unser Walking Springen jetzt werden wir unser Sprinting hinzufügen. Eigentlich, bevor wir etwas tun, müssen wir das zu unseren Eingaben hinzufügen. Gehen wir also in unsere Einstellungen, Projekteinstellungen, und dann Eingaben unter der Engine. Und lassen Sie uns ein neues Action-Mapping erstellen und diesen Sprint aufrufen. Und lassen Sie uns das auf unsere linke Umschalttaste setzen. Wenn wir also jetzt in unseren Bewegungsdiagramm gehen, können wir auf Sprint so zurückgreifen. Und wir können anfangen, einige Dinge zu tun. Zuerst wollen wir ein paar Zweige herausziehen, weil es bestimmte Dinge gibt, die wir, nun, wir wollen nicht in der Lage sein, zu sprinten, wenn wir einige dieser Dinge tun. Also lassen Sie uns Handlung zielen und sagen, ist nicht zielen, weil ich einfach gerne in den wahren Zweig laufen viel. Wenn wir also nicht zielen, dann machen wir noch einen Scheck. Und wir werden sagen, Nun sind wir neu laden. Dieser Teil ist optional. Einige Spiele ermöglichen es Ihnen, beim Sprinten neu zu laden. Diejenigen, die wir machen, werden es nicht tun. Also werde ich nur optionale Deaktivierungen setzen und beim Nachladen gut sprinten. Wenn Sie also möchten, dass Ihr Spiel in der Lage sein soll, wenn Sie gleichzeitig Sprint und neu geladen werden möchten, können Sie diesen Teil entfernen. Es liegt an dir. Einige Spiele haben ein, wie Sie den Sprint unterbrechen oder die Eisenbahn unterbrechen können, indem Sie alles, was bis zu Ihnen ist. Aber wir wollen definitiv nicht in der Lage sein , Sprint Hall wir zielen darauf ab, dass lächerlich aussehen würde. Wir werden hier noch einen Zweig rausziehen. Und wir werden das tatsächlich in einem Makro speichern. Makro unterscheidet sich von der Funktion ein wenig darin, dass es diese Ausführungsdrähte nicht hat. Sie können also Ein- und Ausgänge haben, aber es muss keinen weißen Ausführungsdraht haben. Es kann diese Art von Daten ausgeben. Also werden wir das in eine stecken, wir werden eine Bedingung zurückgeben, einen Boolean. Also lassen Sie uns ein Makro erstellen und nennen wir dies sind, wir erschöpft Fragezeichen. Also, wenn es um unser Spiel geht, haben wir die Ausdauer Bar. Und wenn der Ausdauerbalken ausläuft, wir nicht in der Lage sein, zu sprinten, bis er auf einen bestimmten Wert neu geladen wird. Also lassen Sie uns einige weitere Variablen erstellen und wir werden sagen, ist erschöpft. Fragezeichen. Und lassen Sie uns eine andere Variable erstellen und dieses Energieniveau nennen. Und wir werden das vom Typ Float machen. Also lassen Sie uns voran und lassen Sie uns greifen ist erschöpft in sagen, nicht nur macht es kohärenter für mich, persönliche Präferenz. Und lasst uns unser Energieniveau schnappen. Und sagen wir, wenn das größer oder gleich ist, zeigen Sie auf, was wir tun können, ist, dass Sie dies herausziehen und sagen, und entfernen Sie diese. Und dann ziehen wir die, stecken Sie dies auf den Ausgang und kippen Sie das. Und wir können einfach den Namen Rückgabewert behalten. Also, was dieses Makro tut, ist, dass es überprüft, ob beide Bedingungen erfüllt sind. Beide können Sie das eine oder andere tun, indem Sie herausziehen oder, aber in diesem Fall wollen wir, dass beide wahr sind. Also, um zu sprinten, was das im Wesentlichen sagt, ist, dass wir nicht erschöpft sein können, wird die erschöpfte Variable auf, wenn Energieniveau gleich 0 ist. Und der Grund, warum ich darauf hinweise, ist, weil ich will, dass die Ausdauerleiste 20% des Weges nach oben auffüllt, bevor wir wieder sprinten können. Denn dann, was passieren wird , ist , dass der Ausdauerbalken um 1% steigen wird und es in der Lage sein wird, wieder zu sprinten. Und Sie werden nur in der Lage sein, nur für etwa 0,5 Sekunden zu sprinten , bevor es wieder ausläuft. Also möchte ich, dass ich es Zeit geben möchte, dass das etwas nachgefüllt wird, bevor wir wieder anfangen können zu sprinten. Gehen wir zurück zu unserer Bewegung und wir können dieses Makro tatsächlich herausziehen und es so machen. Der Grund, warum wir das in ein Makro erstellt haben, also technisch gesehen, hätten wir es einfach so machen können. Es bedeutet genau das Gleiche. Aber indem Sie diese Daten in einem Makro speichern. Zum einen ist es viel sauberer, es so zu sehen, im Gegensatz zu diesem Weg. In Nummer zwei können wir das jetzt eine Reihe von verschiedenen Zeiten herausziehen und es ein paar verschiedene Zeiten verwenden. Während dies wir dieses lange Skript jedes Mal kopieren müssten. Also, das ist wahrscheinlich ein ziemlich großer Tipp. Ich erinnere mich, als ich das erste Mal lernte, wie man das wurde ich wirklich aufgeholt, wie okay, wie ich eine Funktion verwenden muss, hier sind blaue Farbe, eine Blueprint-Schnittstelle oder Event Dispatcher sind wie all diese verschiedenen Dinge. Und ich muss das in ein Makro setzen. Viele dieser Dinge existieren nur aus Bequemlichkeit. So wie das Speichern in einem Makro, wie gesagt, spart es Platz und es ermöglicht Ihnen, es mehr als einmal zu verwenden , ohne zu versuchen, es zu finden und dieses, dieses lange Stück Code einfügen zu müssen. Aber das Einstecken hier und das bei der Verwendung des Makros tut genau das Gleiche. So viel davon kommt nur auf persönliche Vorlieben an. In, wenn Sie mehr Erfahrung in der Skripterstellung zu bekommen, versuchen Sie, Dinge zu tun, die effizienter sind. Also bin ich sicher, auch hier drin, als könntest du dasselbe erreichen. Ich versuche, mehrere verschiedene Wege zu erreichen, und Sie könnten einen Weg finden, der technisch effizienter ist als mein Weg. Und das ist okay. Aber das ist ein Weg, den ich weiß, wie es geht und es funktioniert. Das werden wir also tun. Ok? Also, wenn all diese Bedingungen wahr sind, in Ordnung. Wir waren nicht erschöpft, wir werden nicht nachladen und wir zielen nicht, dann können wir anfangen zu sprinten. Und noch einmal machen wir das innerhalb einer Funktion. Nicht, weil es super kompliziert ist, sondern weil wir es dann jedes Mal aufrufen können. In Ordnung, also beim Start Sprint wollen wir eine Sache überprüfen. Holen wir uns die Charakterbewegungskomponenten und wir werden sagen, dass fällt. Und noch einmal sagen wir nicht, denn ich mag es so. Ich mag es nicht standardmäßig aus dem falschen Zweig zu gehen. Wie aus der Wahrheit zu gehen, weil es die Linien schön und gerade hält. Wenn wir also nicht fallen, wenn wir in der Luft sind, will ich nicht in der Lage sein, zu sprinten, wenn wir in der Luft sind. Das wäre sehr unrealistisch. Okay, dann wollen wir uns die Charakterbewegungskomponente nochmal schnappen. Und lasst uns kommen, lasst uns die maximale Gehgeschwindigkeit einstellen, diesen Wert hier drin. Und lassen Sie uns dies zu einer Variablen fördern und wir nennen diese Sprintgeschwindigkeit. Und standardmäßig mache ich das hundert, hundert , zehnhundert. Unsere standardmäßige maximale Gehgeschwindigkeit ist 750 in ich setze es auf 10000 ein. Und dann haben wir das, oder vielleicht nicht. Okay, lassen Sie uns eine neue Variable erstellen und sagen, ist Sprint, dass wir das schon so gemacht haben, wie wir es nicht getan haben. Und es ist ein Boolean. Und wir werden das so einstellen. Kompilieren und speichern, und es ist alles, was wir tun müssen. Also noch einmal, lassen Sie mich das noch einmal wiederholen. Ich kann das tun und wir können es so aussehen lassen. Ok? Oder ich kann einfach anfangen Sprint. Und es wird so aussehen. So können wir es jedes Mal so machen oder wir können diese Daten in einer Funktion speichern und es einfach so machen. Also müssen wir diesen großen, hässlichen Code nicht jedes Mal bekommen, wenn wir viel Platz haben, der spart. Und dann müssen wir das nicht jedes Mal kopieren , wenn wir die Funktion aufrufen können. Das ist also ein großer Tipp. Ok? Lassen Sie sich nicht wie immer ein Ereignis verwenden, ist Batterien machen eine Funktion in Lego und versuchen, all dies zu verstehen. Es ist, es ist für die Bequemlichkeit Faktor. Okay, hoffentlich ergibt das Sinn. Cool. Also, jetzt sprinten wir. Was wir jetzt tun wollen, ist, dass wir unsere Ladung rausbekommen wollen. Weil du willst, dass zwei verschiedene Dinge passiert sind, je nachdem , ob wir eine Waffe haben oder nicht. Also lasst uns ein- oder ausladen. Weil wir diesen Sprint noch aufteilen wollen. Wenn wir keine Waffe haben. Ok? Wenn wir keine Waffe haben, werden wir eine Zeitlinie rausziehen und diese Ausdauer nennen. Ok? Wenn wir eine Waffe haben, wollen wir aufhören, unsere Waffe zu schießen. Denn wenn du rennst, weißt du was? Ich werde diesen Teil vorerst hier draußen lassen. Und dann zeige ich dir, wie es ohne es aussieht. Ich denke, das wird ziemlich cool sein. Also haben wir diese Ausdauer-Sache, wir werden das für später speichern. Ordnung. Kann eine Notiz oder so etwas machen. Ich weiß nicht, was wir herausfinden werden. Okay, in der Ausdauerleiste, lass uns das aufmachen und das 10 Sekunden lang machen. Es ist in der Lage, 10 Sekunden zu laufen und einen Float Track zu erstellen. Und wir nennen diese Ausdauermenge oder so etwas. Okay, lassen Sie uns weiter gehen und zwei Keyframes erstellen. Zuerst wird zur Zeit 0 und der Wert eins sein. Und der zweite wird zu einer Zeit von 10 den ganzen Weg in einem Wert von 0 sein. Wenn wir also auf diese kleinen Dinge klicken, können Sie tatsächlich sehen, dass sich von diesem Wert zu diesem Wert bewegt. Es bewegt sich also von 100% auf 0% von sich selbst im Laufe von 10 Sekunden. Wir wollen, dass dies in diesem Spiel von Anfang an gespielt wird, denn wenn wir von Anfang an gespielt werden, würde es jedes Mal neu starten. Und wir wollen, dass dieser Wert sich nach oben und unten bewegt. Wie ständig. Wenn wir hier schreiben, sprinten wir ein bisschen, es geht runter, dann hören wir auf und dann kommt es wieder hoch. Und dann erreichten wir das Ende. Es wird das tun und es wird ein bisschen wieder nach oben kommen und wieder runter gehen. Wenn wir von Anfang an jedes Mal spielen, wenn wir Shift drücken, würde es hier wieder anfangen und uns neue zehn Sekunden geben, was nicht das ist, was wir passieren wollen. So cool Kuckuck, Kuckuck. Also haben wir unsere Zeitachse. Aus dem Update. Legen wir unser Energieniveau fest, diese Variable, die wir geschaffen haben. Setzen wir das auf den Standardbetrag. Also, jetzt sind diese direkt korreliert ziehen hier raus. Und sagen wir gleich, wenn unser Energieniveau gleich 0 ist, AKA, wenn wir viel ausgehen, wenn, und dann wird dies aus dem fertigen kommen. Lasst uns das ein bisschen so neu schreiben. Okay, also jetzt, wenn unsere, wenn wir ausgehen, werden wir ein Ereignis namens erschöpft ausführen. Also, jetzt auf der anderen Seite Ihrer Timelines haben eine ganze Reihe von coolen Dingen. Wir werden zwei benutzerdefinierte Ereignisse erstellen. Wir werden eine Bewegung gestoppt und andere benutzerdefinierte Ereignis nennen und dies erschöpft nennen. Also, wenn unser Energieniveau gleich 0 ist, werden wir dieses Ereignis erschöpft ausführen. Cool. Lassen Sie uns die Bewegung zuerst gestoppt. Wenn die Bewegung zuerst gestoppt wird, fragen wir, ob wir erschöpft sind oder erschöpft sind. Die Leute wollen zwei verschiedene Dinge tun, je nachdem, ob wir erschöpft sind oder nicht. In Ordnung? Wenn wir es tun, wenn wir nicht erschöpft sind, tut mir leid. Und plotten Sie eine Sequenz. Und was wir tun wollen, ist, dass wir 0 wollen, wir müssen das tatsächlich schaffen. Also haben wir einen Startsprint erstellt. Wir müssen auch einen Stop-Sprint schaffen. Also lasst uns das machen. Nein, erstelle eine Funktion, nenne sie Stop Sprint. Und das wird ein ziemlich einfaches sein. Holen wir uns einfach die Charakterbewegungskomponenten. Lasst uns Max setzen, Gehgeschwindigkeit. Und lasst uns einfach, lassen Sie uns dies tatsächlich zu einer Variablen fördern, so dass wir es können . Wenn Sie es also in etwas anderes ändern möchten, können Sie das sehr einfach tun. maximale Gehgeschwindigkeit beträgt also 750. Also der Standard war 600, aber wir sagten, ist 750. Und so wird es immer wieder auf 750 zurücksetzen. Auf diese Weise müssen Sie nicht in die Funktion gehen, wie es im Handbuch erneut eingeben. Sie können einfach die Variable ändern und sie wird jedes einzelne Mal dynamisch für Sie festgelegt. Also, was macht Variablen schön? Und wir wollen das abschalten, und es ist alles, was wir für Stop-Sprint tun wollen. Gehen wir zurück. Also jetzt, wenn wir nicht erschöpft sind, lasst uns weitermachen und Sprint stoppen. Alles klar, und dann wird das in Stopp stecken. Es wird die Timeline in ihren Spuren stoppen, wo sie ist. Es wird sagen, halten Sie Ihre Pferde da drüben. Dann wollen wir eine Verzögerung haben. Ok? Und wir wollen, dass das pausiert wird. Also lassen Sie uns dies zu einer Variablen fördern und wir sagen Ausdauerregion. Pause und wir setzen das auf zwei Sekunden. Okay, also welche Bewegungen aufgehört haben, machen hier? Es wird überprüfen, sind wir erschöpft? Wenn wir nicht erschöpft sind, aka wenn diese Zahl noch über 0 ist, AKA, wenn wir noch irgendwo hier drin sind und wir nicht hier sind, dann was passieren wird, ist, dass wir unseren Sprint stoppen. Wir werden unsere maximale Gehgeschwindigkeit wieder normal einstellen. Dann warten wir zwei Sekunden. Und dann geht das Ding in umgekehrter Richtung. Also sagen wir, wir sprinten, wir sprinten, wir sprinten, wir sprinten, wir sprinten oder Stiel geht runter, dann hören wir auf zu drehen. Es wird hier aufhören. Warte zwei Sekunden. Und dann wird es es in umgekehrter Richtung werfen und wieder nach oben gehen und uns eine Aussage zurückgeben. Das ist, was Bewegungen gestoppt machen. Nun, wenn wir erschöpft sind, Ordnung, dann werden wir es erschöpft, um wahr zu sein. Also, jetzt hat das nichts auszulaufen. Es wird das nicht laufen, es wird das laufen. Was wir tun wollen, ist, dass wir den Sprint stoppen wollen. Wir wollen unsere Bewegung wieder normal machen. Und dann wollen wir eine Verzögerung machen. Und wir werden einen anderen Timer haben, je nachdem, ob wir erschöpft sind. Es verspricht also eine sehr variable. Wir sagen erschöpfter Timer. Und sind erschöpft Timer. Wir huffen und puffen statt zwei Sekunden Warten wir fünf Sekunden. Und dann werden wir uns umdrehen ist erschöpft. Zurück. Wir haben gewartet, sind fünf Sekunden, wir haben unseren Atem. Ok? Und dann werden wir vom Ende umkehren. Also statt nur umgekehrt, so kann dies an jedem Punkt umgekehrt werden. Dieses Ereignis wird nur hier ausgeführt, wenn dies gleich 0 ist. Also wollen wir, dass dies sicherstellt, dass es vom Ende umgekehrt wird, was genau hier ist. Wert, unsere Ausdauer ist bei 0. Bada, Bing, Bada, Boom, so machen wir es. Das ist alles. Das ist wunderschön. Das einzige andere, was wir tun müssen, ist , dass wir unsere Waffe nicht schießen können, wenn wir sprinten. Denn sonst ein wenig abschießen nach links. Und es wird wirklich, wirklich dumm aussehen. Aber vorerst möchte ich das irgendwie zeigen, weil ich denke, es würde lustig aussehen. Und es macht Spaß, Show Bugs zu mögen und zu zeigen, wie man so spezifisch mit Computern sein muss . Denken Sie einfach an alles, damit die Dinge nicht lächerlich werden. Das letzte, was wir tun wollen, ist, dass wir nur in unseren UI-Ordner gehen wollen. Und lasst uns in unsere Waffeninfo gehen. Und lassen Sie uns auf unserer Ausdauer Bar wählen. Also wollen wir, wir wollen das tatsächlich korrelieren. Und gehen wir zum Prozentsatz hier. Und lassen Sie uns eine Bindung erstellen. Und sagen wir, bekommt Ausdauer ist ein gut genug Name. Und alles, was wir tun wollen und wirklich einfach sein, den Spieler zu bekommen. Holen wir uns unser Energieniveau und nutzen das in Bada Bing, Bada, Boom. Herr weltweit trat in den Raum. Da gehen wir. Das war alles, was wir tun mussten. Ok. Also lasst uns hier rüber gehen, damit das funktioniert. Oh, Gott. Oh, weißt du, ich bin mir selbst voraus. Ich habe eine Sache vergessen. Geht voran und tut das jetzt. Also das ist, was passiert, wenn ich versuche, absichtlich aus dem Spiel am Ende zu rechnen, dass ich das ist, was gerade jetzt passiert ist, da wir nur die Ausdauer Bar sehen können, wenn wir eine Waffe haben und wir nichts haben, was passiert, wenn wir eine Waffe. Also vorerst, stellen Sie sicher, dass beide ins Spiel gehen und stellen Sie dann sicher, dass die Energieniveau auf eins eingestellt ist. Ich glaube nie, dass ich das nie gesagt habe. Das bewegt sich in Prozentsätzen. Ok. Also setze es nicht auf eine 100 oder was auch immer, setze es auf eins. Also, was passiert jetzt? Wir gehen rüber zu einer Waffe und holen sie ab. Und ich habe Druckstrings, um die Geschwindigkeit zu zeigen. So sehen Sie wie eine 1000. Und unser Ding geht so runter. Sieht ziemlich toll aus. Aber wenn Sie bemerken, wir nehmen unsere Hände ab und wir drücken erneut Shift, es gibt keine Möglichkeit, davon abzuhalten, erschöpft zu sein, aber Sie haben dort oben eine Reihe von 750 gesehen. Also, was ich tun will, ist, dass wir loslassen und Bewegungen dort gestoppt werden können. Aber ich möchte in professioneller Suche cool sein, weil viele Spiele haben es , wo Sie nicht zu halten Verschiebung die ganze Zeit. Sie können einfach darauf tippen und das ist persönlich, was ich bevorzuge. Das ist es, was wir tun werden. Wir werden nur einen Tipp-Sprint-Button haben. Und wenn Sie die Finger von den Tasten heben, hören Sie auf, sich zu drehen. Aber in erster Linie, gehen wir voran und kommentieren Feld dies und sagen Sprint mit drei Jan oder 18. Ausdauer, Bar, so. Okay, so wie das. Fühlen Sie sich frei, irgendwelche Änderungen wie mit diesem Teil oder was auch immer. Wenn du, wenn du willst, den Sprint gedrückt halten und ihn dann loslassen musst, wie ich schon sagte, kannst du das tun und die Disco-Bewegung hat gestoppt. Und dann wird das funktionieren, wenn Sie den Schlüssel loslassen. Aber das gefällt mir nicht. Ich mag es nicht, den Schlüssel die ganze Zeit zu halten. Ich mag es, es zu klopfen und dann loszulassen. Und dann lassen sie von w los, wie viele Spiele funktionieren, umschalten Sprint. Also lasst uns das jetzt machen. So können Sie ein Ereignis-Tick ausführen. Okay, und was wir tun werden, ist, dass wir dafür ein Makro machen werden. Und wenn dieses Makro wahr ist, dann werden wir Bewegung gestoppt ausführen. Was bedeutet dieses schicke Schmancy-Makro, das Sie sagen? Nun, ich zeig's dir. Also lasst uns weitermachen und das schaffen. Und wir werden sagen, haben wir aufgehört zu bewegen? So wie das. Was wir hier tun wollen, ist, dass wir unseren Spieler-Controller bekommen wollen. Und dann wollen wir überprüfen, ist Eingänge Taste nach unten. Und der Schlüssel, nach dem wir suchen, ist w. Wenn w nicht nach unten gedrückt wird und wir noch sprinten, dann wird das so zurückkehren. Wir müssen also sprinten, was durch Drücken von Shift initiiert wird. Das ist also einer unserer Parameter. Und dann, damit dies wahr ist, müssen wir auch die W-Taste nicht unten haben. Okay, also lasst uns das eingehen. Haben wir aufgehört, uns zu bewegen? Es will es nicht für den Fuß hineinlassen, den wir dort gehen. Da ist es so. Und dann werden wir kommentieren Box, nur dieser eine kleine Teil. Und wir werden einfach darauf kommen und sagen, verbunden mit Timeline. Also die Bewegung stoppt. Wir prüfen dann, ob wir erschöpft sind oder mehrere, Stop the Spread. Das wird alles für uns tun. Ich komme zurück. Also werden wir sagen überprüft, ob W-Taste während des Sprints freigegeben wird. Also, wenn wir sprinten, aber wir lassen w los, was natürlich passiert. Wir hören auf zu sprinten. Also gehen wir weiter und machen das jetzt. Unser Schlüssel und jetzt sprinten wir drehten sich und mein, mein Pinky ist jetzt nicht auf Schicht. Ich habe w losgelassen und es hört auf. Und dann geht es wieder hoch. Und dann sprinte ich wieder, trage die gezeigte Schicht. Es ist ein Kippschalter. Los geht's. So wie das. Und wenn ich es weiter mache und es dann ausläuft, wird es so erschöpft laufen und 750 und ich treffe es wieder. Es sprint nicht. Nicht sprinten. Es sprint nicht. Es wird zu 20 Prozent und dann lässt es mich wieder tun. Also ging es ein wenig weiter, bevor ich es wieder tun konnte. So funktioniert alles großartig. Alle Funktionen sind korrekt in, direkt. Also hier ist unser Skript dafür. Und dann ist unser Skript für diese Lektion, die wir hinzufügen eine zusätzliche Sache genau hier später. Aber ja, das ist alles. Also im nächsten Video, werden wir tatsächlich eine Animation hinzufügen, um es aussehen zu lassen wie unsere Charaktere sprinten. Und dann haben wir das alles richtig eingerichtet. Also sehe ich dich dort. 17. Sprinting hinzufügen: Hey alle und willkommen zurück. Im letzten Video haben wir einige Funktionen hinzugefügt, damit unser Charakter auf der Karte sprint. Aber wir haben es so umgesetzt, dass er nur für eine bestimmte Zeit sprinten kann , bevor er erschöpft wird und sich dann wieder verlangsamt. Und dann verbinden wir das mit unserer Ausdauer Bar. Wir haben hier ein paar verschiedene Parameter. Wir haben es wie eine Art Sprint gemacht wo wir einfach auf die Taste tippen und dann, wenn wir loslassen, hören wir auf zu laufen. Unser Charakter wird aufhören zu sprinten. Diese Art von Kleinigkeiten liegt an dir. Und wir haben es auch so implementiert, wo Sie nicht können Sie nicht sprinten, wenn Sie gerade neu laden, was wieder, persönliche Vorlieben, aber das ist, wie wir es gebaut. Fühlen Sie sich frei, wie Sie mehr Vertrauen in Ihre Skript-Fähigkeiten bekommen, um es jedoch, Sie möchten, dass er fit zu Ihren persönlichen Vorlieben. Also, was wir in diesem Video machen werden, wird dieses ziemlich kurz sein. Alles, was wir tun werden, ist, dass wir unsere verknüpfen, ist Boolean zu sprinten, was genau hier richtig ist ich diese Drucksaiten loswerde, die tatsächlich richtig gesetzt sind, genau hier und wir beginnen Sprint. Und dann, wenn wir den Sprint aufhalten, ist es falsch. Wir werden das mit unserem Anim-Diagramm verknüpfen, damit wir eine laufende Animation machen können . Das wird also ziemlich cool. Es geht also genau hier an und hält dann gleich hier an. Gehen wir also weiter und machen das jetzt. Alles, was wir tun müssen, ist in unseren Charakter zu gehen. Lasst uns Spieler machen und ich bin Blaupause. Gehen wir zu unserem Veranstaltungsdiagramm. Und dann außerhalb dieses, dann eins mit unseren anderen Spielerreferenzen, ziehen wir in Spieler und wir gehen Gets ist Sprint. Und lassen Sie uns dies zu einer Variablen fördern und wir halten es den gleichen Namen Sprint. Um es für uns kohärent zu machen. Du kennst den Bohrer mittlerweile, wir werden für Sprint-Animation variabel sein. Also wissen wir, was all diese Dinge tun. Ein asynchrone Kommentarfeld Teil voneinander. Das sieht schön aus. Gehen wir nun zurück in unsere Spielerbewegung. Also gehen Sie zum Anim-Diagramm hier drüben, finden Sie unsere Spieler-Bewegungszustandsmaschine und wir werden einen neuen Zustand hinzufügen. Ich werde die Wechselwaffe wie hier rüber ziehen, denn dieser neue Zustand wird sich mit beiden verbinden. Wir wollen Übergänge für beide schaffen, weil wir sprinten können, wenn wir eine Waffe wechseln, während wir Waffen wechseln, ist das in Ordnung. Okay, also möchten wir Knoten hinzufügen, die dort und zurück für beide gehen. Also sind sie zurück und sie werden die gleichen genauen Regeln haben. Wenn wir also untätig sind und wir zum Sprinten übergehen wollen, lassen Sie uns einfach überprüfen, ob wir sprinten? Wenn wir sprinten, werden wir diese Animation ausführen. Wenn wir nicht sprinten, dann wollen wir zurück zu unserer Idle Run Animation. Dasselbe gilt für hier, also weiter, eine Waffe zu wechseln. Und wir fangen an zu sprinten. Du wirst nur sagen, Nun, sprinten wir? Und dann, wenn du auf den Rückweg gehen willst, sprinten. Nicht sprinten. So einfach wie das. Das letzte, was wir tun müssen, ist nur sicherzustellen, dass es tatsächlich Animation für hier ist und wir kein Ein-Zeichen-Skelett haben. Also lasst uns zu einem Shooter-Spiel gehen. Animationen, FTP, und es heißt Roadie laufen. Es ist der einzige Gewehrroadie, der hier läuft. Sinus auf das neue Skelett Spieler Skelett für diese nach oben zu öffnen, wird dies auch gebrochene Sounds haben. Also, wenn du dich daran erinnerst, wie man das aus früheren Videos , sollten wir wahrscheinlich das hier drin laufen lassen. Nun, da gehst du. Und wir können das etwas lauter machen, wie etwa 1,5. Die Schritte sind etwas lauter zum Laufen. So sicher. Jetzt hört es sich so an. Ziemlich cool. Also, jetzt sollten wir sehen, dass der Iran hier geschrieben hat, stecken Sie das so ein, kompilieren und das sollte alles sein. Normalerweise habe ich das Gefühl, etwas zu vergessen, aber ich denke, das ist alles. Also holen wir die Waffe. Und jetzt hatte dasselbe Sprint. Und da gehen wir. Jetzt rennen wir. Und dann lassen wir los. W o, SMS, komisch da los. Wenn wir aufhören zu sprinten, was zum Teufel los ist. Okay. Also habe ich das Problem herausgefunden, anstatt seinen Sprint, und dieser, den wir benutzen werden, ist das Umschalten der Waffe. Alles klar, also auf dem Weg hierher ist der Wechsel der Waffe auf Sprint. Wir werden sagen, es ist nicht die Waffe zu wechseln. Wir können vom Wechsel der Waffe zum Sprinten übergehen, wenn wir keine Waffe wechseln. Und wir können von der Sprint-Animation zu dieser wechselnden Waffe Animation übergehen. Wenn wir eine Waffe wechseln. Also, jetzt sollte das funktionieren. Da gehen wir. Das einzige andere, was wir haben, ist Sprunganimationen. So läuft es durch die Luft. Also ist dieses Video nicht zu lang. Lassen Sie uns einfach voran und fügen Sie die Sprunganimationen jetzt hinzu, damit wir nicht dämlich aussehen. Also lassen Sie uns ein paar neue Zustände in einem Staat erstellen und wir nennen diesen Sprung, beginnen. Ein weiterer Zustand, Sprungschleife und dann eine letzte. Spring und geh. Und diese, im Gegensatz zu den anderen, dass sie sich nicht bewegen, oh meine Güte. Aber vorbei. Sie bewegen sich nicht von vorwärts und zurück. Diese bewegen sich wie ein kleines Dreieck. Ich weiß nicht, ob wir es geschafft haben, ist in Luft. Haben wir nicht. Okay. Das ist eine Variable, die wir definitiv brauchen. Ja, okay, also in unserem Stadtdiagramm, gehen wir voran und versuchen „Bauherr holen“. Und dann lassen Sie uns unsere Bewegungskomponenten des Teiches holen, unser Spieler sein wird. Und wir werden sagen, fällt. Und dann, was das zu einer Variablen im College fördert, ist in der Luft. Und traf dort den falschen Schlüssel. Geh. So etwas. Ich landete Kontrollen, Springen Animation. Bada Bing, Bada, Boom. Geh. Gehalt davon. Ja, es wird uns für eine Sekunde hassen, aber seien Sie versichert, was wir finden. Also lasst uns das tun, wenn wir in der Luft sind. So werden wir vom Lauf zum Sprungstart übergehen, zum Übergang von der, wir haben diese Innovationen in keiner Weise zu schlitzen. Ja, das tun wir. Okay, also machen wir das zuerst, weil es verwirrt wird, wenn wir es nicht tun. Also lassen Sie uns einfach einen Sprung in den gleichen Ordner eingeben und wir haben JumpStart. Wir wollen das Gewehr ein Jump, Start Schleife und Ende, wie zessionnees zu unserem Spieler Skelett. Das und dann können wir in unsere Klänge einschlitzen. Sie haben tatsächlich springende Geräusche. Aber du, weißt du, du solltest jetzt wissen, wie man das macht. Also vertraue ich dir. Da sind deine Hausaufgaben für den Tag. Wenn du das machen willst. Jump Blues Spieler Skelett retarget dort. Und dann Gewehr einen Sprung N? Ja. Ja, ja, retarget? Ja. Okay. Also lassen Sie uns diese einstecken. Jumpstart. Ich gehe mit Jump Start. Loop wird mit Sprung gehen, Schleife und springen und wir werden mit gehen, Sie haben es erraten, Sprungende. Okay. Jetzt müssen Übergänge zwischen diesen machen. Also, was wir gehen, um seine Zeit zu suchen, verbleibende Zeit in unserer Jump Start Animation. Und wir werden sagen, ist weniger als 0,1. Wenn also weniger als 0,1 Sekunden in dieser Sprungstart-Animation übrig sind, werden wir zur Jump Loop-Animation bewegen. Okay? Und dann, um zu springen, und wir werden sagen, sind wir nicht in der Luft? Also werden wir die Sprungschleife haben, Innovation, weiter schleifen, bis wir nicht mehr in der Luft sind. Und dann werden wir in der Lage sein, vom Sprung zurück in den Leerlauf zu wechseln. Wenn es, sagen wir, weniger als 0,25 in unserer Jump Animation gibt. Und dann wollen wir auch vom Sprinten springen können. Und dann wird das den gleichen Parameter haben, nur wie, Nun, sind wir in der IR-Datei und speichern? Und jetzt passieren wir im Spiel. Und wir sind fertig. Und da ist etwas Seltsames los. Aber vorerst, lassen Sie uns einfach sprinten. Es funktioniert. Und dann springen wir. Er springt und sprint auch nach dem Sprung noch. Und wenn ich loslasse, lachte er einfach. Also alles, was perfekt funktioniert, funktioniert gut. Ich könnte versuchen herauszufinden, ob etwas Seltsames mit der Ausrüstung der Waffe los ist. Und wenn es so ist, werde ich mich bei Ihnen melden. Manchmal gibt es Fehler in meinem Programm, die möglicherweise nicht in Ihrem bestehen bleiben, aber ich werde meine beheben, nur für den Fall, dass ich Ihnen etwas gesagt habe, das ein wenig fehlerhaft ist, aber ja, danke für das Ansehen. Und ich werde dich in der nächsten Lektion sehen. 18. Ammo Pick machen: Hallo an alle und willkommen zu einem anderen Video. Im letzten Video fingen wir an, die meisten Animationen zu beenden , die wir für die Bewegung unseres Charakters benötigen werden. Und in diesem werden wir weitermachen, indem wir noch ein paar Pickups hinzufügen. Dieses Mal werden wir einige Funktionen hinzufügen, um zusätzliche Munition aufnehmen zu können. Also werden wir das tun, bevor wir uns darauf einlassen. Zumindest für mich im letzten Video, Ich habe ein Problem, wo, wenn ich eine Waffe, der Charakter tut diese seltsame jittering, wo es irgendwie bewegt die Waffe von rechts nach links umständlich, wenn Sie es nicht gesehen haben, ich werde es wieder tun. Ist das eine seltsame Art von Tritt da. Und es tut es jedes Mal, wenn Sie Waffen wechseln. Jetzt ging ich weiter und ich habe dieses Skript mit dem vorherigen Projekt verglichen. Und das vorherige Projekt war genau dasselbe wie dieses, zumindest nach meinem Wissen und ich bekam dieses Problem nicht. Wenn Sie dieses Problem haben, können Sie diesen Teil ignorieren. Wenn Sie dies jedoch tun, können Sie den Player-Animations-Blueprint und die Anim-Diagrammplayer-Bewegung und die Zustandsmaschine aufrufen. Und Sie können tatsächlich einfach diesen obersten Übergang vom Wechsel der Waffe zu Sprint entfernen. Was das tun wird, ist, dass, wenn Sie sprinten und dann eine Waffe wechseln, oder wenn Sie Waffen wechseln und Sie sich immer noch drehen, anstatt von hier nach hier zu reisen, es geht hier, dann im Leerlauf und dann zurück zum Sprint. Also, wenn ich jetzt im Spiel passierte und ich eine Waffe abnehme, wirst du das Problem nicht bekommen. Und du wirst immer noch in der Lage sein, Waffen zu wechseln und gleichzeitig zu laufen. Also wechseln Sie die Waffe und gehen Sie dann sofort zum Sprint zurück. Das funktioniert also alles gut. Möglicherweise war dieser Übergang überflüssig, weil er hier sowieso zum Ureter gehen wird. Also, ich denke, das ist die einzige Art von Problem, das es gab. Aber was wir tun werden, ist, dass wir ein paar Blaupausen erstellen , um Waffen oder Munition Pickups hinzuzufügen. Also unter interaktierbar, lassen Sie uns einen neuen Ordner erstellen und ihn Munition nennen. Und ich setze es auf unsere Farbe. Dann innerhalb der Tierordner, Lassen Sie uns eine Blaupause Klasse vom Typ Actor machen. Und nennen wir diese Munitionsbasis. Wie wird mit Pickups verwechselt? Ein oder zwei Worte. Es ist ein Wort, wenn man sich auf einen Truck bezieht, aber es ist auch, wenn man sagt, „Pick up to 240 Phonics, ihr alle, okay? Wir werden hier zwei verschiedene statische Netze hinzufügen. Also ein statisches Netz, das erste wird AML-Netz sein. Und wir können das auf unsere Szenenroute ziehen und diese zum Standard machen. Und dann unten hier machen wir ein weiteres statisches Netz. Und wir werden diesen einen Hit Inbox nennen. Diese Texturen sind also auch klein, diese Maschen oder auch klein. Also machen wir das Gleiche, was wir mit den Waffen gemacht haben, wenn da diese unsichtbare Kiste für unser Munitionsnetz ist . Dies wird ein Elternteil sein, also brauchen wir keinen Slot irgendetwas in. Aber ich werde dies sperren und es 2,5 mal so groß machen, weil diese sehr klein sind. Okay, dann für unsere versteckte Box, gehen wir weiter und Schlitz in nur der eine m Würfel wird ziemlich groß sein. Also lasst uns weitermachen und wir können es verschlossen halten und es zur Hälfte seiner Größe machen, 0,5. Und dann werden wir das so einstellen, dass es unsichtbar und im Spiel versteckt ist. All die Kollision, alles sollte, sollte zum größten Teil gut funktionieren, ich denke, das ist alles, was wir tun müssen. Gehen wir weiter und gehen tatsächlich zurück hierher und in unseren Datenordner. Und wir werden eine neue Aufzählung erstellen, die wir für diese Blueprints verwenden werden. Lassen Sie uns Blaupausen Enumeration gehen, dann gehen Sie E, und lassen Sie uns diesen Munitionstyp nennen. In Ordnung, und dann werden wir sechs Enumeratoren erstellen. Also 1, 2, 3, 4, 5, 6. Und wir nennen diese Pistolenmunition. Also werden wir jedem die Waffe und dann die Munition nennen. Also Auto-Gewehr, Tier, Schusswaffe. Denn so wie ich es erschaffe, wirst du nicht in der Lage sein, mit einer bestimmten Munition zu interagieren, es sei denn, du hast die aktuelle Waffe ausgerüstet. Deshalb erschaffen wir ein Scharfschützengewehr Anno. Also wollen wir den Weg geben, geben Sie das Spiel weg, um zu identifizieren, welche Munition. Das ist Granatwerfer oder was AML wir versuchen, synchron zu interagieren, mit welcher Waffe wir ausgestattet haben. Und schließlich, Raketen, starten Emaille. Ziel. Dann unsere MO Pickup Basis. Lassen Sie uns eine Variable erstellen, Variable und wir werden es Munitionstyp nennen. Und wir werden es vom Typ, Tiertyp so machen. Gut. Okay, jetzt im Ereignisdiagramm, lasst uns ein paar Sachen hier drinnen machen. Unter dem Anfangsspiel. Lassen Sie uns einen Verweis auf unseren Spieler erstellen. Lassen Sie uns auf den Spieler werfen und es zu einer Variablen, die Sie sehr gut auskennen sollten. Casting. Und hier Referenzen zu machen. Inzwischen sollte ein Profi sein. Tun Sie das. Und auch zu wissen, warum wir das tun. Okay, jetzt lassen Sie uns ein benutzerdefiniertes Ereignis erstellen. Und wir nennen diese Abholmunition. Das wird laufen, wenn wir versuchen, Munition abzuholen. Und was wir tun wollen, ist, dass ich ein Ereignis oder eine Funktion erstellen möchte, Entschuldigung, die überprüfen wird, ob unsere aktuelle Waffe gleich der Art der Munition ist, mit der wir interagieren. Der einfachste Weg, dies zu tun. Meiner Meinung nach, ohne alles zu kompliziert zu machen , werden wir das innerhalb der Waffenbasis tun. Also lasst uns zu Waffen gehen und zur Waffenbasis gehen. Das wird ein wenig haarig und wir müssen diese nach einem bestimmten Punkt organisieren. Ok? Lassen Sie uns also einige neue Variablen erstellen. Und wir rufen an, das werden alle ganze Zahlen sein und wir nennen sie Pistole. Nehmen Sie die Menge des Typs int. Und dass wir einen Haufen davon erschaffen wollen, einen für jede Waffe. So Auto ist, dass jetzt werde ich Gewehr Pickup Menge ist Art von hässlichen Namen Schuss Pistole sein. Und er kontrollierte WT ist, es schnell zu duplizieren. Scharfschütze, Gewehr, grauer Werfer und dann endlich Raketenwerfer. Heb sie auf. Nun, die werden für diese verantwortlich sein, sagen wir einfach, es ist jetzt in eine Kategorie gesetzt, Emma. Und ich werde all diese hier reinziehen. Ich mag es nicht, wie es so macht. Ich möchte sie in die richtige Reihenfolge bringen. Also Pistole und dann Autogewehre und Schrotflinten, Sniper. Okay, gut. Cool. Wir können also tun, ist, dass wir diese drei verschiedenen Zahlen festlegen können , wie viel Munition du abholen willst? Basierend darauf, wie wenn Sie ein Zentrum für die Pistole holen, sagen wir einfach 24 Kugeln für jetzt. Das Auto-Gewehr, 60, die Schrotflinte. Lass uns 16 machen. Ich versuche, mich daran zu erinnern, was ich gesagt habe. Trendy wie Magazine für jeden von ihnen, zu Raketen. Und Sie können diese nach Ihren Wünschen ändern. Alles klar, jetzt wollen wir eine Funktion erstellen. Wir nennen es Munition. Heben Sie auf. So wie das. Ordnung. Lass uns ja, lass uns eine Eingabe machen und seinen MO-Typ aufrufen. Und wir machen es vom Typ, AMO-Typ, so. Ziehen wir es hierher und schalten Sie es ein. Also, jetzt solltest du all unsere Stempelmunition sehen, das und das. Wenn dies also eines dieser Dinge sein soll, wird es eine dieser Hinrichtungen ausführen. Ok? Also alle diese werden gleich sein, was Larry leichte Variationen ist. Also aus Pistolenmunition, ziehen wir einen Zweig heraus. Und lassen Sie uns sagen, überspringen Sie den Waffentyp. Und wir werden sagen, gleich bisher aktuelle Waffe. Die Waffe, wenn unser Waffentyp, auch wie die aktuelle Waffe ist, die der Pistole entspricht, dann wollen wir hier die aktuelle Gesamtmunition ergreifen. Sieh dir das Set an. Wir wollen die Pistole Pickup Menge und die aktuelle Gesamtmunition nehmen. Und wir wollen diese zusammen hinzufügen und dann als die neue aktuelle Gesamtsumme AMA setzen. Also sagen wir, wir haben wie, Oh Gott, das ist eigentlich ziemlich viel Mathematik. Sagen wir einfach, um Mathe willen, wir haben 10 Kugeln in Reserve. 10 ist unsere aktuelle Gesamtmunition. Insgesamt Munition beträgt 360 in diesem Fall. Und wir hatten einen Satz auf 24, also 10 plus 24, das wird dann auf 34 gesetzt. Mathe ist Macht. Ok? Und dann lassen Sie uns eine zusätzliche Überprüfung machen, okay? Mit diesem ausgewählt und lassen Sie uns eine Ausgabe hinzufügen, und lassen Sie uns es zu einem booleschen Wert machen. Und dann werden wir das sagen, wahr, oder wir können es sagen, Erfolg, wenn Sie cool sein wollen. Richtig? So wie war das erfolgreich? Wenn es durch diesen Zweig geht, war es erfolgreich? Ja. Es wird wahr zurückkehren. Wenn es hier rauskommt, dann wird es Nein sagen, es wurde falsch zurückgegeben. Oh, Sheesh, wir sollten das ungehindert sein. Ok. Und dann werden wir sagen, fügt Pistole Munition. Wenn sie hier Munition hinzufügt. Wenn das immer noch Pistolenmunition aufnimmt. So wie das. Okay, wenn man es sieht, sieht man sich dieses Skript so an. Jetzt müssen wir alles, was wir von hier an tun müssen, ist, dass wir genau das gleiche tun müssen für Auto-Gewehrschock auf all unsere verschiedenen Waffen. Es wird genau so aussehen. Alles, was wir ändern müssen, ist R. Also für Auto-Gewehr wird es tun, um Auto gezogene Pickup Menge und für die Waffen Titel, die ein Gewehr hatte ändern . Also werde ich dir eine kleine Aufgabe geben. Ich werde das selbst machen. Ich werde Ihnen etwas Zeit geben, um den Rest dieser Funktion selbst auszufüllen. Also werde ich ein bisschen vorwärts schneiden, zurück zu dir. Also viel Spaß damit, und ich sehe dich in einer Sekunde mit den Antworten. Also, so sollte die endgültige Funktion aussehen. Also, wenn Munition Typ auf Pistole um diese auf einem Gewehr unten ein und so weiter gesetzt ist , so weiter. Also mussten wir, wie ich schon sagte, Pixel-Picker, männliche Menge, aktuelle Gesamtpistole oder Gewehr, Auto-Gewehr, Schusswaffe, Scharfschütze, Granate, Granate, Raketen, Raketen, und dann ja, all das wird laufen. Ich habe hier einen Tippfehler. Ok, cool. Also, jetzt müssen wir nur wieder in unsere Pickup-Basis gehen und den Spieler rausziehen und uns die aktuelle Waffe holen. Denken Sie daran, dass die aktuelle Waffe ein Verweis auf diese Waffenbasis hier ist. Da wir das haben, können wir jetzt Munition Pickups aufrufen, diese Funktion, die wir gerade erstellt haben. Und wir holen und rufen das an. Und es wird nach einem Munitionstyp fragen, richtig? Weil wir das reinlegen, hier reinlegen. Also fragt es nach einem. Wir setzen ständig das ist alles, aber wir haben diese Variable erstellt, erinnern Sie sich? Also lassen Sie uns das einstecken. Der Grund, warum ich es als Eingabe gesetzt hatte, ist, dass wir diese Variable einstecken können. Wenn wir also die Kinder dazu bringen, können wir dies dynamisch auf die untergeordneten Elemente festlegen, so dass sich dieser Wert immer ändert und dann die verschiedenen Teile ausführen, die aus dieser Aufzählung stammen. Und dann aus unserem Erfolg. Also sagen wir, wenn, also, wenn das wahr ist , was bedeutet, dass du eines dieser Erfolgssachen bekommst, dann wollen wir einen Ton zu D spielen. Lassen Sie uns dies zu einer Variablen fördern und wir werden diesen Pick aufrufen, abholen Geräusch. So können wir das auch in den Kindern dynamisch einstellen. Und dann zerstören wir den Schauspieler so. Und dann kommen wir einfach in Kisten, um zu sagen, fügt MO-Beträge in der Waffenbasis. Nur damit wir uns erinnern können, was das tut und wo es ist. Ich sitze so. Also, das ist alles funktioniert. Also gehen wir hin. Das ist alles, was wir jetzt in unserer Abholstation tun müssen. Alles, was wir tun müssen, ist die Kinder zu machen. Also MO und wir wählen eine Basis, Create Child Blueprint Klasse und wir werden diese Pistole Munition Pickups nennen. Und was tut dies weiterhin für alle von ihnen. Alles klar, wenn das richtig gemacht wird, Sie einfach mit der rechten Maustaste auf AML, wählen Sie einen grauen Kinder-Blueprint und dann benennen wir sie alle Gewehr, Granate, Pistole, Raketenschrotflinte und Scharfschützengewehr um. Also, jetzt müssen Sie tun, ist eine von ihnen öffnen, jeder von ihnen. Für unser Munitionsnetz. Schauen wir nach, Sturmgewehr abholen. Und wir bekommen diese Art von Zeitschriften hier wie diese für den Munitionstyp. Setzen wir das auf Auto-Gewehrmunition und den Tonabnehmer, wir sollten einen Pickup haben. Sehen Sie, es gibt diese Gewehr hier und wir werden so ein Stichwort abholen. Wenn Ihnen das Volumen nicht gefällt, gehen Sie einfach hier rein und ändern Sie die Lautstärkeregler, damit Sie es machen können, was Sie wollen oder was auch immer Sie wollen, Ihre persönlichen Vorlieben. Und dann wird es für alle gelten. Das ist alles, was du für einen von ihnen tun musst. Also ja, geh einfach weiter. Slot in. Ich glaube, ich höre mich gut an. Nehmen Sie so auf und wir geben Granatgeräusch ein. Granatwerfer bin ein Pickup. Sie möchten sicherstellen, dass Sie das QRS haben weil es dann wie mehrere verschiedene Sounds haben wird. Zumindest sollte es. So funktionieren in der Regel Warteschlangen. Also ja, geh einfach weiter und fülle den Rest aus und ich komme in einer Sekunde wieder bei dir. Okay, jetzt, da wir unsere richtigen Sounds und Netze eingelesen haben und diese Aufzählung als das Richtige festgelegt haben. Wir können sie per Drag & Drop hineinziehen, damit wir es ausdrücken können. Ich weiß nicht, warum das manchmal so ist. Es ist irgendwie seltsam. Einfach Ende drücken und es wird an seine richtige Stelle gehen, wenn es seltsam irgendwo anders ist. Ich setze die jetzt auch nicht an den richtigen Ort, aber oh, na ja, es ist okay. So wie das. Also jetzt sollten wir unsere verschiedenen Schluckauf haben, aber es gibt keine Möglichkeit, mit ihnen ab jetzt zu interagieren. Also lasst uns weitermachen und das reparieren. Also in unserem Charakter in der und sogar Graph, wo wir dies setzen, haben wir eine Aktion Mappings genannt. Ja. Also haben wir diese Zeile Spur und ich kann das tun, machen Sie dieses hartnäckige Tablett jetzt. So können Sie tatsächlich diese Zeile Trace sehen und drücken Sie die E-Taste. Du wirst sehen, dass es 200 Sets sind. Wie weit das geht, um tatsächlich mit einem dieser zu interagieren. Du wirst also dieses kleine Quadrat sehen und es ist rot und dann grün wird, um zu zeigen, dass ich tatsächlich etwas getroffen habe, tatsächlich mit etwas interagiere. Schnee trifft es, schaut geradeaus auf den Boden, du bekommst einen Schlag, aber er trifft den Boden. Es fügt uns nichts von Wert hinzu. Okay, also das ist irgendwie cool. Nun, wenn wir wie eine Menge Dinge daran gebunden haben, zu diesem interagieren. Wir würden wahrscheinlich eine Art und Event Dispatcher haben, den wir nur weiter anrufen würden. Aber wir haben nur zwei Dinge in diesem Projekt, mit denen wir interagieren müssen. Deshalb ist es einfach so gemacht. Also, was wir tun wollen, ist, dass wir unsere Last rausbekommen, lasst uns sie einschalten. Und das wird daraus herauskommen. Dann wollen wir nur mit Munition interagieren können, wenn wir eine Waffe haben. So wie kann man keine Munition ohne Waffen schnappen, so was. Und es ist, aber wenn wir eine Waffe haben, wollen wir sie zurückrufen. Munition, Abholbasis. Wieder einmal wird dies aus dem Hauptdarsteller kommen. So wie das ist, das ist ein okay Ort. Und dann als Pika-Basis wollen wir das Ereignis, das wir erstellt haben, ausführen. Das hier, heb Munition auf. wollen wir eigentlich laufen. Also nennen wir es Munition abholen und dann ist es so für uns. So können wir Box kommentieren, diese ganze Sache ganz ehrlich, weil dieses Skript jetzt fertig ist. Und wir werden setzen zeichnet eine Linie Spur zu überprüfen, ob versuchen, mit MO oder Waffe Pickups zu interagieren. Jemand wie der. Ja. Stellen Sie sicher, dass ich alles richtig buchstabiere , weil ich nicht wirklich sehen konnte, wo ich tippte. Okay, so sieht das Skript so aus, dass wir gerade das hinzugefügt haben, das , das, so ziemlich selbsterklärend da. Wenn wir hier rauskommen und ich versuche, mit irgendeinem dieser Sachen zu interagieren, wird nichts funktionieren. Obwohl wir grüne Treffer bekommen und wir keinen Fehler bekommen, läuft es einfach raus. Aber sagen wir, ich hole die Schrotflinte und diese drei Waffen. Also die Pistole. Oh Gott, wer ist welches? Das ist der Brief M0. Indem ich damit interagiere, tut es nichts, aber wenn ich damit interagiere, machte es die Mathematik, es verschwand. All das. Wenn ich auf das Auto-Gewehr umschalte, kann nicht mit diesem oder diesem, oder diesem oder diesem oder was auch immer interagieren . Aber ich kann nicht damit interagieren. Und dann kann die Schrotflinte nichts antun außer diesem hier. Oh, ich habe den Pistolengriff. Da gehen wir. Ich hatte ein bisschen Angst vor Widerstandsfähigkeit. Ich war, als ob ich die Einstellungen eins gemacht habe? Sehen Sie, ich kann diese Zeilenspuren jetzt sehen, was ist irgendwie cool? Ja, das hat alles mit unseren Munition Pickups zu tun. So machst du es. So cool. Wir werden weiter rollen auf Schlüssel schlecht und einige neue Features, um das Spiel. Und dann werden wir endlich, es wird sehr bald sein und wir werden tatsächlich anfangen, diese Waffen zu schießen und ein paar coole Sachen mit ihnen zu machen. Ich hoffe, dass dir dieses Video gefallen hat und wir sehen uns im nächsten. 19. Aufnehmen: Hallo an alle und willkommen zurück zu einem anderen Video. In diesem werden wir beginnen, einige Funktionen hinzuzufügen, um unsere Hit-Scan-Waffen schießen zu können. Und zwischen den Videos habe ich ein paar wirklich kleine Dinge gemacht. Ich habe einige Texte hinzugefügt, die in die Welt gerendert werden. Um dies zu tun, müssen Sie nur Akteure an Ort und Stelle gehen und Sie können einen Text rendern. Sie können es drehen. Wie auch immer Sie möchten. Sie können die Schriftarten ändern, obwohl ich glaube, dass es nicht funktioniert, weil es kein Textmaterial hat. Ja. Sie können es an der Mitte ausrichten, die Farbe ändern oder was auch immer Sie wollen, und geben Sie ein, was Sie wollen. Also ja, ich aber unser Waffenfach und dann wird es abholen. Also machte ich es schwarz und Größe 30, und ich gab ihm einen Namen und steckte es in einen Ordner. Und ich habe auch unsere Munition in die richtige Reihenfolge gebracht und sie in einen Ordner gelegt, weil sie mich nicht umsonst Organisationsstation in der High School nannten. Eigentlich habe ich das angerufen. weitermachen, schießen wir ein paar Waffen. Also zuerst, was wir tun wollen, ist in unserem Datenordner, klicken Sie mit der rechten Maustaste und gehen Sie zu Blueprint und dann zur Aufzählung. Wir gehen also Typ gefeuert. Und wie ich schon am Anfang des ersten Videos sagte, haben wir zwei verschiedene Arten von Waffen. Der erste wird als Treffer-Scan bezeichnet, und der andere ist ein Projektil. Also, wenn Sie sich erinnern, wird eine Hit-Scan-Waffe mit einem Zeilen-Trace arbeiten. Ein Zeilenablauf, der ich glaube nicht, dass ich das noch debugge. Es wird also die gleiche Art von Sache sein, wo es eine unsichtbare Linie in die Welt zieht . Und es wird eine sofortige Suche nach dem, was es trifft. So erhalten wir Ergebnisse wie diese mit dem Treffer-Scan, ein Projektil wird ähnlich sein, wenn Sie nur die First-Person-Vorlage verwenden, die mit Unreal geliefert wird. Die Waffe hat einen kleinen gelben Ball, der aus ihm herauskommt, und es ist eigentlich ein Projektil. Und die Unterschiede zwischen Projektile und drücken Sie Scan, drücken Sie Scan, Es wird ein sofortiger Treffer sein. Es wird eine perfekte gerade Linie sein, wo wir als Projektil verschiedene Geschwindigkeiten darauf einstellen und es von der Schwerkraft beeinflussen lassen können. Also unsere Pistole oder Gewehr und Schrotflinte, die werden Hit Scans und dann das Scharfschützengewehr, Granate und Rakete werden Projektil sein. Also in diesem Video werden wir unser Skript starten, um Funktionalität zu den Hits cantos hinzufügen zu können , gut, sagen wir ablehnen. Ho. Also ja, gehen wir in unsere Waffenmappe und öffnen unsere Waffenbasis. Hier wird all unser Drehbuch leben. In Ordnung? Das erste, was wir hier tun wollen, ist, lassen Sie uns voran gehen und eine Funktion erstellen und wir nennen es anfangen zu schießen. Was wir tun wollen, ist, dass wir eine Eingabe hinzufügen und es Feuertyp in nennen wollen, es vom Typ, Feuertyp machen, so. hier rauskommen, wollen wir eine Sequenz machen. Und genau wie zu anderen Zeiten in der Klasse, werden wir etwas aus den 1000 hinzufügen. Aber um des Augenblicks willen, was ich tun will, ist, da zu gehen, dann eine Pin und dann fügen wir dieses Skript später hinzu. Dort werden wir kontrollieren, tatsächlich die Anzahl der Kugeln reduzieren, die wir haben und dann ein paar Sachen neu laden. Aber bei einem Feuertyp, Lassen Sie uns das einschalten und stecken Sie das in den dann einen Pin so, kann diesen Knoten umleiten. Gut, also aus Zugriffen scannen, was wir tun wollen, ist, dass wir eine andere Art von Funktion aufrufen wollen. Also noch nicht eine ganze Menge hinzugefügt, aber wir werden eine neue Funktion erstellen müssen. Also lassen Sie uns diesen Berechnen Treffer nennen oder eine Zeilenverfolgung berechnen. Nennen wir es so. Und dann wird das drei verschiedene Eingänge haben. Also lassen Sie uns hier drei Eingaben hinzufügen. Die erste wird eine Kamera-Komponente sein. Der zweite wird ein Waffennetz sein. Und der dritte wird eine Waffensteckdose sein. Die Kamera wird vom Typ sein. Jemand könnte nur Kamera-Komponenten-Objekt. Da gehen wir. Und dann wird dieser eine Szene Komponenten sein. Komponente, Objektreferenz anzeigen. Komponente zu sehen ist wie diese Dinge. Alles in unserer Komponente, wie jede dieser Komponenten, gilt als Senkenkomponente. Und dann wird dieser Name ein Name sein. Ordnung? Was wir hier tun können, ist, dass wir eine Sequenz herausziehen, um ein paar verschiedene Dinge rückgängig zu machen. Und wir werden all diese auf lokale Variablen heraufstufen. Lokale Kamera, lokales Waffennetz und lokale Waffenbuchse, nicht Sauger. Steckdose Okay, und dann machen wir das einfach aus dem, dann die 0. Und das ist ein bisschen hässlich. Also lasst uns das alles vielleicht ein bisschen nach oben bewegen. Und dann fügen Sie einige Umleitungsknoten wie das hinzu, machen es vielleicht ein bisschen aus. Es ist tragisch. Ich muss die beiden wechseln. Oh, meine Güte. Dies ist nur eine Art peinlicher erster Teil des Skripts. Sicher. All dies zu setzen und Unreal tun Sie es und dann nicht geben Sie mir die geraden Linien, was ein schreckliches Schicksal ist. Ok. Aber er wird den Job erledigt, schreien, es wird die Arbeit erledigt. Also von dann einem, Lassen Sie uns Spur für Objekte ausrichten. Statt nach Kanal. Wir werden es für Objekte tun, weil wir es wollen. Wie Zeile, wenn ich zeilenweise Ablaufverfolgung für Kanal machen würde, werden Sie feststellen, dass diese Objekttypen fehlen. Daher möchten wir nur, dass unsere Zeilenverfolgung mit ein paar verschiedenen Objekttypen interagiert. Also mit dieser Zeile Trace für Kanal, es ist nur, dass wir diese Option im Wesentlichen nicht in vereinfachter Form haben . Deswegen benutzen wir das. Alles klar, was wir tun wollen, ähnlich wie wir das in der Figur gemacht haben, wenn Sie sich erinnern, nahm die Kamera-Komponente, Ort Gottes und machte etwas Mathematik hier, wir wollen etwas Ähnliches tun. Lassen Sie uns also unsere lokale Kamera-Komponente greifen, die, wenn Sie sich erinnern, eine Eingabe ist. Also, wenn ich hierher gehen würde und ich das rausziehen und sagen „Zeilenverfolgung berechnen“. Es wird nicht nach diesen Daten fragen, weil es Eingaben sind. Ok? So lokale Kamera, wir werden die Welt transformieren. Und wir wollen diese geschlagenen Stifte teilen, dass wir eine Rotation bekommen können, eine Position in einer Skala. Oder ich kann die Waage benutzen, aber wir werden die Drehung und den Ort benutzen. Der Standort unserer Kamera wird also unser Startpunkt sein. Das ist also schön und einfach da. Aber wir werden mehrere verschiedene Dinge außerhalb dieses Endpunkts tun. Also fangen wir eigentlich mit der Rotation an und wir werden den Vorwärtsvektor erhalten. Die Drehung unserer Kamera von diesem Punkt aus ist das, was wir bekommen. Und dann werden wir diesen Vektorzeiten Float multiplizieren. Ich glaube es als Schwimmer. Ja, UCS ist k. So ist es eigentlich, wie weit in die Welt unsere Linieneigenschaften gehen werden. Also die anderen zu 200. Also lasst uns das etwas ziemlich vage machen, wie zehntausend Entfernungslinien, und wenn du willst, okay. Nehmen wir an, Sie wollen einer bestimmten Waffe mehr Reichweite als eine andere geben. Alles, was Sie tun müssen, ist dies zu einer Variablen zu fördern. Und dann wird die Zeilenverfolgung so weit gehen. Wenn du also eine Schrotflinte möchtest, trifft es etwas von der Karte oder etwas lächerlich. Sie können das jetzt lieber Einfachheit Sake tun. Nun, lassen Sie es uns einfach so behalten. Und wir werden Vektor plus einen Schwimmer kompatibel mit. Wir müssen möglicherweise Vektor plus Vektor. Vektor plus Vektor. Ja, okay. Ok. Mathematik. Also, ja, das geht hier rein und dann geht das da rein. Also, was wir tun, ist, dass wir die Position unserer Kamera als Startpunkt nehmen , und dann fügen wir 10 Tausend zu diesem Punkt hinzu. Nun, normalerweise, würden wir nur hinzufügen, dass in den Endpunkt und wir würden getan im Leben wäre gut. Aber wir machen die Dinge gerne komplizierter, denn wenn du dich daran erinnerst, haben wir diese Kugel ausgebreitete Sache hier vor sich. Wir wollen also nicht, dass unsere Linienspuren absolut gerade sind, wenn wir nicht auf die Seiten abzielen. Wie erreichen wir diesen Effekt? Nun, machen wir das jetzt. Ok? Also aus einem Vektor, Lassen Sie uns brechen setzen einen Vektor r, richtig? Und dann werden wir uns unsere Kugel ausbreiten lassen, was auch immer das als Standard 350 eingestellt ist. Und dann multiplizieren wir das mit einem anderen Float und multiplizieren wir das mit negativem. Ok? Und dann wollen wir hier einen zufälligen Float innerhalb eines Bereichs bekommen. So. Dieser Knoten wird das Minimum sein, und dann wird dieser Knoten das Maximum sein. Also, so unsere kühne Spread ist 350. In Ordnung? Der Mindestwert, den diese Randomisierung auspumpen kann, ist negativ 350 und das Maximum kann es als 300, 50 sein. Also OK, wirklich genug, obwohl wir das für das x, das y und das z bekommen müssen. Also müssen wir das zu anderen Zeiten tun. So können wir eine für das x, eins für y und eins für das z einstecken. Also lassen Sie uns den Wert davon einstecken und alle Minimums im Wert davon in alle Maximum tun , was ja ist, das ist eine Abscheulichkeit aussehende Sache, aber es ist das Beste, was wir tun können. Okay, raus hier, fügen wir Float, Float hinzu, und wir wollen das für x, y und z tun. Also möchte ich sicherstellen, dass wir dies an allen Stellen x, y und z randomisieren und dann werden die Rückgabewerte in die Unterseite davon. Okay, das kann sehr hässlich werden, sehr schnell. Ich versuche, alle diese Knoten hier zu zähmen. Ok? Und dann fügen Sie ein hier hinzu. Wir machen das zu einem Vektor, weil wir es kaputt gemacht haben. Jetzt muss ich es wieder in einen Vektor schaffen. Alle diese Float-Werte wieder in einen Vektor. Und dann zu guter Letzt müssen wir das überprüfen, okay? Wir wollen das nur tun, wenn wir nicht richtig zielen? Wir wollen nur, dass diese Kugel zufällig abfeuert, als ob wir Amy sind, wir wollen, dass es diese perfekte Linie ist, richtig? Also raten Sie, was wir tun müssen, ist aus einem vagen großen und spielen, wir müssen einen Hinweis auf unseren Spieler bekommen, weil sie denken, dass wir noch keinen haben. Also lassen Sie uns den Spieler-Charakter auf den Spieler, auf Variable und wir rufen Spieler. Ich werde es nicht schön aussehen lassen, nur um Zeit zu sparen. Ich mache das zwischen den Videos. Ja, es mag mich nicht, weil dafür, okay. Aus dem Rückgabewert dieses, Lassen Sie uns eine selektierte Note wie folgt erhalten. Und eigentlich hat das nicht so hochgezogen, wie ich es wollte. Lassen Sie uns versuchen, es auf diese Weise zu tun. Spieler, lasst uns das Ziel bekommen. Und dann lassen Sie uns eine Auswahl treffen. Aus dem heraus. Ha, da gehen wir. Das wollen wir. Also, jetzt packt es das Wahre und Falsche. Also, wenn das Ziel wahr ist, dann wollen wir das einfach packen. Wir wollen nur die perfekte Linie greifen. Dies die, die Rotation unserer Kameras Vorwärtsvektor plus 10000 Einheiten in die Welt. Ich will, dass das perfekt ist. Aber wenn wir nicht Amy sind, wollen wir diese kleine Kugel verbreiten. Also wollen wir das in das Falsche stecken. Und dann wird der Rückgabewert davon unser Endpunkt sein. In ihrem Komplex. Nicht wirklich. Und ich verschwinde irgendwie von hier. Lassen Sie uns, lassen Sie uns ein Array machen, weil wir mehrere Objekte haben wollen, mit denen wir interagieren können. Die beiden, die wir mit unserer Welt interagieren wollen, statisch und rollen diese Dynamik. Das sind also die Dinge, die sich unsere Linie überschneiden wird. Also, wenn du in die Welt gehst und dir das ansiehst und gut, wenn du in die Kollisionseinstellungen von etwas gehst, also vielleicht, wenn ich das aus diesem Pollyanna-Sohn standardmäßig herausgreife. Also, wenn ich das nehmen und Collision Presets und Künstler sagen, das ist Wars Welt, dass ECUA, Welt dynamisch dort. Oh, das muss ich vielleicht. Oder ist es? Oh, da gehen wir. Das ist es, wonach ich suche. Eine Welt dynamisch, Welt statisch. Es gibt also verschiedene Dinge auf der Welt, die als dynamisch und statisch angesehen werden würden. Ich musste das wahrscheinlich nicht erklären, aber das sind die Objekttypen, die wir wollen. Objekttypen, die wir wollen, werden so ausgerichtet, dass sie sich schneiden. Aber dann wollen wir auch einige Schauspieler ignorieren. Also lasst uns den Spielercharakter bekommen. Und ich glaube nicht, dass sich das sofort anschließen wird. Okay, es hat gerade ein Array gemacht. So können wir noch mehr Dinge hinzufügen, die wir wollen, dass dies ignoriert. Richtig? Raus aus diesem Hit. Wir wollen, können wir das einfach machen? Nein, das können wir nicht. Also lassen Sie uns einen weiteren Stift hinzufügen. Lassen Sie uns einen Rückgabeknoten daraus hinzufügen. Und dann lassen Sie uns eine Ausgabe machen und dieses Treffergebnis machen. Und wir nennen es Treffer Ergebnis. Und dann stecken Sie das so ein. In Ordnung. Das ist das Hässlichste, was ich je in meinem Leben gesehen habe. Alles klar, jetzt haben wir hier unsere „Linie berechnen“ -Sache. Also gehen Sie wirklich schnell über das. Also stellen wir die Aufforderung an mich. Wir mussten nicht einmal die Waffe machen, die den Socket erwähnt hat, sondern diese als Variablen setzen, weil wir sie nicht wirklich benutzt haben. Ich dachte, wir würden möglicherweise nur die Kamera benutzen oder was auch immer. Es ist wirklich nicht so groß, sie zu haben oder sie nicht zu haben. Es ist, was es ist. Wenn wir also diese Linienverfolgung zeichnen, bekommen wir die Position einer Kamera. Wir haben nicht angegeben, was diese Kamera ist. Nur noch. Wir bekommen seinen Standort und setzen das als Ausgangspunkt. Und dann machen wir die Drehung der Kamera, den Vorwärtsvektor von dieser Kamera, plus 10000, und fügen das zusammen. Und wenn wir darauf zielen, wird unsere Waffe das als Endpunkt zurückgeben. Wenn wir nicht zielen, dann haben wir Bruch, dann haben wir Bruch, zerbrochen diesen Vektor in x, y und z. Wir haben diese Zahl zufällig zwischen den negativen 315, 350, oder was auch immer die Zahl, die wir gesagt haben, ist diese Schüssel, da dieser Bolzen sich hier ausgebreitet hat. Dann fügen wir diese beiden Werte wieder zusammen und machen das wieder zu einem Vektor, weil wir es kaputt gemacht haben und es zu Floats gemacht haben. Und dann machen Sie das zum Endpunkt. Und wir wollen, dass unsere Linienverfolgung mit statischen und dynamischen Objekten der Welt interagiert und unseren Spieler ignoriert. Wir wollen nicht, dass es mit unserem Spieler interagiert. Alles klar, jetzt haben wir diese Funktion draußen und so herum. Und dieser Teil wird ziemlich einfach sein. Also lasst uns den Spieler schnappen und uns die Kamera schnappen. Das geht auf den Spieler. Und das wird unsere Kamera sein. Also schnappen wir uns das, ihre Kamera für das Waffennetz. Nun, schnappen wir uns einfach das Waffennetz von unserer Basis. Das ist nichts anderes, als es ist wie andere Dinge in den Kindern gesetzt. Und dann die Waffenbuchse. Baba, Baba, Baba. Also, wenn ich dir das zeige, wenn wir zu den Waffen in einem Skelettnetz gehen, wollen wir, dass dies Maulkorb Blitz genannt wird. Das ist es, was wir packen. Sie werden alle Maulkorb Blitz genannt. In Ordnung, also brauche ich nicht, dass du den Spammer zu einer Variablen befördert hast und wir nennen es Waffensockel, also die Namensvariable. Und warum ist es nicht? Mich zu lassen? Ok, also ist es hier oben. Ok. Das war wie, Nun, wir werden das als Mündungsblitz festlegen. Ich glaube nicht, dass wir das jemals ändern müssen, aber nur für den Fall, dass er eine andere Waffe hatte, die Sie später zu diesem Projekt hinzufügen würden. Sie können das nun durch eine Variable ändern. Also ja, das ist ziemlich cool. Okay, und dann machen wir verschiedene Dinge. Es gibt zurück, was auch immer diese Treffer, so dass Sie es brechen können, nur um Ihnen zu zeigen, wir tun all diese verschiedenen Dinge, aber das Treffergebnis, die Treffer der Linie, in Ordnung, und wir geben diesen Wert zurück, damit wir coole Dinge damit machen können danach, was genau das ist, was wir tun werden, ist, dass wir immer die coolen Dinge machen wollen. Alles klar, also sah das ganze Setup bis jetzt ziemlich gut aus. Ordnung, also gibt es ein paar verschiedene Dinge, die wir all diesen Skripten hinzufügen werden. Aber nur um Ihnen zu zeigen, dass dies funktioniert, lassen Sie uns voran und richten Sie es einfach als eine Art Debugging-Sache wirklich schnell ein. Gehen wir also in unsere Einstellungen, Projekteinstellungen und Eingaben. Erstellen Sie New Action Mapping und nennen Sie es schießen, schießen, schießen, schießen, schießen. Wir nennen es Feuer. Das sind die, die ich es Feuer nennen werde. Ich fühle mich wie schießen ist genau wie zu verwalten schießen. Linke Maustaste. Also wollen wir schießen. Normalerweise geht es so. Ordnung, also in unserem Veranstaltungsdiagramm, lassen Sie uns voran gehen und ein Ereignis erstellen. Und wir werden, wir nennen diesen einen Feuerwehrschlauch so. Also werden wir Dinge hinzufügen, um sicherzustellen, dass wir tatsächlich Munition in einer ganzen Reihe von anderen Dingen wie diesem haben. Stellen Sie sicher, dass wir nicht so sind, als könnten wir unsere Waffe schießen. Weißt du, wir können diesen Vortrag jetzt machen, weil wir diese Variable erstellt haben. Aber es wird immer wahr sein, oder? Also lassen Sie uns das einfach so einstellen, dass es für den Moment wahr ist. So sehen wir, dass das funktioniert. Ok? Dann holen wir uns die aktuelle Waffe. In Ordnung. Und dann wollen wir den Feuertyp bekommen. Wie haben wir das genannt? Oder setzen wir das nicht als ein Loch in einer Sekunde oder als Gewicht? Waffentyp, wo es zu schießen beginnt, ist Typ des Typs var auf 0 abgefeuert. Okay, wir haben es in den Eingang gesetzt. Wir haben es nicht wirklich zu einer Variablen gemacht. Also lasst uns diesen Biotyp machen. Okay, jetzt hat es eine tatsächliche Variable vom Typ Flyer, Typ der Treffer Scanner-Projektil. Und das ist wichtig, weil wir sicherstellen müssen, dass wir das auch in all unseren Kindern einstellen, damit es weiß, ob es sich um eine Treffer Scan-Waffe oder eine Projektilwaffe handelt. In Ordnung, also jetzt lasst uns den Feuertyp holen. Das. So nett zu uns jetzt. Und wir wollen anfangen zu schießen. Das Ziel wird die aktuelle Waffe sein, und es wird aus dem wahren Zweig ausgehen und irgendwie wackelig zusammen, zugegebenermaßen. Aber es sollte funktionieren. Das letzte, was zu tun ist, gehen Sie zu Aktionszuordnungen und suchen wir nach Feuer, dem Aktionsereignis. Und dann lassen Sie uns einfach so feuern. Hoffentlich, mein Gott, habe ich es getan. Okay, wir wollen sicherstellen, dass wir diese hartnäckige haben, in Ordnung, und wahrscheinlich wollen wir überprüfen, ob wir tatsächlich eine Waffe haben. Also, bevor wir dies tun, lassen Sie uns gehen und die Last aus, weil das ist, was diese Bereiche Fehler verursacht. Fehler. Es ist gut, Leia-Junge. Ok. Gepresst. Hat Waffenfeuer und wir können diese Linien sehen. Richtig. Weil es als hartnäckig festgelegt wurde. Ok. Ausgezeichnet. Also keine Linien, keine Ohren. Ziemlich gut. Also kriegen Sie das Kieselsäure. Also schießen wir jetzt und Sie können sehen, wie die Linien ausgehen, Boom, Boom, Boom, Boom. Und ich gehe da raus. Und wenn es Seguin ist, sieh mal, dass es Sachen trifft, weil es die kleine Linie hat. Und dann schießen diese und ich raus, tun nichts. Also offensichtlich geht die Munition nicht unter. Wir haben keinen Rückstoß. Eine ganze Reihe von Sachen, die wir hinzufügen müssen. Aber da gehen wir. Ich meine, unsere Waffe schießt. Wir ziehen diese Linienspuren in die Welt, genau das, was wir tun wollen. Es überprüft, ob Sie die Entfernung dort sehen würden. Wenn ich so einen zeichnen würde, würdest du es sehen. Also von da nach da, So Fargo. Also, wenn Sie das ändern wollen, wenn Sie den Schock nicht wollen und so viel Reichweite haben, gehen Sie vor und setzen Sie die zehntausend pro Jahr Variable und dann können Sie das ändern. Und alle Kinder sagen, ich bin keine verrückte Lichtshow, die hier drüben stattfindet. Ja. Das sieht irgendwie cool aus. Sehen Sie ein o, Sie können sehen, wie es tatsächlich ist, ich werde von ihnen springen. Sie können sehen, wie es tatsächlich durch das Grün geht. Also geht es immer noch durch, obwohl es etwas trifft. Cool. Das sieht so ja aus, das funktioniert alles. Ja, das ist alles. Das ist alles für dieses Video. Also werden wir das weiter hinzufügen und es robuster machen. Wir wollen die Sounds und die Effekte hinzufügen und in der Lage sein , neu zu laden und sicherzustellen, dass ihre Munition Anzahl tatsächlich sinkt. Und dann machen Sie auch die spezifischen Waffenwaffen funktionieren, wie sie das Sturmgewehr automatisch machen und die Schrotflinte verteilt ist und all das Zeug. Aber das ist die Grundlinie für das, was all unsere Projektilwaffen tun werden, das ist schießen. Und so haben wir jetzt Waffen schießen, schießen mit Luftzitaten. Das wird also ziemlich cool. Ich hoffe, ihr habt dieses Video genossen und ich seht euch das nächste. 20. Funktionalität neu erlegen (Teil 1): Hallo an alle und willkommen zu einem anderen Video. In diesen nächsten Videos werden wir hinzufügen, um unser Spiel neu zu laden. In diesem Video wird dies vor allem die Mathematik dahinter sein. So bekommen unsere aktuelle Munition zu verringern, wenn sie erneut schießen oder Pistole in einem Spiel, um zu verstehen wie wenn wir 0 Kugeln im Magazin haben , um automatisch neu zu laden und einfach andere Sachen wie das zu tun. Und dann in zukünftigen Videos, werden wir tatsächlich Soundeffekte und eine Animation und in diesen Arten von Dingen hinzufügen. Also, um mit diesem zu beginnen, werden wir in unsere Waffenbasis gehen und wir werden hier eine anständige Menge an Funktionen erstellen. Und zwischen den Videos, Es gibt ein paar Dinge, die ich getan habe. Ich habe hauptsächlich nur Kommentarboxen um Dinge hinzugefügt und einige der Sachen ein bisschen schöner aussehen lassen. Also hier ist unser Calculate Line Trace aus dem letzten Video. Also hier ist unsere Kugel ausgebreitet. Schauspieler ausgerichtet Waffenstillstände gehen, um diejenigen, die ignorieren werden treffen. Also nur ein paar zusätzliche Sachen. Ich habe diese anderen beiden lokalen Variablen losgeworden, weil ich glaube, dass wir sie nicht verwenden werden, aber wir brauchen sie als Eingaben. Wir müssen sie nur nicht als Variablen festlegen. Und dann habe ich diese Waffensockel-Variable loswerden. Denn für mein Projekt wird mindestens jeder einzelne Socket Mündungsblitz sein. Aber wenn Sie verschiedene Waffenmaschen verwenden wollen, die ich in der Zukunft verwende. Sie würden definitiv wollen, dass als eine Variable , so dass jedes Kind dieser Waffenbasis, werden Sie in der Lage, dynamisch setzen, dass jedes einzelne Mal. Aber ich habe es manuell eingelegt. Ich glaube, das war's. Abgesehen davon habe ich einige unserer Variablen in verschiedene Kategorien eingeteilt, um sie organisiert zu halten. Ähm, und wie ich sagte, wenn Sie das als Variable festlegen können, wenn Sie es auch möchten. Ich tat es nur nicht, weil der Einfachheit halber, jede Linie verfolgen Waffen, die für den Moment diese Distanz sein werden. Okay? Also denke ich, das ist alles. Und ja, wir können anfangen. Beginnen wir also mit der Erstellung einer Funktion und wir rufen diese Neuladeberechnung auf. Das wird die Mathematik kontrollieren, die wir hier machen. Dafür benötigen wir ein paar weitere Variablen, um diesem OData hinzuzufügen, was ich es nannte. Also lassen Sie uns eine Variable hinzufügen und wir werden dies aufrufen. Wir haben also nicht die CF-Magazingröße. Dies wird vom Typ Integer sein. All dies werden ganze Zahlen sein. Sie haben also Magazingröße. Und dann brauchen wir eine Kugel Differenz genannt. Denk, das war's. Wir können diese in Kategorie ziehen, wenn Sie keine Kategorien verwenden möchten , sicherlich nicht müssen. Genau wie wenn Sie ein Kind öffnen, wenn Sie noch keine Kategorien waren und diese werden in diesen kleinen Kategorien angezeigt. Wenn du das nicht tust, dann wird das einfach sein, sie werden einfach wie ein wirklich langer Abschnitt dort sein. Also ja, lasst uns anfangen. Also Magazingröße, sollte diese Variable immer gleich der aktuellen Munition sein. Also unsere Standardeinstellung ist 30, also lassen Sie uns dies einfach auf 30 setzen. Das ist was auch immer die Größe unseres Magazins ist. Diese Nummer wird sich nicht ändern. Die aktuelle Munition wird sich ändern. Aber das ist die Summe. Also unsere Magazingröße, lasst uns das bekommen. Und lasst uns unsere aktuelle ML bekommen. Und wir werden diese subtrahieren. Und dann werden wir das als Kugelunterschied festlegen. Okay? Die Art und Weise, wie ich diese ganze Funktion nicht erstellen werde, dann erklären Sie einfach , was es nach der Tatsache tut. Einen Schussunterschied rausziehen. Wir wollen eine Zahl kleiner als oder gleich Ganzzahl erhalten. Und wir wollen die aktuelle Gesamtsumme AMA erhalten. Und dann ziehen wir raus, um hier zu verzweigen. Okay? Der Versuch, nur daran zu denken, wann und wie zu erklären, was das genau tut. Nun, gehen wir einfach, ja, gehen wir vorerst in den wahren Zweig. Und lasst uns nicht aktuelle Munition setzen. Und wir werden das sofort auf das Wahre und das Falsche setzen. Entschuldigen Sie mich. Also Schrott Magazingröße und steckte es in aktuelle Munition hier oben. Und dann bekommen wir unsere aktuelle Gesamtmunition. Und die Kugel Unterschied. Wir werden diese subtrahieren. Dann werden wir das als neue aktuelle Gesamtmunition festlegen. So wie das. Sieht ziemlich gut aus. Okay, und wenn dieses Ergebnis falsch ist, wollen wir die aktuelle Munition holen. Die aktuelle Gesamtmunition. Und wir werden sie zusammenfügen. Und dann werden wir dies als unsere aktuelle ML setzen, wie so. Und dann wollen wir unsere aktuelle Gesamtmunition auf 0 setzen. Okay, was macht das alles? Alles klar, hier kommt die Mathematik. Bleiben Sie hier kurz bei mir. Also haben wir unsere Magazingröße. Nehmen wir an, lassen Sie uns einfach 30 ist 30. Unsere Zeitschrift ist also 30 und unsere aktuelle Munition ist ebenfalls 30. Nehmen wir vorerst an, wir schießen auf Runde oder fünf Runden, schießen fünf Runden ab. Das bedeutet also, dass dies 30 ist und das ist 25. Subtrahieren Sie das, und dann ist das gleich fünf. Wenn fünf kleiner oder gleich der aktuellen Gesamtmunition ist, dann werden wir verschiedene Dinge tun. Diese aktuelle Gesamtmunition ist also eine sehr große Zahl. Also öfter als nicht, wir das laufen und ich werde nur sagen, Läufe, wenn es Reserve-Munition gibt. Also öfter als nicht, diese Funktion geht oder dies wirddie meiste Zeit nicht wahrsein die meiste Zeit nicht wahr weil unsere Kugeldifferenz relativ niedrige Zahlen sein wird. Die größte Zahl, die dies sein kann, wie es wäre 30, 30 minus 0. Die größte Festplatte könnte also sein, wäre 30. Das wird also nur nach unten laufen, wenn uns die Reserve AMA ausgeht. Okay, also lassen Sie uns vorerst dem wahren Zweig folgen. Also haben wir dies gleich 55 ist kleiner als oder gleich 244. Also rennen wir hier hoch. Und unsere Magazingröße, die 30 ist, wird als aktuelle Munition festgelegt werden. Mit anderen Worten, dies wird zu 25. Wir setzen es auf die Größe unseres Magazins zurück, das wäre 30. Und dann nehmen wir unsere aktuelle Gesamtmunition, die 244 ist. Wir subtrahieren sie von der Kugel Differenz, die in diesem Fall fünf war. Wir schalten fünf Runden ab und stellen das als neue aktuelle Gesamtsumme ein. Das wäre also 239. Also, was das tut, ist es braucht, es aktualisiert die große Zahl. Also 12 in diesem Fall wäre die aktuelle und auch die Magazingröße. Es nimmt also diese Nummer, es setzt das zurück auf die Magazingröße, die in diesem Fall immer 12 sein wird. Und dann wird es nur subtrahiert, was auch immer dieser Kugelunterschied war, wie viele Runden wir von diesem Backend abgeschossen haben. Kleine Zahl 144. Sagen wir mal, dass uns die Munition ausgeht oder wir haben nicht viel Munition in Reserve. In diesem Fall. Wir werden nur diese Mathematik machen. Also nehmen wir unsere aktuelle Munition. Wir werden es zur aktuellen Summe hinzufügen. Setze das als unsere aktuelle, weil es nicht mehr gleich der Magazingröße ist, weil es kein vollständiges Magazin haben wird, das uns zurückgeben kann. Und dann wird es das aktuelle Gesamttier auf 0 setzen , weil wir keine in der Reserve haben. Das läuft also, wenn die Reservemenge niedriger ist als das Munitionsmagazin. Das ist also die Mathematik, die es tun wird, wenn es wie wenn Sie extrem niedrig laufen und Munition im Wesentlichen. Alles klar, cool. Jetzt machen wir ein paar verschiedene Schecks. Also lassen Sie uns eine neue Funktion erstellen und wir werden sagen, ist MAG , voll oder leer, so etwas wie das. Und ziehen wir einen Zweig raus. Und dann schnappen wir uns unsere aktuelle Munition und unsere Magazingröße. Und dann werden wir prüfen, ob sie einander gleich sind. Weil wir unsere Waffe nicht nachladen wollen, wenn unsere Zeitschrift voll ist. Also ich weiß nicht, ob wir das noch erschaffen haben, aber in unserem Charakter, lass uns hierher gehen und haben wir eine Dose neu laden? Tun wir nicht. Okay, also lassen Sie uns eine Dose neu laden. Dies sollte ein boolescher Wert sein. Sie konnten schon. Farben sind hart für mich. Okay, dann lasst uns unsere Spielerreferenz greifen und lasst uns setzen kann neu laden, um falsch zu sein. Weil wir nicht nachladen wollen. Also können wir so sagen, Abels Nachladen. Wenn das Magazin voll ist oder die Reserven leer sind. Wir wollen nicht, wir haben nicht wirklich diese kann noch überall nachladen, aber wir werden es irgendwann. Und wenn es falsch ist, wir nicht in der Lage sein, dieses Aktionsereignis zu machen, das wir einrichten werden. Alles klar, und dann gehen wir zu, wir wollen hier einen Rückschein. Also werden wir das Ergebnis davon zurückgeben. Wir können diesen Begriff einfach Wert oder so etwas nennen. Und dann stecken Sie das Ergebnis davon hinein. So werden wir den Wert dieser Funktion zurückgeben. Wenn es falsch ist, wollen wir einen anderen rausziehen. Wenn wir sagen wollen, lasst uns unsere aktuelle tonale Munition greifen und wir wollen sicherstellen oder überprüfen, ob dies gleich 0 ist. Also, wenn unsere derzeitige Gesamtsumme M0 gleich 0 ist, uns die Reservemunition ausgegangen. Dann werden wir sagen, dass wir nicht nachladen können. Wir wollen nicht, dass wir nicht wollen, dass wir nichts nachladen. Und wir werden nicht in der Lage sein, neu zu laden, wenn wir nichts in der Reserve haben, im Wesentlichen. Das ist also wie ein extra ausfallsicherer hier, weil es Zeiten geben wird, in denen wie die aktuelle Munition und gleich einer Magazingröße ist, oder? Ihnen sind die Kugeln in Ihrer aktuellen Summe ausgegangen. Dies ist gleich 0, aber Sie haben 30 und 30. Du kannst also nicht nachladen. Aber sagen wir, Sie haben wie fünf Kugeln übrig und auf der Reserve. Dies wird also durch den falschen Zweig laufen. Und dann sorgt dies nur dafür, dass Sie immer noch nicht nachladen können, weil Sie nicht in der Lage sein wollen, Munition aus, von nichts im Wesentlichen. Aber wenn Sie, wenn dies nicht gleich 0 ist, wenn diese einander nicht gleich sind, ist das nicht gleich 0. Ich weiß, das kann irgendwie verwirrend werden. Canon. Wir werden einstellen kann wieder laden. Und wir werden ja sagen, wir können nachladen. Und dann werden wir das auch so zurückgeben. Und dann werden wir sagen, aktiviert nachladen. Das Magazin ist leer, aber Munition bleibt in Reserve. Also ja, wir können nachladen, wenn wir Reserve-Munition haben. All das sollte gut funktionieren. Da ist also genau diese Funktion. Ich habe noch ein paar zu gehen. Lassen Sie uns eine andere Funktion erstellen und sagen, haben wir M0? Fragezeichen? Das wird leicht sein. Und das ist eigentlich weniger mit dem Nachladen und nur mehr mit der Fähigkeit, Argon zu schießen. Also lasst uns unsere aktuelle AMA holen. Und sagen wir einfach größer als Rückkehr. Wir werden sagen, hat AML, es ist nur der Name, dass und gibt diesen Wert zurück. Also all dies tut, ist auftritt oder erlaubt Shooting Ereignisse auftreten, wenn Spieler hat. Wenn unser aktuelles Tier also gleich 0 ist, wollen wir nicht schießen können. Das sollte ziemlich unkompliziert sein. Das hier. Okay. Und dann wollen wir noch einen Scheck machen, um zu sehen, ob noch Munition übrig ist. Gehen wir also weiter und machen das jetzt. Lassen Sie uns also eine weitere Funktion erstellen. Ich glaube, das ist das Letzte. Und wir nennen das ist ihre Munition. Und wir tippen. Also HOD, und das wird dem letzten wirklich ähnlich sein. Also bekommen wir diesmal die aktuelle, aktuelle Gesamtmunition, und wir werden sagen, dass größer als 0 ist. Und lassen Sie uns einen Boolean zurückgeben und sagen, dass Munition wie dieses Plugin übrig bleibt, dass das Ergebnis so zurückgibt. Und dann wird dieser einfach wie Schecks sagen, um zu sehen, ob es Munition in Reserven gibt. Du wirst also nicht in der Lage sein, wieder zu laden, wenn es keine Munition und unsere Reserve gibt. Das wird also wahr zurückgeben, wenn wir, wenn unsere aktuelle ich beschriften, ist es größer als 0. Okay? Also haben wir all diese Dinge erledigt. Jetzt werden alle diese Funktionen erstellt. Also, jetzt können wir anfangen, ein paar Sachen zu machen und das tatsächlich funktionieren zu lassen. Also gehen wir und machen das. In Ordnung, also gehen wir zurück zu unserer Start-Schießfunktion in unserer Waffenbasis. Und zugegebenermaßen gibt es viele Schritte dazu. Es wird also ein wenig Zeit dauern, bis wir das Ding vollständig funktionieren, aber unsere Funktionen sind eingerichtet. Also, wenn wir schießen, eine Sache, die wir tun wollen, ist, dass wir die aktuelle Munition greifen und eine davon subtrahieren und dann als den neuen Stromspalt so setzen. Sieh so etwas aus. Und wir können einfach sagen, subtrahiert 1 Kugeln beim Abfeuern von Waffen. Das ist also ziemlich unkompliziert, genau da. Aber wir wollen, dass unser Spiel in der Lage ist, automatisch zu unterscheiden und neu zu laden. Uns laufen die Kugeln aus und deaktivieren auch das Schießen. Also lasst uns wieder unseren Kernel-Modus bekommen. Und wir werden weniger als oder gleich 0 sehen. Der Grund, warum ich eine weniger als und nicht nur gleich Nullen, weil. Es ist wie ein extra Ausfallsafe, den Sie dort haben können. Nur für den Fall, dass etwas Seltsames in deinen Kugeln passiert, gehen Sie zu negativem. Es wird das immer noch abhauen. Und wir wollen ein neues Ereignis erstellen, um unsere Waffe automatisch neu zu laden, wenn uns die Munition ausgeht. Also lassen Sie uns in unser Veranstaltungsdiagramm gehen und dieses Ereignis erstellen. Und wir werden ein benutzerdefiniertes Ereignis erstellen und wir sagen, auto, neu laden auf leer. Alles klar, und dann können wir hier zurück und wir können wahr werden. Wir können sagen, auto reload auf leer. Also, das ist alles eingerichtet. Sie können dieses Ding hervorheben und wir werden sagen, es sollte damit übereinstimmen. Lädt, wenn Mag ausläuft. So etwas. Funktioniert gut. Jetzt können wir das tun. Also jetzt ist unser Ziel, automatisch neu zu laden und uns geht die Munition aus und wir müssen das einrichten, dieses Ereignis. Gehen wir also voran und fangen an, das zu tun. Als ich das tat, erkenne ich zunächst dieses seltsame Problem, das passieren würde. Was wir also tun werden, haben wir nicht wirklich Arbeit Nachladen Animationen und wir wollen in der Lage sein, sie für eine bestimmte Zeit zu setzen. Also, was wir am Ende tun werden, ist, dass wir die Waffe aus dem Bildschirm ziehen lassen und dann wieder nach oben kommen. Eine Sache, die mir klar wurde, ist, dass, wenn Sie die letzte Runde des Scharfschützengewehrs schießen, insbesondere die Waffe beginnt, zu schnell nach unten gezogen zu werden, wo Ihr Schuss im Wesentlichen vermissen wird. Ihr Fadenkreuz wird aufgereiht, Sie schießen. Aber die Pistole beginnt sich in der Sekunde, in der die aktuellen Schrauben gleich 0 sind, zu bewegen, so dass sie beginnt, Sie zu vermasseln. Also müssen wir dafür eine extra kleine Ausfallsicherheit einbauen. Also gehen wir weiter und greifen den Waffentyp und sagen gleich. Und wir werden prüfen, ob wir das Cyber-Gewehr halten und es dann reinziehen. Wenn Sie etwas etwas anderes tun wollen. Wenn wir das Scharfschützengewehr haben, können wir sagen, dass Snowbird Probleme verursacht. So albern. Ich setze vor allem diese Kommentare hier für euch ein, damit ihr irgendwie auf Störung zurückblicken könnt, irgendwie genau verstehen könnt, was das alles nach der Tatsache tut. Wenn wir also den Scharfschütze benutzen, wollen wir ihn nicht zerstören, aber wir wollen eine Verzögerung machen. Und alles, was wir brauchen, ist etwa 0,3 Sekunden. Und das wird es weniger auffällig machen. Und dann wollen wir ein reload-Ereignis machen. Aber wieder einmal haben wir dieses reload-Ereignis nicht erstellt. Gehen wir also zurück in unseren Charakter und unseren Spieler. Und lassen Sie uns das jetzt schaffen. Weißt du was? Nachdem ich mir das angeschaut habe, denke ich, dass ich das für ein anderes Video speichern werde. Also möchte ich das nicht zu super lang machen, weil dieses nächste Nachladeteil ein wenig lang sein wird. Also werde ich das für die nächste sagen. Also hoffe, Sie haben dieses Video genossen. Wir bewegen uns in dieser Serie. Und ja, ich hoffe, Sie genießen es und ich sehe in der nächsten. 21. Funktionalität neu erlegen: Hallo an alle und willkommen zurück zu einem anderen Video. In der letzten Version haben wir angefangen, unsere Spielemänner neu zu laden. In diesem hier werden wir das einfach fortsetzen. Also lasst uns weitermachen und loslegen. Also, wo wir abgeholt haben, wollen wir ein tatsächliches Reload-Event erstellen, anstatt unseren Spieler zu laufen, wenn uns die Kugeln ausgehen, wenn wir unsere Waffe schießen. Und dann werden wir dieses Reload-Ereignis viele verschiedene Male nennen. Also müssen wir reingehen und es erschaffen. Machen wir also ein benutzerdefiniertes Ereignis und rufen Sie dieses Reload so auf. Jetzt, wo es zumindest existiert, können wir es in die Welt rufen. Also gehe ich zurück zu unserer Waffenbasis. Und ich werde unseren Spieler schnappen und ich werde sagen, Reload. Auch wenn es noch nichts in diesem Event gibt, werde ich es einfach anschließen. Und dann werde ich das tun wollen. Nun, wir halten das Scharfschützengewehr nicht. Wir wollen in der Lage sein, neu zu laden. Und wir können einfach in Boxen kommen und sagen, Yeah, ruft automatisch Reload-Ereignis oder so etwas auf. Und wir werden das irgendwann noch etwas hinzufügen. Aber vorerst sieht das gut für mich aus. Und lehrte, dass es hoch geht. Kann die Funktion 0 nicht finden, kompilieren. Denk über all das nach, behebt das Problem. Vorher. Eine andere Sache, die wir vorher tun wollen, ist, dass wir dieses Feuerereignis beenden, weil wir, unserer Waffenbasis, wir haben einige dieser Funktionen zuvor erstellt, aber wir haben sie nicht wirklich angeschlossen. Und sie haben mehr mit dem Brennen zu tun als mit dem tatsächlichen Nachladen. Ordnung, also aus diesem wahren Zweig, werden wir noch eine if-Aussage machen. Und wir wollen die aktuelle Waffe und wir wollen anrufen Haben wir Munition und müssen eine Sache wirklich schnell ändern. Also zurück in unserer Waffenbasis für haben wir Munition und ist ihre Munition übrig? Was wir tun werden, ist, dass wir auf Peer klicken. Wir werden diese reinen Funktionen machen. Und indem ich sie hier reine Funktionen mache, mache ich hier einen NOP, und dann wird der andere Peer sein. Also, wenn ich rausziehe, haben wir Munition? Sehen Sie, wie es keinen Ausführungsdraht mehr hat. Und wir sagen, es ist ihre Munition übrig. Das ist also eine reine Funktion und das ist eine nicht reine Funktion. Dies ist wie, genau wie eine normale Funktion als Ausführung, Ausführungsdrähte aussehen würde . Wenn Sie es also so machen, funktioniert es eher wie ein Makro oder Sie können das einfach direkt einstecken und es muss diese weißen Ausführungsdrähte nicht haben. Also wollen wir beides machen, da diese nur überprüfen, wie, wissen Sie, es gibt nur true oder false basierend auf ein paar Variablen zurück. Wir werden die rein machen. So wie eine andere Art, es zu tun. Also ja, wir überprüfen, bevor wir schießen können. Wir sagen, können wir schießen? können wir. Und wir werden so sein, okay, nun, haben wir Munition? Wenn wir Munition und unsere Zeitschrift haben, dann werden wir weitermachen und wir schießen, unsere Waffen, fangen an zu schießen, was dieses Ereignis hier war. Oder Funktion, schätze ich. Verwenden Sie diese Wörter austauschbar. Manchmal. Wenn wir keine Munition haben, werden wir nachsehen, haben wir M0 übrig? Gibt es überhaupt Munition? Ok. Wenn wir Munition übrig haben, werden wir das nennen, um dieses Ereignis neu zu laden. Wenn nicht, dann spielen wir einen 2D-Sound ab. Und es gibt ein trockenes Feuer. Und diese könnten sich rühmen. Lasst uns vorerst in trockenem Feuer eins einschlitzen. In Ordnung. Und dann können wir sagen, reloads Waffe, wenn es reservierte Munition. Ja. Ich wollte etwas über die DRI-Firewall oder den erdähnlichen Ort sagen. Also ist dieses trockene Feuer genau wie wenn man buchstäblich 00:00 Uhr links hat, wird es das tun. Das ist wie der letzte Ort, an dem es gehen kann, hier ist. Denn denken Sie daran, wenn Sie sich erinnern, gibt es MLF prüft, ob wir Munition völlig haben, genau wie im Allgemeinen in der Reserve. Wenn wir also Munition haben, wenn unsere aktuelle Munition größer ist, dann können wir unsere Waffe erschießen. Aber wenn diese Zahl gleich 0 ist, gibt es derzeit keine Kugeln in unserem Magazin, aber wir haben immer noch Reserven. Es wird wieder geladen. Wenn wir keine Munition haben , ist unsere erste große Zahl gleich 0, unsere aktuellen Kugeln. Und die kleinere, unsere Reserven, dann wird es so sein, als hättest du keine MO, übrig, Periode. Das Leben saugt für dich. Geh und finde noch etwas mehr. Ordnung? Nun, was wir tun werden, ist, dass wir dieses Reload-Ereignis machen und das wird ziemlich langwierig sein. Also werde ich das nach unten ziehen und etwas Freiraum verklagen, einen Draht rausziehen. Und wie immer wollen wir einen Scheck machen. Und ich werde das in einem Makro speichern und sagen, können wir nachladen? Normalerweise verwende ich Makros wenn ich mehrere Booleans habe, die ich gleichzeitig überprüfen möchte. In der Regel, wenn ich wie ein UND oder ein OR verwende. Das erste, was wir sein werden, werden wir nicht umladen? Und wir haben Waffenwechsel. Und nicht die Waffe wechseln. Und wir werden sagen oder hier. Und dann geben Sie diesen Wert zurück. Zeigen Sie, was dieses Makro sagt. Es wird wahr sein, wenn wir nicht neu laden oder nicht Waffen wechseln. Ich möchte also nicht in der Lage sein, neu zu laden, wenn wir bereits neu laden oder wenn wir gerade mitten im Waffenwechsel sind. Und der Waffenwechsel dauert nur etwa 0,3 Sekunden. Es ist eine sehr schnelle Animation, aber ich möchte das nicht ungeschickt unterbrechen, weil das seltsam wäre. Also lassen Sie uns ziehen, können wir das Makro neu laden und anschließen? Alles klar, und dann aus dem wahren Zweig, also sind wir nicht bereit, wir tauschen keine Waffen aus. Wir werden drei verschiedene Dinge tun. Also haben wir nachladen? Wir wollen, dass das wahr ist. Kann schießen. Wir wollen das auf falsch setzen. Wir wollen nicht schießen können, während wir das tun. Und zielt darauf ab. Auch falsch? Ich will nicht in der Lage sein, mehr zu zielen. Wir machen das. Die andere Sache, die wir überprüfen wollen, ist, dass wir als Sprinten bekommen wollen. Und wir werden nicht sagen. Und wir sagen Zweig. Und wir werden es überprüfen. Wenn wir nicht sprinten, während wir das tun. Dann wollen wir die Charakterbewegungskomponente erhalten. Wir wollen unsere maximale Gehgeschwindigkeit auf unsere maximale Gehgeschwindigkeit einstellen, ich setze sie auf 750. Also, was das hier tut ist, dass dies den Spieler beschleunigt, wenn sie neu laden, während sie zielen. Was wir also letztendlich tun werden, ist, wenn wir Seiten unserer Waffe abzielen, wird unser Charakter langsamer werden. Sie werden sich nicht mit 750 Geschwindigkeit bewegen. Also, wenn wir derzeit nicht sprinten, wollen wir einfach zurücksetzen. Dies setzt nur unsere Geschwindigkeit auf den Standardwert zurück. Okay, und dann kümmern wir uns um das dann bis später. Das ist eigentlich ein spezifisches, das wir für Schrotflinten tun werden. Weil Schusswaffen wir wollen, dass Nachladen ein bisschen anders funktioniert, weil es einzelne Pellets sind. Okay, jetzt ziehen wir eine Zeitachse raus und wir nennen diese Waffe, was runtergezogen ist. Und wir werden das jedes Mal von Anfang an spielen. Öffnen wir es auf einem Float Track. Wir rufen das Pull-down an. Soll das auf fünf Sekunden dauern. Wir fügen zwei Schlüsselbilder hinzu. Die erste B zum Zeitpunkt 0, Wert 0. Die zweite wird zum Zeitpunkt 0,5 und der Wert eins sein. Dann wird es dann so aussehen. Was wir tun wollen, ist, dass wir diese Auto machen wollen. So ist es nur ein bisschen glatter. Okay, nochmal, du willst nicht, dass das eine Schleife oder so ist. Schließen Sie Ton aus diesem und halten Sie das offen. Ok. Aus den Updates wollen wir also überprüfen, ob wir neu laden und es kommt das Update heraus, wenn es das nicht bereits erwähnt hat. Also werden sie aktualisiert, wenn wir neu laden, dann wollen wir dies tatsächlich zu einer Variablen heraufstufen und wir werden diesen Pull-Down-Timer nennen. Also setzen wir im Wesentlichen nur diese 0.5 als eine Variable ein und stellen nur sicher, dass wir neu laden, während es passiert. Wenn das fertig ist. Also ist es beendet, dass 0,5 Sekunden, wir werden eine Verzögerung treffen. In dieser Verzögerung wird gefördert werden. Dies wird als Reload bekannt sein. Oh, eigentlich, nimm das zurück. Stellen Sie hier keine Echtzeit ein. Gehen wir in die Waffenbasis und lassen Sie uns Nachladezeit machen. Weil wir in der Lage sein wollen, diese Variable auf unsere Kinder-Blueprints anzuwenden. Also machen Sie das zu einem Schwimmer und dann greifen wir die aktuelle Waffe. Die aktuelle Nachladezeit der Waffen. Whoa, nicht das, was wir wollen. Ok. Und wir werden das als Verzögerung festlegen. So wie das. Und Sie können diese Standardzeit wie 1,5 Sekunden oder was auch immer Sie wollen. Das wird deine Standard-Nachladezeit sein. Wenn das erledigt ist, wollen wir eine weitere Zeitleiste machen und wir rufen diese Waffe an. Es wird unsere Waffe ziehen. Das wird also unsere Waffe nach unten bewegen. Und zieht er unsere Waffe wieder nach oben? Wir wollen, dass dies immer von Anfang an spielt. Sie halten die Kontrolle gedrückt und packten die Notiz, wenn Sie nicht wissen, wie Sie das tun. Ok. Und das wird genau das Gegenteil von den anderen sein. Also nennen wir diesen Pull up. Und zwei Keyframes, 0,5 Sekunden. Dieser wird mal 0 Wert von eins sein. Die zweite wird Zeit von 0,5 und der Wert von 0 sein, es wird die Umkehrung des anderen sein. Und wir gehen zu Auto, tun das auch. Es bewegt sich also von diesem anderen Wert, den 100 Prozent von sich selbst. Und zurück zum Original, Cool, Cool, Wir bewegen uns hier aus der, wir werden das greifen und zwei weitere von ihnen und ziehen , dass aus den Updates sowie aus dem fertigen, nur um sicherzustellen, dass dass wir noch neu laden. Und dann wird das sein, wir können einfach den Pull-Down-Timer hier wieder einsetzen, so. Du brauchst es nicht zu tun. Obwohl es heruntergezogen ist, arbeitet Timer immer noch für sie. Zieh hoch, es ist in Ordnung. Und dann wollen wir hier tun. Jetzt. Wir wollen unsere aktuelle Waffe wieder bekommen und wir wollen die Berechnung neu laden. Also erinnern Sie sich daran, dass dies die Mathematik macht. Mathe für Kugeln. Mach das auf. Das ist diese Funktion. Es macht also die Mathematik für uns. Und es macht es, wenn wir fertig sind , die Waffe runter zu ziehen, sie wieder hochzuziehen. Und dann müssen wir nur noch nachladen und das auf false setzen. Wir laden nicht mehr um. Und nehmen Sie können schießen und sagen, ja, Sie können Ihre Waffe jetzt schießen. Das ist also alles, was genau dort tut. Und dann für ein paar kleine Stücke Flair hier, können wir in unsere Waffenbasis gehen und eine Variable hinzufügen und wir nennen diesen Reload-Start-Sound. Und wir werden das vom Typ klingen lassen. Wollen wir es zu einem Sound-Cue machen? Ich schätze, es hängt davon ab, wo wir das so richtig einschlitzen. Lassen Sie mich einfach schnell überprüfen, was ich das vor meinen Notizen gemacht habe und ich komme in einer Sekunde zurück und welche Art von Variable, die ich getan habe. Okay, also habe ich tatsächlich gemacht, dass es Schallwelle ist. So Schallwelle, Objektreferenz, Nachladen, Ton starten. Und dann machen wir einen Nachladen und Ton. Oh Gott, ich will diesen Apostroph nicht. In Ordnung, und so können diese als was auch immer eingeschlitzt werden. Also jetzt wieder in unserem Spieler hier, raus aus, für diesen Pull-Down-Timer, lass es uns tun. Tun Sie einmal Knoten, so. Und dann lassen Sie uns einen 2D-Sound spielen, wird dieser Ton wäre die aktuelle Waffe sein. Und lassen Sie sich neu laden Sound und stecken Sie das so wie der Sound ein. Fühlen Sie sich frei, die Lautstärke zu ändern. Wie magst du? Dann haben wir einen Verzögerungsknoten. Wird seine Verzögerung für wie eine Sekunde haben. Und dann werden wir unsere du einmal zurücksetzen. Der Grund, warum wir es so machen, ist nur sicherzustellen, dass der Sound nicht mehr als einmal abgespielt wird. Denn wie manchmal kann man erwischt werden und diese Timer und machen diesen wirklich seltsamen Spamming-Typ Sound, das ist einfach sehr peinlich jedes Mal. Und dann raus zu kommen, ist, es hier raus zu tun. Lasst uns Sound abspielen. 2D, kräuseln Sie sich ein. Und wir bekommen den Reload-Start-Sound. Und dann mach es so. Okay, hier sind unsere Reload-Events, die alle so fertig sind. Wir werden nachladen, wir werden sicherstellen, dass wir keine Waffe wechseln oder gerade neu laden. Es wird gut bleiben wie dieser Spam davon. Und wir werden sagen, dass wir neu laden, wir können nicht schießen, können nicht zielen. Wir werden unsere Spaziergänge wieder normal machen und ein Geräusch abspielen. Dann werden wir diese kleine Animation ausführen, die in einem zukünftigen Video eingerichtet wird. Wir verknüpfen das in unserem Animations-Blueprint. Dann machen wir das für, wir halten die Waffe da unten für die Nachladezeit. Immer wenn wir das einschieben, wird es die Waffe wieder hochziehen. Wir machen die Mathematik für unsere Kugeln. Und dann sagen wir, dass wir nicht mehr neu laden. Wir können schießen und dann spielen wir das Geräusch. Alles klar, damit das klappt. Großartig. Wir können Feld wie diesen Abschnitt oder etwas kommentieren und wir sagen Steuerelemente. Animationen für wir werden nur zum Nachladen sagen, generisch darüber sein. So wie das. Nur wie die gemeinsamen Backs, bestimmte Teile des Skripts, wie es ist nicht wirklich wissen vielleicht nicht, was es tut oder so etwas. Also ja, das sieht alles gut aus. Wir haben nur noch eine Sache zu tun. Also lassen Sie uns das jetzt machen, gehen Sie zu unseren Projekteinstellungen. Und lassen Sie uns tatsächlich eine Eingabe für diese Aktionszuordnung erstellen. Nennen Sie es einen Neuladen und binden Sie es an die R-Taste. Typische Ego-Shooter Dinge. Dann in unseren Spieleraktions-Mappings, Lassen Sie uns weiter gehen und unter gehen, neu laden, anzeigen, das Action-Event neu laden. Und lasst uns ein paar Dinge hier machen. Also lasst uns die Last wie gewohnt herausnehmen und einschalten. Also wollen nur in der Lage sein, dies zu tun, wenn wir tatsächlich eine Waffe haben, um Fehler zu verhindern. Denn wenn ich R treffe und keine Waffe habe, wird es verwirrt. Also lasst uns die aktuelle Waffe holen. Hier werden einige unserer Funktionen an Ort und Stelle kommen, ist ein mag, voll oder leer. Und wenn Sie ein Mitglied als Waffe sind, wenn Sie sich erinnern, haben wir einen Rückgabewert. Ist unser Magazin voll oder leer? Es tut das. Drehen. Diese Variable kann ein- und ausgeschaltet werden. Wenn wir nachladen können, wollen wir das nächste, was wir überprüfen, ist: Sprinten wir? Da gehen wir. Wenn wir versuchen, neu zu laden und wir sprinten, dann wollen wir Bewegung gestoppt nennen. Wenn Sie sich erinnern, das verlangsamt unseren Charakter wieder normal und beginnt die Regeneration unserer Ausdauer für nicht Sprinten. Dann werden wir einen anderen Zweig herausziehen und wir werden Bewegungen gestoppt setzen. Wir führen das Ereignis durch, dann fahren wir weiter. Dann holen wir die aktuelle Waffe. Und wir wollen überprüfen, ob wir das derzeit noch nicht erschaffen haben, oder? Hm, okay, dann machen wir das. Lassen Sie uns also eine neue Variable in unserem Waffenbecken erstellen. Nennen Sie es feuern, machen Sie es zu einem Baleen. Alles klar, und dann möchte ich, eine neue Funktion machen. Das wird die erbärmlichste Funktion sein, die du je gesehen hast. Aber wir werden das „Stop-Schießen“ nennen. Und alles, was wir tun, wenn wir aufhören, ist zu schießen und es so falsch zu machen. Buchstäblich, das war's. Und dann innerhalb unseres Anfangs, gerade vorerst aus dieser Linie zu schießen. Lassen Sie uns machen, ist das Brennen wahr. Also, jetzt wieder in unserem Spieler, lasst uns schießen. Also feuern wir. Es hat ein Gehirn gezogen. Aber wir haben es schon getan. Peinlich. Ok. Wenn wir also versuchen, neu zu laden, während wir unsere Waffe feuern, wollen wir nicht weiter auf die Waffe schießen, während wir nachladen, denn dann wird die Mathematik wirklich verwirrt. Wir halten den Auslöser der automatischen Waffe gedrückt, oder die aktuellen Kugeln gehen runter, aber es versucht auch, die Mathematik zu machen. Also wollen wir es sein, wir wollen aufhören, so zu schießen. Und dann fügen wir den falschen Anruf hinzu, laden Sie ihn neu und ziehen Sie ihn dann so hinein. Also, wenn wir ja sind, wird das Überfeuern aufhören zu schießen, bevor wir nachladen können. Wenn wir nicht feuern, dann wird es einfach neu geladen. So können wir sagen, dass während des Nachladens Stopps vom Schießen weg ist. Also gibt es eine ganze Menge von diesen seltsamen kleinen Dingen, wie du bist, Oh, schieß auf meine ganze Waffe, um zu schießen, während ich versuche, sie neu zu laden. Aber das sind die Dinge, wenn dein Skript und du musst an alles denken. Also haben wir was? denke an alles in dieser Klasse, okay, ich muss decken. Das nächste, was zu tun ist, auf den Kopf in Ihre Waffe Kinder Kinder. Und Sie können einige Sounds für das Nachladen, Starten und Ende einschalten. Und dann können Sie eine Nachladezeit festlegen. Und dann stellen Sie sicher, dass Sie einfach reingehen und sicherstellen, dass Ihre Zeitschriftengröße nicht bei 30 liegt, was die Standardeinstellung ist. Stellen Sie es auf das, was Sie haben, ist Ihre aktuelle Munition. Und dann, wenn Sie einspringen und spielen, werden Sie sehen, dass, wenn ich die Pistole, zum Beispiel, und ich schießen TCR Munition geht nach unten. Wenn ich die R-Taste drücken, es wird neu geladen und wenn ich versuche zu schießen, Es lässt mich nicht, bis es wieder auf 12 zurückgesetzt wird und ich schießen kann. Dann, wenn ich das auf 0 zurückgehen lasse und ich versuche zu schießen, so dass es mich automatisch neu lädt und es hat all diese Mathematik für mich so gemacht. Und dann, wenn ich etwas tun würde, mal sehen, habe ich das auf 24 gesetzt. Lassen Sie mich das einfach auf 12 oder so etwas einstellen. Wenn ich hierher komme, hast du eine Pistole und ich schieße und mir geht die Munition aus. Also wird es direkt dort neu geladen. Nun, wenn ich versuche, neu zu laden, Es lässt mich nicht neu laden, weil ich 0 und die Reserve Rutsche lässt mich nicht nachladen. Immer noch nicht. Und dann weiß ich nicht, ich kann nichts nachladen. Ich denke, das einzige, was passiert ist, war, wo tut, dass es den Reload-Sound gespielt. Aber das wäre eine schnelle und einfache Lösung, die wir einfach umsetzen können. Indem Sie sicherstellen, indem Sie einen solchen Scheck machen, ist ihre Munition übrig. Wir könnten einen Zweig oder so etwas hinzufügen, genau hier und dann genau da, um das zu tun. Aber ja, das sollte ziemlich einfach sein, da reinzulegen und zu tun. Interessant. Ja. Ok. Nun, ich werde das klären und ich werde mich bei Ihnen melden , um etwas zu finden, das funktioniert. Aber ja, das ist das Nachladen. Auf den Punkt gebracht. Es funktioniert alles. Es ist wunderschön. Also danke, dass Sie zugesehen haben. Wir sehen uns den nächsten. 22. Weapon neu: Hallo an alle und willkommen zurück zu einem anderen Video. In diesem werden wir weiter mit unserer Nachladefunktion in der Lage sein, tatsächlich animieren oder Waffen. Zwischen den Videos habe ich ein paar Dinge gemacht, die hoffentlich auch du getan hast. Wenn nicht, nehmen Sie sich jetzt etwas Zeit, um das zu tun. Also ging in jede einzelne Waffe und ich setzen verschiedene Klänge verwendet werden, die unteren und die Strahlen diejenigen, Ich fühle mich, dass sie besser klingen als die, die Teil dieses Pakets, die tatsächlich genannt werden Reload, aber das liegt an Ihnen. Eigentlich ändern Sie die Kugel verteilt auf diese ein wenig. Diese sind nur wichtig. Eigentlich. Eigentlich spielt es eine Rolle. Und andere Waffen wollten sagen, dass es nur auf dem Hit-Scan 12 wichtig ist. Es spielt überhaupt keine Rolle. Ich sagte eine Nachladezeit und dann sorgte ich dafür, dass die Magazingröße in der aktuellen Emma die gleiche Sache war. Also jetzt, wenn wir das Spiel betreten und eine Waffe aufnehmen, schießen, neu laden. Verschiedene Klänge und alles. Ja, du verstehst die Idee. Eine Sache, die ich zeigen wollte, also erinnere dich in einem vorherigen Video, das ich darüber gesprochen habe, wie wenn wir sprinten, wir etwas tun wollen, während wir versuchen zu sprinten, um Fehler zu beheben, während wir schießen. Und das werde ich jetzt demonstrieren. Es kommen also keine Bolzen raus. Aber VC, wenn ich renne und schieße, ist die Waffe nach links gerichtet, aber sie schießt immer noch gerade. Das ist also eine Sache, die wir beheben wollen. Also, wenn wir in den Spieler gehen und wir unter, hat eine Waffe, was wir getan, bevor wir erstellt, dass stoppen Schießen Funktion. Also lasst uns weitermachen. Einige davon habe ich in Kategorien eingeteilt. Ich glaube, ich habe eine Waffe gemacht, die aktuelle Waffe, und wir haben diese Einstellung letztes Mal gemacht. Stecken Sie das da rein und stecken Sie es dann ins Spiel. So wie solche. Und dann könnte ich einfach zu all dem umgeleitet werden und es ein wenig bewegen. Das vielleicht. Okay, jetzt hören wir auf zu schießen. Ich weiß nicht, dass dies nicht alle Schritte dafür sein könnte. Es war nicht oh, ich glaube, ich weiß warum. Halten Sie 1 Sekunde fest. Ja. Eine andere Sache, die wir tun müssen, ist, dass wir in unsere Action-Mappings in unserem Spieler gehen und tatsächlich etwas mehr hinzufügen müssen. Also lassen Sie uns voran und beginnen, indem Sie dies kopieren. Wir wollen etwas auf dem veröffentlichten nur im Allgemeinen hinzufügen. Aber von diesem Anfang an werde ich diesen Hinweis vorerst brechen. Wenn wir also eine Waffe haben, wollen wir ein paar verschiedene Schecks machen. Der erste ist, dass wir eine neue Variable dafür erstellen müssen und sagen, dass Waffenfeuer geladen wird. Das ist etwas, das wir später hinzufügen werden. Wir werden es nicht tun, also würden wir aus dem wahren Zweig gehen. Das wird uns erlauben. Also, wenn Sie jetzt in das Spiel gehen, kann dieses Plug-in nicht funktionieren. Also, wenn Sie jetzt bemerken, können wir diese Waffe so schnell schießen, wie wir klicken können. Und das Gleiche gilt mit dem Scharfschützengewehr. Und dasselbe gilt für die Granate. Wir wollen, dass diese tatsächlich Brandraten haben , damit diese Variable das später kontrollieren wird. Um sicherzustellen, dass wir nicht einfach nur Spam schießen können. Aber dann wollen wir überprüfen, ob wir sprinten, mieten. Wenn wir sprinten, dann wollen wir zuerst die Bewegung gestoppt, und dann können wir feuern. Wir sprinten sie nicht, wir feuern einfach. Dann. Lassen Sie uns dies tun, wenn wir dies vor allem für automatische Waffen wird halten Sie den Auslöser für das ist vor allem, was die Stop Schießen. Was das ist vor allem für Stop Shooting, aber wir können einfach kopieren und einfügen, dass. Ziehen Sie es darunter. Und wenn wir eine Waffe haben, hören wir auf, Zeug zu schießen. Sie macht nicht wirklich viel von irgendetwas. Sie sind meist nur Werke für automatische Waffen sind automatische Waffe, aber jetzt, wenn wir das Spiel passieren, sollte dies funktionieren. Jetzt sprinte ich und dann schieße ich. Sie können sehen, wie meine Waffe nach vorne gerichtet ist und meine Bewegungsgeschwindigkeit auf Normal zurückgesetzt wird. In Ordnung. Also, das ist jetzt alles fixiert und gut und gut. So ja. Was wir jetzt tun können, ist, dass wir in den Animations-Blueprint unseres Charakters gehen können. Wir können das tatsächlich animieren. Also lassen Sie uns in unser Veranstaltungsdiagramm gehen und wir werden ein paar weitere dieser Referenzen hier erstellen wollen . Lassen Sie uns also einen Pull-Down-Timer des Typs erstellen. Und wir nennen eins ist. Und das Laden eines Booleschen. Und genau wie zuvor mit diesen anderen, wollen wir den Spieler greifen und wir wollen, dass die Variable zu holen Timer. Und wir wollen das als Pull-Down-Timer einstellen. Hier. Sie erinnern sich, dass wir diesen Pull-Down-Timer erstellt haben Wir setzen es hier, setzen dies als Variable hier, und setzen es dann als die gleiche Variable hier. Ich werde das länger machen. Also werde ich beide in die gleiche Kiste legen. Ok. Also lasst uns weiter gehen und auch bekommen ist, dass wir diese Nachladen einstellen, die von hier aus. Und wir holen den Spieler wieder. Und Get ist das Nachladen so. Okay, jetzt haben wir diese Variablen von unserem Player in unseren Anime-Blueprint synchronisiert. Jetzt können wir wieder in unser Animationsdiagramm gehen. Und dann haben wir eine Waffenpose. Also lasst uns Waffenpose aus der Ausgabe löschen, weil wir das jetzt verwenden müssen. Also lasst uns weiter gehen und eine Waffenpose wie diese packen. Und wir werden modifizieren Knochen wieder transformieren. Wir wollen nur Rotation machen. Ja. Ja, ja. Also wollen wir die Skala unterbelichten. Wir werden die Übersetzung und die Rotation behalten. Und wir werden beide so aufteilen. Also bekommen wir einen Knoten, der so aussieht. Dies wird wie ein lokaler die Komponenten automatisch hinzufügen. Okay, und dann gehen wir weiter und holen uns wieder eine Waffenposition. Und wir wollen Posen mit einem Bool mischen. Und dann wird das in eine neue Geldpose stecken. Und wir werden das eine Menge nennen, die ich posiere, ich bin nur irgendwie, was die Zufallsnamen an dieser Stelle. Und dann werden wir die Ausgabe ausladen lassen. Also, nur um hier einen zusätzlichen Schritt zu durchlaufen, wollen wir, dass dies angeschlossen wird. Ein Falsch wird ein bisschen sein. Dann wird die Waffenposition wahr, richtig sein. Dann lasst uns greifen wird neu laden und sagen, nicht neu laden. Ok. Also, wenn wir nicht neu laden, dann nehmen wir nur weniger im Wesentlichen, was die Innovationen, die wir verwendet haben. Aber wenn wir neu laden, dass wir transformieren wollen, einen Bone modifizieren, wird unser Alpha-Wert unser Pull-Down-Timer sein. So dass 0,5 Sekunden von der Bewegung von 0 zu eins und dann eine zurück zu 0. Und wir werden in der y von fünf rotieren Rolle und die xübersetzen von fünf rotieren Rolle und die x . Oh, wir müssen eigentlich Wirbelsäule, Wirbelsäule 1 machen wollen. Also, das Ganze nach unten zu entfernen. Also ist es immer noch nicht wie ich. Oh, stellen wir sicher, dass wir für beide existieren. Das war das Problem. Okay, cool. Also, jetzt können wir das Feld kommentieren und sagen wir, es bewegt sich nach unten, gut neu laden. Und es wird es dort unten halten, bis unser Nachlade-Timer ausläuft , der dynamisch von uns in der variablen Nachladezeit eingestellt wird. So sieht das also aus. Nun, wenn wir hier reingehen und ich meine Waffe schnappe und sie ein paar Mal schieße und dann nachladen, nach unten bewegt, wieder hochbringt. Und ich treffe unsere gerade jetzt versuchen, neu zu laden. Es macht nicht diese Animation, sondern fotografiert nicht. Mir geht die Munition Student automatisch aus. Unten. Da gehen wir. Das funktioniert perfekt. Jetzt haben wir ein vollständiges Nachladesystem in unserem Spiel. Es macht die ganze Mathematik. Es ist, es ist animierend, Dinge automatisch für uns zu tun, wenn wir ausgehen. Es erlaubt uns nicht, ein Ziel zu schießen, und wir können im Moment sogar allgemein benennen, aber es wird uns nicht erlauben, bestimmte Dinge zu tun. Ja. Ich sehe momentan keine Probleme damit. Ich denke, alles funktioniert gut, also ja, in der nächsten Reihe von Videos, werden wir weiter einige mehr Funktionalität oder Waffen hinzufügen und sie anpassen und einige coole Sachen machen. Also hoffe ich, Sie dort zu sehen. 23. Aufnahme: Hallo an alle und willkommen zurück zu einem anderen Video in diesem ein, dieses wird eigentlich wahrscheinlich das kürzeste sein noch. Ich denke, wir werden es sehen, weil wir in der Lage sein werden, unseren Stempel zu erschießen. Da. Wir werden anfangen, diese Waffen mit ein paar coolen Sachen aufzubauen. Also gehen wir in unsere Waffenmappe und öffnen wir die Pistolenwaffe. Öffnen Sie den vollständigen Blueprint-Editor. Und wir können diese Knoten löschen. Jetzt solltest du in deinem Ansichtsfenster deine Pistole als Waffennetz haben. Und Sie können Pistole Pickup Menge, die aktuelle Munition und einige dieser Dinge einstellen . Aber was wir tun wollen, wollen wir einfach zwei sehr einfache Dinge machen. Wir wollten eine Veranstaltung bekommen. Fang an zu schießen. Wir klicken mit der rechten Maustaste darauf und wir werden die übergeordnete Funktion wie diese hinzufügen. Wir erstellen also, wir verknüpfen dieses Ereignis mit dem, das hier im Elternteil existiert. Wenn wir diese Waffe schießen, wollen wir, greifen wir tatsächlich das Waffennetz. Und wir werden sagen, Play Animation, die Animation, die wir spielen wollen. Also kamen diese Waffen mit Animationen. Es gibt eine Feuerpistole W. Sie können dazu blättern und das öffnen. Also kriegen wir dieses Geräusch. Es ist ein wenig seltsam, aber wir bekommen ein wenig Schnauze Blitz, dass Sie sehen, wie der Hammer bewegt sich so. Also, das ist Animation wird so spielen. Und dann wollen wir Ereignisse nachladen Gewicht. Und das müssen wir nicht tun. Und dann die Berechnung neu laden. Machen wir es einfach, nur um sicher zu sein, dass es mit dieser Waffe wie beabsichtigt funktioniert. Wir müssen es vielleicht nicht so machen, aber ich werde es nur hinzufügen, um sicher zu sein. Also, wenn wir jetzt reingehen und spielen, bekommen wir unseren Stempel. Wir schießen. Jetzt können wir die Waffe schießen. Und es sieht so aus, als würde es schießen. Es hört sich an, als sollte es bemerkt werden. Sie können sehen, wie diese Kugeln sind jetzt perfekt Landung des Radikalen. Und das liegt daran, dass unsere Kugel so ausbreitet. Wenn ich hier wieder reingehen und zur Kugel ausbreiten gehen würde und ich bei 250 KI-Bürgern bin als etwa 750, wie etwas wirklich Großes. Nur um dies zu demonstrieren, landen überall Gelbe. Ich möchte, dass meine Pistole ziemlich genau ist. Das sind sie. So sollten Sie den Stößel. Das ist alles, was wir in diesem Video tun müssen. Im nächsten Schritt fügen wir der Waffenbasis ein bisschen mehr hinzu und fügen etwas Rückstoß hinzu. Wird das tun. Und dann werden wir anfangen, auf die restlichen Waffen schießen zu können, die zugegebenermaßen alle komplizierter werden als diese Pistole. Aber dieser hier sollte dir zeigen, wie es geht. Also danke, dass Sie zugesehen haben. Ich werde in der nächsten sehen. 24. Realistisches Rückruf hinzufügen: Hey alle und willkommen zurück zu einem anderen Video. In diesem Video werden wir unseren Waffen Rückstoß hinzufügen, um ihnen ein wenig eine Waffe zu geben, zu treten, sie vertikal in die Luft zu schießen, während wir schießen, nur damit sie sich ein wenig realistischer fühlen. Also lasst uns weitermachen und das tun. Wir werden in unsere Waffenbasis gehen wollen, die ich offenbar schon offen habe. Und wir machen das einfach innerhalb unseres Veranstaltungsdiagramms. Also lasst uns etwas Freiraum besorgen. Und wir werden drei benutzerdefinierte Ereignisse erstellen. Einer namens Start Rückstoß. Wir haben einen namens Stop-Rückstoß und einen anderen namens Reset-Rückstoß. Das wird also die Waffe nach oben treten lassen. Das wird das nicht verhindern, und dieser wird die Waffe für uns wieder nach unten bringen. Um das Spiel ein bisschen schöner für uns zu machen. Um dies erreichen zu können. Wir müssen eine Zeitleiste benutzen. Also nennen wir diesen Rückstoß. Sicher. Dies wird immer von Anfang an zu spielen. Dieser Stop-Rückstoß wird in Stopp und Reset sein. Es wird in umgekehrter Richtung sein. Und wir können diesen Rückstoß tatsächlich nennen, um ihn für Sie so konsistenter mit den Namen der Timeline zu machen. Gehen wir weiter und öffnen diese Zeitachse. Das wird wirklich, wirklich schnell sein. Dieser hier, es wird eine Schwimmerbahn sein, er, baut seinen Namen. Dieses Alpha wird Punkt 1 sein, 0 Sekunden lang. Und dann auf dieser wirklich kurzen, dann wollen wir drei Keyframes haben. Sie legen einen Wert von Zeit 0 und 0 fest. Die zweite wird Zeit von 0,02 in einem Wert von eins sein. Und dann wird dieser Zeit 0,1 im Wert 0 sein. Und wie üblich, werden wir diese für ihre Schlüsselinterpolation automatisch einstellen. So sollte unsere Zeitachse aussehen. Wir brauchen keine Schleife oder tun etwas anderes, damit wir es so schließen können. Das nächste, was wir tun wollen, ist, dass wir aus dieser Richtung ziehen. Dies ist eine Aufzählung, die automatisch aus dieser Zeitachse herauskam. Wir haben das nicht selbst gemacht und wir werden es einschalten. Dann aus dem Update wollen wir dies tun. Und so ist das immer eine Richtung von vorwärts oder rückwärts, oder vorwärts oder rückwärts. Okay, aus unserer Timeline, lasst uns weitermachen und den Spielercharakter holen. Und wir wollen Controller-Pitch-Eingabe hinzufügen. Okay, also für vorwärts, wollen wir, dass das in die Tonhöhe geht. Und für rückwärts wollen wir auch, dass dies in die Tonhöhe geht. Wir werden die Geschwindigkeit verschiedene Werte einstellen. Also lassen Sie uns hier rausziehen. Und wir werden uns daran erinnern, dass Alarm lineare Interpolation ist. Es bewegt sich also von A nach B über Alpha. Es geht also von A nach B über Alpha ist wie eine bestimmte Zeit. So wie Sie können zwei verschiedene Zahlen lernen oder mit Farben gearbeitet. Also, wenn Sie ein ist wie blau und B ist rot, kann Schleife über wie 1 Sekunde und es wird, anstatt wie blinkend, wird es irgendwie von einer Farbe zur nächsten verblassen. Es gibt also verschiedene Möglichkeiten, sie zu verwenden. Alpha wird also unser Alpha-Wert sein , der 0,1 Sekunden sein wird. A wird bei 0 belassen und B wird zu einer Variablen heraufgestuft werden. Und wir nennen diesen Waffenkick. Das wird so sein, wie viel unsere Waffe tatsächlich alle 0,1 Sekunden in die Luft tritt. Also, wenn wir das kompilieren, oh gosh. Lassen Sie uns dies einfach standardmäßig auf negativ 0.05 setzen. Also nicht eine ganze Menge. Dann wird dieser Rückgabewert diese Werte sein. Nur für diesen hier, für rückwärts, werden wir es mit negativem multiplizieren. Also, oder ja, ich sagte, negativ, habe es einfach nicht getippt. Wollte so rückwärts wie das umgekehrt sein. Und wir brauchen einen Stecker, der in das Ziel, weil einer oder einer, der mir einen Fehler gab. Alles klar, das sieht gut aus. Lass uns voran gehen und ich werde nur den Spielercharakter einen weiteren Verweis darauf bekommen. Und dann raus hier, werden wir Controller hinzufügen, Ihre Eingabe. Also werden wir das einfach rauf und runter bringen. Wir werden auch eine Art Rassel von links nach rechts ein bisschen machen. In für diesen Wert. Lass uns einfach voran gehen und einen zufälligen Float in Reichweite bekommen. Und wir machen das. Negativer Punkt 15 zu positiven Punkten 15, so. Sie können sich frei fühlen, zu erhöhen oder zu verringern, ändern Sie diese Zahlen, wo immer Sie wollen, indem Sie es ausprobieren und es nach Ihren Wünschen machen. Sobald wir diese Zeitlinie durchlaufen haben, werden wir den Rückstoß rückgängig machen wollen. Also werden wir es rückgängig machen. Wir schicken es zurück. So wie das. Das hat mir nicht wirklich geholfen. Dieser Umleitungsknoten sieht gut aus. Wir werden es rückgängig machen. Dann werden wir einen Lese Trigger wird sich verzögern. Der Unterschied zwischen einer Verzögerung in einer abrufbaren Verzögerung ist, dass es hier sagt. Führen Sie eine Aktion mit einer abrufbaren Verzögerung rufen Sie die Aktion auf, während sie heruntergezählt wird Wir setzen den Countdown auf die Dauer zurück. Der Grund, warum wir hier lesen wollen, ist, dass, wenn wir umgekehrt sind, richtig, und dieser Timer geht nach unten, und er zählt immer noch und wir fangen wieder an zu schießen. Wir wollen diese Verzögerung auf das zurücksetzen, was sie vorher war. Und wir wollen anfangen, wieder nach oben zu gehen. Wählen Sie, wir wollen wie Boom gehen, und dann kommt es wieder rein und wir schießen wieder. Wir wollten und in der Lage sein, das zu tun. Also ja, es kann ausgelesen werden und dann wollen wir nach 0,05 Sekunden anhalten oder zurückstoßen. Das ist also eine wirklich, wirklich kurze Zeit. Lass uns voran gehen und Kommentarfelder, Ganze Sache. Und wir werden sagen, es fügt Rückstoßeffekt auf Waffen wie diese. Das letzte, was wir tun müssen, ist, wir müssen, Lassen Sie uns Rückstoß Ereignis starten. Das wird in den Drehbeginn sein. Also, nachdem wir die Zeilenverfolgung berechnet haben, sagen wir einfach, starten Rückstoß so. Und dann werden wir sagen, dass es so feuert. So können wir das jetzt vielleicht nicht zu sehr bemerken, aber wir sollten ein wenig sehen, wie ich denke, Bildschirmbewegungen. Wenn ich die Maus einfach nicht mit der rechten Maustaste bewege, sehen Sie, dass es den Bildschirm ein wenig klappert. Es bewegt sich, wenn ich das machen würde. Also gehen Sie in die Pistole und lassen Sie uns diese eine lächerliche Zahl wie negativ machen Sie versuchen, sich daran zu erinnern, ob Negative es schlimmer oder besser machen und sehen. Ja. Also, wie negative zwei vielleicht ein bisschen zu lächerlich. Ja, das sehe ich. Eimer wie ein Bronco. So negativ wäre man eine Menge wie negativ 1 oder es könnte wie Ihr Raketenwerfer Art des Rückstoßes sein. Als ob ich, ich werde die Maus nicht bewegen und sie wird klicken. So sehr bewegt es sich so aus. Also 0.05 für wie eine Pistole ist ziemlich gut, hat nur ein wenig Rückstoß, weil man es so schnell schießen kann. So wie das. Siehst du, ja, du kannst dich frei fühlen. Und wir, wir können diese Waffen noch nicht erschießen. Es könnte also etwas für später zu tun sein. Aber ich füge diesen Waffenstoß in unsere Waffendaten ein. Ja, das ist also eine andere Variable, die je nach Waffe dynamisch eingestellt werden kann . Ich denke, das Auto Gewehr war wie negativ 0,1. Also, um Ihnen ein Beispiel zu geben. Also ja, so dass der Rückruf passieren wird, egal ob du zielst oder nicht. Also, das ist ich habe Rückstoß, nicht super verrückter Komplex, wo macht das Hinzufügen einiger Pitch in Giereingaben auf unserem Bildschirm, wenn wir die Waffe schießen. Also hoffe, ihr habt dieses Video genossen, fand es hilfreich, fand es informativ. Und wir sehen uns im nächsten. 25. Aufnehmen: Alle und willkommen zurück zu einem anderen Video. Dieser wird wahrscheinlich eine Menge Liebling der Leute sein, der, auf den sie gewartet hatten. Weil wir in der Lage sein werden, unsere Auto- oder Sturmgewehre, Gewehr oder wie immer Sie es nennen wollen, zu schießen . Wir schießen eine automatische Waffe und du würdest den Abzug gedrückt halten und es wird nur bam, bam, bam, bam, bam, bam, bam, bam, bam, bam. Okay. Ich weiß, das ist es, was ihr alle sehen wollt. Also machen wir es hier in diesem Video. So tut eigentlich ziemlich einfach zu tun. Gehen wir weiter und öffnen unser Auto-Gewehr. Und wir können unsere Geräusche überprüfen und ich werde unsere Kugel wie 100 ausbreiten lassen, etwas Echtzeit und 0,5 die Steckdose, das und das und all das Zeug. Sie können das immer bearbeiten, indem Sie einfach hier mit diesem ausgewählten oder Viewport sollte die Waffe haben. Aber jetzt, was wir tun werden, ist, dass wir ein Skript erstellen. Genau wie zuvor mit der Pistole wollen wir das Event starten lassen. Und wir möchten den Aufruf der übergeordneten Funktion hinzufügen. Aber wir wollen das nicht sofort einstecken. Wir werden eine neue Variable erstellen, die spezifisch für diesen Blueprint ist. Und wir sagen, ist Auto-Gewehrschießen? Schießt es? Das wird prüfen, ob unser Auto-Gewehr feuert, weil es automatisch ist. Es ist nur eine zusätzliche Möglichkeit, zu überprüfen. Also, wenn Ereignisse anfangen zu schießen, werden wir diesen booleschen Wert auf wahr setzen. Und wir wollen, wir wollen eine benutzerdefinierte Veranstaltung erstellen und wir werden es Auto-Gewehrfeuer nennen. Und was wir tun werden, ist, dass wir dieses Ereignis hier Auto-Gewehrfeuer nennen. Und dann, was wir hier tun wollen, ist, dass wir ein Timer-Ereignis einrichten. Und dieser Timer, das Ereignis auf diesem Timer wird dieses sein , das wir gerade hier erstellt haben. So wie solche. Wir wollen dies zu einer Schleife machen und wir werden dieses Mal zu einer Variablen fördern, und wir nennen diese Auto-Gewehr-Feuerrate. So können Sie dies so einstellen, wie Sie es persönlich wünschen. Da steht, wie schnell Ihr Auto Gewehr schießen wird. Ich werde 0,1 machen. Je niedriger es ist, desto schneller wird es gehen. So wird 0.05 doppelt so schnell sein wie diese. Wenn du es wie eine Sekunde machst, wäre es wie Boom, Boom, Boom, Boom, Boom, Boom. Aber wenn es 0,1 war, wird es so sein wie, wissen Sie, es wird diese Art von Effekt machen. Also für Auto-Gewehrfeuer, eine Sache, die wir überprüfen wollen, ist unsere Auto-Gewehrschießen. Beenden Sie die Aufnahme. Und das ist, was wir unsere Elternfunktion nennen, um mit der Aufnahme zu beginnen. Also stecken wir das so an. In Ordnung, also jetzt haben wir das Eltern-Event los. Und wir wollen eine Animation auf unserem Waffennetz spielen. Es hat es automatisch für uns gepackt. Sehr nett. Und dann wird diese Animation Feuergewehr genannt. In Ordnung, jetzt komm ich hier raus, möchte ich eine zusätzliche Art von Scheck für uns erstellen. Also lasst uns voran gehen und aktuelle Kugeln holen. Oder Strom ist es Munition? Aktuelle AMA abrufen. Und wir werden sagen, ist das kleiner oder gleich 0? Der Grund, warum ich wie ein Doppel-Check auf diesem hier mache, ist weil ich mit dem automatischen Brennen festgestellt habe, dass es manchmal einfach weiter schießen kann, aus irgendeinem Grund. Auch wenn wir das haben. Dieselbe Art von Funktion, die im Elternteil ausgeführt wird, bleibt es manchmal immer noch stecken. Es gibt also nur einen zusätzlichen Weg zu sagen, dass wir aufhören werden zu schießen. Und dann werden wir, Ich habe Spielerreferenz, die von unseren Eltern kommt und sagen, reload. Nur um sicherzustellen, dass es das tut, was es getan hat. Aber manchmal kann man einfach einen zusätzlichen Schritt bekommen weil es manchmal in diesem Feuer richtig gefangen werden kann. Das nächste, was wir tun wollen, ist, dass wir ein Ereignis stoppen schießen, das auch vom Elternteil stammt, was diese Variable einfach zu falsch macht. Wir werden das falsch machen. Und dann, was wir tun werden, ist, dass wir aus unserem Timer ziehen und wir sagen, klare und ungültige Timer. Ich handle und ich möchte nicht, dass diese eine verbinden, um sich so zu verbinden. Ja, es ist irgendwie an einem schlechten Ort, egal wie du es geschnitten hast, aber oh, na ja, was auch immer. Also, was das tut, wird dieses Ereignis haben, wo wir anfangen zu schießen. Und wir werden dieses Ereignis ausführen, das einen Timer einrichtet. Und es läuft dieses Eltern-Shooting-Event , das wir alle 0,1 Sekunden einrichten, oder was auch immer wir die SAS einstellen, es zieht diese Animation. Jedes Mal. Wenn uns die Munition ausgeht, hören wir auf, eine Nachladung zu schießen. Und wenn wir dann den Auslöseknopf loslassen, hören wir auf zu schießen. Sollte aufhören zu schießen und den Timer zu löschen. Hier ist der Moment der Wahrheit. Sehen Sie, ob das funktioniert, können Sie auf einen Fehler stoßen. Es könnte etwas fehlen in der Figur, aber wir werden sehen, wow, das waren eigentlich perfekt zu Hause ich gehe. Und wir haben 0 erreicht. Und es wird versuchen zu schießen. Es funktioniert nicht. Sie sehen, wie sich die Kugel ausbreitet. Und das funktioniert großartig. Also können wir immer noch diejenigen feuern, die wir nicht runtergezogen haben, und einfach überall gesprüht haben. So wie das. Vielleicht all diese hübschen roten Linien, die wir waren. In Ordnung. So schießen Sie das Auto Gewehr. Ich denke, das ist alles, was wir tun müssen. So wie Sie nur zeigen, wenn ich diese Feuerrate auf 1 Sekunde ändern würde, wäre wie ein schweres Maschinengewehr. Das kann nicht einmal gefallen. Sheesh hat das jemals wirklich klein gemacht, wie 0,005? Wahrscheinlich eher wie ein S, M, G oder so. Ich werde nicht retten. Ich war so, ich schwöre es. Es ist wie, oh, ja, alles, was du die Animation so schnell abspielen kannst. In Ordnung. Brechen Sie das Spiel an diesem Punkt. Okay. Ja, das ist das Auto-Gewehr. Es funktioniert. Es tut sein Ding. S alles, was wir tun müssen. So können Sie voran gehen und Sie können auch die Reihenfolge ändern. Ich setze dies den Waffenkick, um negative 0.1 oder so etwas zu mögen. Und dann können Sie mehr Kick bekommen. Oh Gott, hat sich das nicht auf sich selbst zurückgesetzt? Komm schon, Spiel. Negativer Punkt. Oh mein Gott, jetzt bin ich verwirrt über meine Nummern. Das wird 0,1 sein. Dies wird negativ 0,1 für den Kick sein. Okay? Los geht's. Da gehen wir. Sie sehen also, wie es sich nach rechts und links bewegt, etwas zu sagen, nun, das sind es nicht. Also sind sie es nicht, es bewegt sich nicht perfekt gerade nach oben. Es ist Zickzack rechts und links. Ich bewege die Maus überhaupt nicht. Und das sind die Ergebnisse, die wir bekommen. So ziemlich cool. Ja. Hoffe, ihr habt dieses Video genossen. Und ja, wir sehen uns im nächsten. 26. Aufnahme: Hallo an alle und willkommen zurück zu einem anderen Video. In der letzten Lektion haben wir gezeigt, wie man das Sturmgewehr herstellt. Und in diesem werden wir unsere Aufmerksamkeit auf die Schrotflinte lenken. Das ist unsere letzte Treffer Scan-Waffe. Dieser wie die anderen wird ziemlich einfach, ziemlich einfach sein. Nur ein paar Schritte. Dieses Video sollte nicht zu lang sein. Also machen wir weiter und öffnen unsere Waffenbasis und unsere Schrotflinte. Innerhalb der Waffenbasis werden wir ein paar Variablen erstellen. Wir werden diese eine Pellet-Zählung nennen, und wir werden das in ganzzahliger Zahl machen. Dies wird repräsentieren, wie viele einzelne Pellets Sie aus der Schrotflinte schießen möchten . Wählen Sie im Wesentlichen aus, wie viele einzelne Zeilenspuren Sie möchten? Es ist wahrscheinlich der einfachste Weg, um es zu erklären. Also was eigentlich, weißt du, wir werden das da reinlegen. Ja, ja, ja, ja. Und dann haben wir noch eine Variable und nennen das ist Schrotflinte. Und das wird ein Boolean sein, nicht für Medline. Ein boolescher Wert. Da gehen wir. Wenn wir nun zu unserem Schock und unserer Waffe gehen und diesen Editor geöffnet haben, sollten wir sehen, dass diese Waffen diese Variablen sind. Wir werden das auf acht setzen. Also, was ich tun werde, und dann wird das eine Schrotflinte. Diese Variablen, ich werde sie nur in eine Kategorie in dieser Spalte setzen. Schrotflinte, dass unsere anderen und anderen Waffen sie nicht sehen müssen, weil sie nur in diesem eine Rolle spielen werden. In Ordnung, also genau wie zuvor, in unserem Schock- und Ereignisdiagramm, gehen wir zu Ereignissen, fangen wir an, auf die Eltern zu schießen. Stecken Sie es an, stecken Sie es an. Und dann greifen wir das Waffennetz und spielen eine Animation. Denken Sie daran, dass diese Waffen mit Animationen kamen. Dieses Waffenpaket. So bekommen wir diese Feuerschrotflinte. Wenn wir also diese Animationen nicht hätten, müssten wir sie entweder selbst machen oder einen verrückten wie Spawn-Teilcheneffekt im Klang an Orten machen und sie im Wesentlichen selbst machen. Die Tatsache, dass diese Waffen mit Animationen kommen, ist daher äußerst praktisch. Ähm, ja, es gibt ein paar Dinge, die ich gerne für einige dieser Waffen tun würde, angefangen mit der Schrotflinte, weil ich nicht in der Lage sein will, das zu schießen. Also lasst uns in unseren Charakter gehen. Und in der Ereignisdiagramm, einige offene Fläche, Lassen Sie uns es ein benutzerdefiniertes Ereignis machen und rufen Sie diese Feuerrate. Ich mag diesen Namen. Cal. Feuerrate berechnen. Ziemlich cool. Ziemlich cool. Oh, weißt du was? Das ist peinlich. Wow. Machen wir das in der Waffenbasis. Tut mir leid, Lieblingswaffe im Grunde. Machen Sie ein benutzerdefiniertes Ereignis in nennen Sie es Feuerrate. Von 3k. Wir hätten den Spieler technisch auch tun können. Aber wann immer es den Spieler hat und lasst uns bekommen ist eine Waffe Feuer laden. Lass es uns einstellen. Setzen Sie dies auf „wahr“. Und dann ziehen wir eine Verzögerung heraus. Und mal sehen, haben wir gemacht und ich denke, wir haben eine Feuerrate gemacht. Noch. Siehst du, das ist manchmal das Schlimme, dass ich die wirklich in die steckt. Ok. Und dann lassen Sie uns eine Feuerrate nennen und es schweben lassen. Stecken Sie das ein. Du musst es jetzt nicht als irgendetwas einstellen. Nun, das hat es in den Blaupausen gesetzt. Schnappen Sie sich das. Es gäbe also falsch. Und nur nehmen Sie diese und speichern Feuer wütete für nicht nicht Adam, Adam Metadaten können nicht sprechen für nicht-automatische Waffen z und verhindern Spamming, schießen diese Waffen. Also, wenn Sie sich in unserem Spieler erinnern, und das sollte in einer unserer Action-Mappings genau hier sein. Wir wollen schießen ist Feuer, ist Waffenfeuerladen. Wenn es nicht ist, dann können wir schießen sind weg. Also in diesem Fall, was auch immer unsere Feuerrate eingestellt ist, da sie diese Variable ein- und ausschalten wird. Also können wir nicht schießen. Also können wir nicht einfach so schnell schießen, wie wir klicken können. Also in der Schrotflintenwaffe, gehen wir weiter und nennen diese Ereignisfeuerrate berechnet für jede Waffe, die wir wollen, dass dies beeinflusst. Wir müssen dieses Ereignis anrufen. Das wird also auf der Schrotflinte, dem Scharfschützengewehr und dem Granatwerfer genannt . Die einzige Waffe sagte, dass es auf den Rest von ihnen gebraucht wird, das Auto-Gewehr, du hältst es einfach bis zum Pixel. Sie können so schnell schießen, wie Sie klicken können. Und der Raketenwerfer hat nur eine Rakete im Magazin. Also, wenn du es schießt, wird es sowieso neu geladen. Sie müssen es also nicht tun, es ist überflüssig. Das ist also eine Sache, die ich tun will. Es gibt eine andere Sache, die spezifisch für die Schrotflinte ist. Es gibt ein paar Dinge. Also könnte dieses Video eigentlich länger sein, als ich dachte, weil es ein paar verschiedene Dinge gibt, die ich mit der Schrotflinte zu tun habe. Aber gehen wir weiter und gehen zurück zum Start Shooting Event genau hier. Und dann machen wir eine leichte Abweichung bei unseren Treffer-Scans wie diesem. Also werde ich das vorerst brechen. Ich werde einen Zweig rausziehen. Und wir werden fragen, ist das eine Schrotflinte? Oder wir schießen hier einen Schock. Und wenn wir es sind, wollen wir eine for-Schleife machen. Also nicht für jede Schleife, nur eine for-Schleife. Wir gehen. Wenn Sie also suchen, führt eine for-Schleife für jeden Index ab StartIndex aus. Es wird also durch diese Harmonie-Zeiten laufen, die Sie hier reinlegen, im Wesentlichen. So out of loop Körper wird das wieder in stecken, so dass es funktioniert. Und dann aus dem falschen Zweig wird einfach so dorthin gehen. Wenn es also keine Schrotflinte ist, gehen Sie einfach dorthin. Wenn es ein Schock ist und wir diese Schleife durchlaufen werden, dann bekommen wir eine, bekommen unsere Pelletzahl und wir werden eins von der Pelletzahl subtrahieren. Also wird es gehen 8, 7, 6, 5, 4, 3 wird durch alle, die immer noch gleich 0 sind, laufen, dann wird es direkt durchlaufen. Und das ist das einzige, was wir tun müssen, um die Pellets tatsächlich zu bekommen, ist , dass es zusätzliche Linienspuren schießt. Weißt du, einmal, was das dort tut. Ok. Das Letzte, was ich tun wollte, ist das Nachladen der Schrotflinte. Es gibt einige besondere Dinge, die ich tun möchte, aber um Ihnen das jetzt zu zeigen, wenn ich das einfach aufhebe und ich schieße, können Sie sehen, wie es Ihre all diese acht Zeilen, 1 , 2, 3, 4, 5, 6, 7, 8. Es hat eine verrückte Reichweite, aber das ist in Ordnung. Etwas schwer zu sehen. Und was haben wir getan? Oh, ja. Also, wenn ich einfach so schnell wie möglich klicke. Oh, schießen, es hat nicht funktioniert. Warum hat es nicht funktioniert? Ein Mann? War peinlich. Sheesh, lass mich das schnell überprüfen. Dann kommen sie zurück zu dir. Ordnung, nun, das ist wirklich peinlich, das herauszufinden, und buchstäblich fünf Sekunden, also werden diese Fade-Übergänge wie keine Zeit dauern. Das habe ich nie mal getan. Und dafür gibt es eine Zeit. Das ist also etwas peinlich. versuche zu sehen, was ich sitze als letztes Mal war es 1,2 Sekunden. Schrotflinte war 1,2 Dinge. Ich habe auch ein paar Dinge geändert, wie die Kugeln verbreiten. Ich habe wie 1 Tausend gemacht, also ist es ein bisschen mehr verteilt. Sie können es wie 1511 oder 1200 oder was auch immer Sie die Nachladezeit machen möchten. Und dann war der Waffenkick ein negativer 0,1. Und was das, um ein wenig mehr zu treten. Also, jetzt passieren wir, wir spielen und ich traf das so weit wie möglich. Da gehen wir. Wir bekommen dort eine viel größere Verbreitung. Denken Sie daran, wenn wir nicht zielen und wir werden, werden all diese Paletten perfekt gerade schießen. Also, jetzt trifft es so. Sehen Sie, dass Sie wahrscheinlich das ganze Ziel treffen wollen. Ja, wir können nicht nur Spam-Shooting, also funktioniert das. Okay, cool. Manchmal macht man einfach so dumme Fehler. Alles klar, das Letzte, was ich tun möchte, ist, dass ich etwas zu unserem Reload Event hinzufügen möchte. Also, wenn Sie gehen Spieler Ereignisse direkt hier aus dieser spielen Sound. Was ich tun wollte, ist, dass ich es will. Das Nachladen einer Schrotflinte ist, dass wir anders arbeiten als andere Waffen, weil er jede einzelne Pellets neu lädt. Also, was ich hier erreichen will, ist, wenn Sie nur eine Runde schießen, ich will, dass neu geladen wird ziemlich schnell, richtig? Aber wenn du dein gesamtes Magazin leerst, will ich, dass das Nachladen länger ist. Also möchte ich, dass die Nachladezeit dynamisch im Wesentlichen eingestellt wird, abhängig davon, wie viele Kugeln Sie gefeuert haben, um Zeit zu lassen, wie das Einfügen jedes einzelnen Pelikans. Du bringst nicht ein ganzes Magazin ein, du bringst nur alle Kugeln einzeln ein. Also lasst uns das jetzt machen. Aus diesem Zweig ist dies unser Event Graph Reload Event. Sagen wir, wenn. Und holen wir uns die aktuelle Waffe und wir sagen, ist Schrotflinte. Wenn das also eine Schusswaffe ist, wollen wir ein paar besondere Sachen machen. Wenn das eine Schusswaffe ist, wollen wir das. Tun Sie etwas, und wir sollten es wahrscheinlich in der Waffenbasis tun. Lassen Sie uns also eine Funktion erstellen, die diese Schrotflinte genannt wird. Pellets nachladen. Richtig? Und dann lassen Sie uns unsere Magazingröße bekommen und subtrahieren. Wir wollen das von der aktuellen m, k. subtrahieren und dann wollen wir das nicht mit einer ganzen Zahl, mit einem Float multiplizieren. Multiplizieren Sie das mit unserer Nachladezeit. In Ordnung, und dann werden wir in Echtzeit so einstellen. Im Gegensatz zu all unseren anderen Waffen sollte die Nachladezeit für unsere Schrotflinte sehr, sehr kurz sein, richtig? Es hat also unsere Magazingröße genommen, die acht abzüglich der aktuellen Munition ist, richtig? Sagen wir, wir schießen auch. Cornetto ist sechs, also sind es acht minus 62. Wenn das also 0,2 ist, dann werden Sie für 0,4 neu laden. In Ordnung, ich kann sogar den Taschenrechner für euch herausholen. Aber wenn wir leer sind, sagen wir, wir schießen sieben. Das ist also 8 minus 1, was sieben sein würde. Und sagen, eine Echtzeit wird Punkt 2 sein. Also, jetzt wird unsere Nachladezeit 1,4 sein. Wenn wir, wie ich sagte, wenn wir einen schießen, also 1 zu welchen Synonymen, 8 minus 6 ist 2. Also dann zwei mal 0,2 ist nur 0,4. Je mehr Pellets, desto mehr Runden wir abgeschossen haben, wird es unsere Nachladezeit erhöhen. Was wir also für unsere Schrotflintenwaffe für diese Echtzeit tun wollen , ist, dass wir sie ziemlich niedrig einstellen wollen. Also, wie setzen Sie es auf 0,3 oder so etwas. Und zu Testzwecken kann ich Ihnen das zeigen, damit es eine Zeichenfolge druckt. Okay, kompiliere und geh hier rüber. Und dann holen wir uns wieder die aktuelle Waffe. Und lasst uns weitermachen und das Ereignis anrufen. Wie hieß es? Schrotflinte nachladen Pellets so. Also werden wir dieses Ereignis ausführen und dann haben wir eine Verzögerung des Willens nur in Echtzeit auf diese Weise bekommen, wird Nachladezeit. Und wenn wir damit fertig sind, wollen wir die Nachladezeit einstellen. Wir wollen nur oh ja, wir wollen nur das Ziel. Also werden wir die Nachladezeit hart auf ihren Standard setzen. Denn was am Ende passieren wird , ist , dass das schwer zu erklären ist, wie es ist. So, als würden wir nachladen, oder? Unsere Nachladezeit wird so eingestellt, wie wir sagen, es ist 0.4. Nun dann jetzt jedes Mal oh, nein zu meinem Motorabsturz. Nein. Reagiert. Oh, wow, es ist wieder da. Okay, also sagen wir, ich mag, dass das so eingestellt wird, wie es der Punkt tun. Nun, wenn wir das nächste Mal durchlaufen, wird es sein oder wird eingerichtet. Es ist normalerweise auf 0,3 eingestellt, oder? Wir machen die Mathematik und dann wird es so eingestellt wie 1.2 oder so etwas, das wir geschossen haben. Nun, das nächste Mal, wenn diese Mathematik macht, wird es darauf zurücksetzen. Es wird diese Mathematik machen, wie die neue Nachladezeit und nicht die ursprüngliche, die wir hier eingestellt hatten, was 0,3 ist. Also wollen wir nur, dass die übereinstimmen. Wir werden nur zurücksetzen. Setzen Sie die Einstellungen auf alle Zeiten zurück. Wenn Sie dies also jemals ändern, müssen Sie dies auch ändern. Ordnung? Also zeige ich Ihnen, wie das funktioniert. Also kriegen wir eine Schusswaffe, schießen wir. Ich lade wieder. Seit dieser 0.3, Ich schieße, schieße und sage 0.66 ein wenig länger. Ich leere die ganze Sache und lade sie wieder. Jetzt ist es 2.1, kann ein wenig länger dauern. Okay, also ja, das ist ein tolles, äh, wie ein kühleres, dynamischeres Nachladesystem, schätze ich, für einen Schock. Das ist alles, was du über die Schrotflinte wissen musst. Jetzt ist alles erledigt. Es schießt, es lädt wieder, es, breitet die Linienspuren aus. Das macht das ganze coole Ding. Also ich hoffe, ihr habt dieses Video genossen, hoffe ihr Jungs lernt und genießt alles. Lassen Sie mich wissen, wie immer unten, wenn Sie Fragen haben, werde ich mich bei Ihnen melden. Aber ja, wenn nicht, sehe ich dich den nächsten. 27. Wirkeffekte erstellen: Alle und willkommen zurück zu einem anderen Video. In diesem Video werden wir anfangen, verschiedene Auswirkungen zu erzielen, je nachdem, was auch immer unsere Kugeln damit interagieren. So wie es jetzt steht, wenn ich unsere Waffenbasis öffnen und diese Linienspur vom Zeichnen abschalten und sehen würde, dass unsere Waffen Waren ohne die Linienspur abschießen. Sie sehen eigentlich nicht so aus, als würden sie irgendwohin gehen. Wir werden also verschiedene Abziehbilder und Sounds und Effekte erstellen, die abfeuern, je nachdem, was wir mit unseren Linienspuren getroffen haben. Um ihm etwas zu geben, als würde es im Wesentlichen etwas treffen, oder? Um dies zu erreichen, Gehen wir in Einstellungen, in den Projekteinstellungen. Und wir werden hier zur Physik scrollen, die sich unter dem Motor befindet. Du wirst sehen, dass wir all diese physikalischen Oberflächenoptionen haben, okay? Und wir werden einige dieser physikalischen Oberflächenoptionen hier schaffen , um dann in das geschlitzt zu werden. Wir können verschiedene Sachen mit ihnen machen. Auch wenn wir unseren Feind noch nicht erschaffen haben, werden wir diese jetzt einsperren. Also machen wir einen namens Kopf, Brust, Arm, Hand, Bein und Fuß. Alles klar, und dann machen wir noch einen Stein. All diese Körperteile fehlen uns in der FX-Abteilung. Sie werden alle wie ein Mega-Metal-Sound in einem Metal-Funken sein, wie sie betroffen sind. Und dann wird der Stein mehr wie Felsen sein , die abbrechen und im Wesentlichen so klingen. Das ist alles, was wir dafür brauchen. Gehen wir zurück in unser FPS-Spiel und erstellen Sie einen neuen Ordner. Und ich habe eigentlich schon einen Materialien-Ordner. Wir werden also physische Materialien erstellen und sie alle im Ordner „Materialien“ aufbewahren. Also lasst uns mit der rechten Maustaste klicken und unter gehen. Wo ist sie? Materialien? Wir werden ein physisches Material erschaffen, das blind ist. Warum ist es nicht hier drin? Setz dich unter, oh, es ist wahrscheinlich unter Physik, physikalisches Material. Ok. Klicken Sie auf physikalisches Material und dann nennen wir diesen Körperkopf. Ich glaube, das war es, was ich hatte, oder du weißt, wie wir es nennen Gewicht Körper hatte. Das ergibt keinen Sinn. Nennen wir es feindlichen Kopf. Alles klar, und lassen Sie uns das einfach duplizieren und es feindliche Truhe nennen. Und der gemeine Arm. Feind Hand, Feind, Verzögerung in, feindlichen Fuß, und dann Stein. Okay, und lassen Sie uns das so retten. Es ist jedem von ihnen offen. Und so, was Sie sehen werden, ist, dass wir einen Destruktor haben wird Schwellenskala beschädigen. Wir werden das nutzen, wenn es um unsere Feinde geht. Und das wird tatsächlich kontrollieren, wie unsere Berechnung. Das wird es dem Kopf erlauben, mehr Schaden als die Brust an der Brust zu tun, um mehr Schaden als die Arme und die Beine und so weiter und so weiter. Aber vorerst wollen wir nur in unsere physikalischen Eigenschaften einschlitzen. Also unter Oberflächentyp. Also haben wir all diese verschieden erstellt, das sind die Dinge, die wir in den Projekteinstellungen erstellt haben. Gehen Sie voran und stecken Sie alle diese in die entsprechende. Das Bein wird also Kopf, Kopf sein. Und das lässt das Spiel einfach eine Art physikalisches Material zu den verschiedenen physischen Namen zuweisen , die wir gegeben haben. So können wir später tun, ist, dass wir ein Objekt nehmen und wir können ihm ein physikalisches Material geben. Ich glaube nicht, dass diese eine haben, Geometrie, aber der Würfel sollte eine haben. Aber Sie haben die Warteschlange physisches Material überschreiben. Also haben wir hier unsere physikalischen Materialien. Wir können also sagen, wie dies von diesem Material ist und wir können verschiedene Ereignisse abhauen. Also setze ich Fuß, Brust, und dann haben wir diesen Arm. Ja. In Ordnung. Also, jetzt sind diese alle eingeschlitzt. So können wir jetzt beginnen, verschiedene Ereignisse zu erstellen basierend auf dem, was auch immer wir treffen. Okay, also lassen Sie uns einen neuen Ordner erstellen. Wird sein, wird tatsächlich einen neuen Ordner dieses Mal erstellen. Dann nennen wir es wirkt. Und lassen Sie uns eine Blueprint-Klasse vom Typ Actor erstellen und diese Auswirkung der Faktenbasis nennen. Alles klar, Lassen Sie uns diese öffnen klicken. Und in der Impact-Effekt-Basis wollen wir nur eine Reihe verschiedener Variablen erstellen. Also lassen Sie uns eine namens Hitch Ergebnisse bekommen. Und wir machen dies zu einem Typ Treffer Ergebnisse. Und was wir es tun wollen, dieses Treffergebnis ist, dass wir diese Instanz editierbar machen wollen, was es bedeutet, dass diese Variable jetzt öffentlich ist und von anderen Blueprints zugegriffen und betrachtet werden kann. Und wir können es sozusagen im laufenden Betrieb ändern. Und dann wollen wir auch auf Laichen aussetzen. Sollte diese Variable also beim Laichen dieses Blueprints als Pin freigelegt werden? Und wir wollen ja sagen. Und was das tun wird, ist, dass es es als eine Nadel enthüllt. Sie werden also mögen, wenn Sie diese Blaupause spawnen, es wird Ihnen eine Option geben. Diese Variable wird zu einem Stift werden, ähnlich wie es hier ist. Und die Zeilenverfolgung ist irgendwie wie die Rückgabe eines Wertes. Zumindest wird es so aussehen. Im Moment wollen wir verschiedene Effekte erzielen. Also machen wir einfach einen Stein FX genannt. Und wir werden dieses vom Typ Partikelsystem zu einer Objektreferenz machen, glaube ich, ist das, was wir wollen. Ja. Ok. Wir wollen Stein haben und dann wollen wir Körper haben. Wir können ihn feindlichen Körper nennen, wie auch immer du es nennen willst. In. Dann die andere Sache, die wir schaffen wollen, ein Stein S fx. Und das wird wieder vom Typ Sound-Cue-Objekt sein. Und dann wollen wir das auch für den Körper machen. In Ordnung. Und dann machen wir einen namens Impact, die Kuh. Und das wird vom Typ D Kuh sein, oder? Es ist nur wahrscheinlich nicht materiell. So lässt sich vom Typ Material los. Objekt, das so referenziert werden soll. Ok. Dann, was wir wollen, ist D-Kuhgröße, das wird in der Lage sein, Float zu tippen. D Kuh Lebensdauer wird auch schwimmen. Und nicht zuletzt wollen wir Di Cao Rotation. Das wird von einem Rotator sein. Jetzt werden alle unsere Variablen hier drin sein. Das ist also ein Treffergebnis, zu dem wir gehen. Es wird also, im Wesentlichen wird es uns einen Ort fragen, um einen SYN-Paketeffekt zu erzeugen, und wir werden nur diese Trefferergebnisvariable verwenden, um sie mit dem Treffer Ergebnis zu verknüpfen. Deshalb geben wir das Treffergebnis der Zeilenverfolgung zurück, so dass wir es mit der Stelle verknüpfen können, an der wir unseren Wirkungseffekt erzeugen möchten. Der Grund, der existiert, waren dies ein Schlitz in unseren verschiedenen Effekten oder verschiedenen Sounds. Du wirst eine D-Haube haben, wie ein Einschussloch, das wir auftauchen wollen. Und dann können wir, Ich habe diese Variablen so gemacht, dass wir die Größe anpassen können, wie lange es dauert, bis es verschwindet, und sind irgendwie randomisiert seine Rotation, je nachdem, welche Waffe wir verwenden, weil wir wollen, dass die Pistole Erstellen Sie sozusagen ein kleineres Einschussloch als der Raketenwerfer. Okay, so müssen wir für das Ansichtsfenster tun. Gehen wir in den Event-Graph und wir werden alles daraus machen, um mit dem Spiel zu beginnen. Und manchmal lässt es dich nicht löschen, also musst du es einfach löschen und neu anfangen, richtig? Also lasst uns hier eine Sequenz machen. Und wir werden einige Pins hinzufügen. So viele, das sind vier. Ordnung? Und dann raus hier, was wir tun wollen, ist, dass wir unser Erfolgsergebnis einholen. Wir wollen das Treffergebnis brechen. Also, wenn Sie brechen es Treffer Ergebnis, erhalten Sie alle diese verschiedenen Optionen. Was wir hier suchen werden, ist ein Ausschlagspunkt. Es ist also eine Vektorposition des Punktes, an dem die Linienverfolgung ein Objekt trifft. Und wir wollen ein physikalisches Material bekommen. Wir wollen, dass das Spiel in der Lage ist, zu sehen, welches physikalische Material diese getroffen hat? In Ordnung. So können wir das unten verhindern, dass der Treffer blockiert wird. Lassen Sie uns hier eine if-Aussage machen. Oder Zweig. Blockieren Hit true, wenn es einen Blogging-Hit falsch gab, sonst ist dies einfach wie ein Fail-safe. Wenn wir also in die Luft schießen und unsere Linienspur nichts trifft, wird das Spiel mit einem Fehler zurückkommen, weil es sagt, du weißt schon, du sagst mir, ich soll einige spawnen, einige Teilchen beeinflusst etwas Ton an der Treffstelle und ich haben keinen Treffpunkt. Also, wenn wir diesen blockierenden Treffer haben, wird es verhindern, dass dieser Fehler passiert, weil es so sein wird, okay, das wird nur laufen, wenn wir tatsächlich etwas treffen. In Ordnung? Wenn wir also etwas treffen, wollen wir im Emitter spawnen. An Position im Emitter ist ein VFX-Effekt. Der Ort, an dem sie als Aufprallpunkt des Treffergebnisses, das wir gezeichnet haben, hervorbringen sollen . einmal haben wir die Linienverfolgung berechnet. Und dann wollen wir das physikalische Material bekommen, welches, welchen Emitter wollen wir laichen? Es gibt so viele. Nun, wir können das auf der Grundlage des physikalischen Materials anpassen. Also aus physikalischem, physikalischem Material, Lassen Sie uns Servicetyp so bekommen, das ist eingebauter physikalischer Oberflächentyp. Und dann wollen wir einen ausgewählten Knoten bekommen. Und Sie können jetzt all die verschiedenen Physio sehen, ich habe es losgeworden. All das hier. Du weißt schon, was ich sagen werde, nicht Jeff. All diese verschiedenen physikalischen Oberflächen, die wir hier haben , werden jetzt in dieser ausgewählten Note angezeigt und wir werden das zurückgeben. Also jetzt gibt es uns eine Option, in was wir wollen, je nachdem, welches Objekt wir getroffen haben. Und deshalb haben wir diese als Variablen erstellt. Also für Körper, Lassen Sie uns das für Kopf, Brust, Arm, Bein und Fuß. Und dann für Stein, mach den Stein. Und dann können wir Stein auch zum Standard machen. Das hinunter, um es optisch ansprechender zu machen. Ja. Alles klar, das ist es, was wir wollen. So können wir Partikeleffekte für verschiedene Servicetypen sagen , dass es das hat. Also, jetzt müssen wir nur dasselbe tun, was genau für den Sound und die D-Zählung gilt, richtig? Also können wir kopieren, das meiste in einfügen, das hier hineinziehen. So wie das. Sicher. Geben Sie ihnen ein wenig Platz. Dies werden Sounds, Soundeffekte sein. Wir wollen alles gleich halten. Stattdessen wollen wir Sound vor Ort abspielen. Der Standort wird der Ausschlagspunkt sein. Sie können sich frei fühlen, sich zu ändern. Oh, es ist an, es wieder zu tun. Ich kann entweder auswählen und dann wird es zu einem Ton. Da gehen wir. Dann sorgt dies dafür, dass wir die Stein- und Körper-Soundeffekte herausgezogen haben. Brust, Arm, Hand, Bein, Fuß, Stein, Standard. So wie das. Fühlen Sie sich frei, die Lautstärke zu ändern. Sie können bender Variable machen, wenn Sie möchten. Ich bin gut damit, wie es ist. Für diese dritte, was wir tun wollen, ist, dass ich eine Rotation der Abziehbilder randomisieren werde , damit es nicht jedes Mal genau gleich aussieht. Also wollen wir das Treffergebnis in gebrochenen Treffergebnissen wieder greifen. Aber dann aus der Normalität. Normal ist, wenn der verborgene Weltraum für das Objekt geswegt wurde. Aufprall normal für Linientest. Also werden wir von x Vektor drehen. Und das werden wir, also bekommen wir eine Rotation und wir werden den Rotator brechen. Also, jetzt haben wir ein X, Y und Z und dann raus und wir bekommen einen zufälligen Float in Reichweite wie diesem. Und lassen Sie uns das 360 Grad gehen. So negativ 180 und dann positiv 180. So können wir den ganzen Weg um den Kreis gehen. Und dann machen wir einen Rotator. Und dann, ja, das kann in das X, das Y und das Z stecken . Also ändern wir nur die X. Also acht, die sozusagen in einen Kreis gehen. Und dann lassen Sie uns das als Dekalb-Rotation setzen und dann können wir das Plugin so haben. Ja, das ist in Ordnung. Ok. Und wir sagen Ran to Mises Abziehbilder Rotation. Das wird uns also etwas Randomisierung geben. So sind alle unsere Aufkleber sehen nicht genau gleich aus. Und dann last but not least, also kannst du das ganze Ding noch einmal kopieren und einfügen. Legen Sie das in den Zweig. Buchstäblich sauberer. Und wenn der gelöschte Knoten auswählen. Und dann laichen wir D-Kuh, die daran befestigt ist. Es wird nach Ort noch fragen. Also, das wird Auswirkungen Punkt. Wir können die loswerden. Die D-Kuh wird jedes Mal gleich sein. Aber wir wollen immer noch sicherstellen, dass wir das auch einschlitzen. Eigentlich brauchen wir das vielleicht nicht mehr. Aber nur um der Konsistenz willen. Oder wenn wir das jemals weiter bearbeiten wollten, machen wir es einfach, wie wir die anderen gemacht haben. Lassen Sie uns gewirrte Position halten und nicht was auch immer das eingestellt wurde, da die Rotation diese variable oder D-Kuh-Rotation sein wird, diejenige, die wir die Lebensdauer gemacht haben. Denken Sie daran, dass wir so eine DKA-Lebensdauer gemacht haben. Und der Standardwert, Lassen Sie uns wie zehn sein. Nur standardmäßig, dass, falls wir vergessen, nicht nur sofort verschwinden. Und dann für D-Kuhgröße, setzen wir das als Variable 2. Und dann, da dies ein Float ist, werden wir es zu einem Vektor X, Y, Z machen . Also gehen wir hin. Jetzt haben wir das. Also gibt es dieses ganze Skript, das wir brauchen. Oh, weißt du was, diese beiden müssen auch die wirklich bekommen. So Trefferkomponente wird an die Komponente angehängt werden und Hit Bone-Namen wird Punktname angehängt werden. Das könnte uns Bereiche geben, in denen wir die nicht angeschlossen haben. Also viele Drähte und dieses, aber es ist, was es ist. Also ja, das ist alles, was wir für unseren Wirkungseffekt tun müssen. Ok. Jetzt zurück in unserer Waffenbasis, nachdem wir das berechnet haben, werden wir dieses Ergebnis brechen. In Ordnung? Bevor wir mit dem Rückstoß beginnen, wollen wir einen Schauspieler aus der Klasse hervorbringen. Der Schauspieler, den wir spawnen wollen, ist unsere Impact Base. Denk daran, dass ich dieses Ergebnis beim Spawn aussetzen ließ. Du wirst also sehen, dass die Pin auftaucht, wenn ich das hier einschließe. Da ist es. Das Treffergebnis wird also diese Treffer sein, um Transformation zu spawnen. Es wird die Wirkung sein. Oder lassen Sie uns den Struct Pin teilen und dann machen Sie es so. Wir brauchen uns keine Sorgen um Rotation und Skalierung zu machen. Okay, jetzt haben wir das alles drin. Und weißt du was, ich sollte das wahrscheinlich zu einer variablen Impact Base machen. Und dann machen wir diese vom Typ Auswirkungen Auswirkungen auf die Basis- und Klassenreferenz, und ziehen Sie sie dann stattdessen hinein. Alles klar, jetzt haben wir mehrere Auswirkungen, Effekte des Satzes durch eine Variable. Und dann fangen Sie an, all das zurückzustoßen. Das ist also gut. Das funktioniert. Nun, was wir tun können, und da dies auf eine Variable eingestellt ist, jetzt, wenn Sie in eine unserer Waffen oder ein Gewehr gehen, sollten Sie einen Schlitz für Schlagwirkung sehen. Und ich sollte es wahrscheinlich nicht Basis nennen. Es könnte verwirrende Auswirkungen der Tatsache geben. Kompilieren Speichern. So haben wir jetzt Auswirkungen, die wir einschalten können. Also jetzt, wenn wir in unsere Effekte gehen und wir anfangen, Kinder zu machen, also zeige ich das einfach als eins. So unsere Gewehraufprallwirkung. Wir klicken und öffnen das. Sie werden sehen, Stein wirkt Körper in den verschiedenen Klängen, Abziehbilder, Größe, Lebensdauer, und wir müssen nicht mit der Rotation durcheinander. Also für Stein, glaube ich, es gibt einen, der nur Stone heißt. Er kann ein kleines Medium oder groß bekommen. Ich werde nur Medium für Körper tun. Es gibt einen, der Metal genannt wird. Metall Medium für Stein Wie hieß es Rock? Sind eingeladen, Auswirkungen Oberfläche, Gewehr Stöße, Oberfläche wie die für den Körper zu verbringen . Es könnte eine Metallstunde gegeben haben. Sie sind kaputt. Ok. Aufprall Bullet Metall Also ist es Schlitz, dass in und wir werden das Haus reparieren, meine Güte, so viele. Also gibt es keine Kugel? Kugelmetall? Oh, meine Güte. Das Spiel sagt, ich sage, es ist einfach nicht. Wir haben hier Aufprallkörper. Wir benutzen die einfach. Das ist irgendwie ein böser Klang. Also haben Sie ihren Körper. Lasst uns diese machen, die wahrscheinlich nicht gebrochen Gewehr und Rudelkörper sind. Da gehen wir. Impact D Kuh, das ist etwas, das wir machen müssen. Also lassen Sie uns in Shooter-Spielfilter gehen und klicken Sie auf Material. Genau hier. Also Filtermaterial sollte es hier drin sehen. Aufprall-Detail. Bin betroffen die Kuh. Ziehen wir das in unsere Materialien. Also haben wir es, wir öffnen das und es wird ein bisschen sein. Aber es ist okay, wir reparieren das. Das wird also als Einschussloch, Loch zu und das wird dort sein, genannt Millivolt. Verzerrung nennt man das hier. Verzerrung eins. Sobald wir die einschlitzen, antworten, da gehen wir. Sollte repariert werden. Jetzt. Da gehen wir. So jetzt jede Impact Kniescheibe. Also werde ich das einfach gut nennen, überhaupt, dass ich weiß, wie es heißt. Zumindest. Ich habe ein Einschussloch. Es ist vielleicht eine Größe 10 für jetzt, Lebensdauer von acht Sekunden. Ok. Also jetzt, wenn wir demonstrieren oder tatsächlich Auto Gewehrwaffe muss sicherstellen, dass wir unseren Gewehraufpralleffekt zugewiesen haben. Nun, wenn wir zu unserer Waffe gehen und wir hier rauf gehen, können Sie sehen, dass wir jemals Löcher in der kleinen Standardeinstellung ist, war der Stein, richtig, richtig, richtig, richtig. Ok. Aber wenn ich einen Würfel hier rausziehe, erhöht die Größe ein wenig. Und ich sage, das ist feindliche Brust oder so etwas, wir sollten einen anderen Effekt erzielen. Also diese, und dann, um die Funken jetzt zu bekommen, können Sie irgendwie dieses fleischige Geräusch hören. Alles klar, jetzt haben wir unterschiedliche Auswirkungen. Wir gehen in die Auswirkungen der Tatsache und ich kann diese Aufkleber wie 50 oder so machen, macht seine Schrotflinten Löcher in den Boden, was lächerlich ist. Wir können auch verschiedene Dinge geben. Wir haben wollen, Ich denke, dass diese, die mit der kommen, es gibt einige ziemlich coole tatsächlich, sie kommen mit dem wie Shooter-Spiel, aber ich denke, sie sind alle Art von gebrochen zu mir, wie wenn ich schon so etwas wie Explosion, die Explosion könnte etwas wirklich schnell machen, aber da gehen wir. Jetzt ist es so, als würde man dabei schweben. Danke. Ja. Richtig. Ziemlich cool. Ziemlich cool. So machen wir das. Also das einzige andere, was wir hier tun müssen, und ich werde dies als eine kleine Aufgabe tun, ist, die Effekte zu verlassen und die Kind-Blueprint-Klassen zu erstellen. Also Pistole, Schlag, Wirkung oder Recht. Und dann in Ihre bevorzugte Abziehbilder Größe in der Lebensdauer in verschiedenen Effekten, die Sie wollen. Sie können es trotzdem machen, oder Sie können es verrückt aussehen lassen. Und dann musst du nur in die entsprechende Waffe gehen. Dann sollte unter dem Selbst einen Ort sehen, um diesen Effekt zu setzen. Und wenn Sie kompilieren und speichern, funktioniert das dann. Ok? Und Sie können, wenn Sie möchten, Sie können mit verschiedenen Effekten herumschrauben. Sie können in die Projekteinstellungen gehen und neue erstellen. Sind das alles, was Sie tun müssen, ist eine neue Variable zu erstellen, als müssten Sie sie hineinschieben, ein physisches Material dafür erstellen, wie ich es am Anfang getan habe. Dann würden Sie darauf klicken und dann sollte es einen Aktualisierungsknoten geben. Und dann sollten Sie die zusätzlichen haben, die Sie erstellt haben, Pop-up haben, ohne dies zu löschen. Und dann kannst du neue Variablen erstellen, ihn einstecken, eine ganze Reihe coole Sachen machen, aber so machst du verschiedene Effekteffekte basierend auf dem, was auch immer deine Zeilenspuren treffen. So sieht unsere Waffe jetzt viel professioneller aus. Als ob es tatsächlich etwas fotografiert und bearbeitet. Und es ändert sich, je nachdem, welche Oberfläche wir treffen. Also hoffe, ihr habt dieses Video genossen, fand es hilfreich und informativ. Und wir sehen uns im nächsten. 28. Schreckende Feinheiten: Hallo an alle und willkommen zu einem anderen Video. In dieser Lektion werden wir weiter in unserem Ego-Shooter. Und wir werden ein paar Feinde machen, mit denen wir schießen und ein paar coole Dinge machen können. Also zwischen den Videos , ein paar kleine Dinge. Ich habe unser Gittermaterial aus Betonfliesen im Maßstab von zwei gegeben. Und dann habe ich hier zwei verschiedene Kisten gesteckt. Eins, ich habe dies zweimal so groß wie Stahl brüniert und dieser andere ist ein geschliffener Stein. Das ist von unserem Typ Stein und das ist nur jede feindliche Truhe, wie auch immer du es nennen willst. Also, das sind sofort Videos, die ich Ihnen die Aufgabe gab verschiedene Aufprallfehler in es alles sollte relativ einfach gewesen sein. Die Einzigen, die ein bisschen verwirrend gewesen sein könnten, wo der Granatwerfer im Raketenwerfer, für diese, alle Auswirkungen werden Granatexplosion in Granaten-Explosion sein, und dann Raketen-Explosion und Rakete Explosion und Rakete Explosion. Dann habe ich diese Abziehbilder ziemlich groß gemacht. Das sollte das Einzige sein. Und ganz ehrlich, meine ich diese. In dem Scharfschützengewehr wird es jetzt funktionieren, weil all diese Waffen so eingestellt sind, dass sie gescannt werden, aber wir werden letztendlich die zu Projektilen umschalten und werden auf diese Weise verschiedene Ereignisse für sie tun. Aber wir werden, wir werden den gleichen Wirkungseffekt verwenden. Also ist es gut, sie jetzt einzusetzen, weil sie funktionieren werden. Aber wir müssen zuerst unsere Feinde hinzufügen, nur damit wie das Projektilskript und die Blaupausen eingerichtet sind. Es wird es einfacher machen, es auf diese Weise zu machen. Also ja, ich denke, das ist alles. Lassen Sie uns also beginnen, indem Sie einen neuen Ordner erstellen und ihn Feinde nennen. Da wir im Inneren von hier Farbe haben. Lasst uns weitermachen und einen Charakter machen. Und wir nennen diesen BP Unterstrich Feind. Eine andere Sache, die ich tun möchte, ist einen neuen Ordner zu erstellen und diese Schnittstellen aufzurufen. Weil wir in diesem Video ein paar Blueprint-Schnittstellen erstellen werden. Aber fangen wir an, indem wir unseren Feind hier öffnen. Also nichts zu verrücktes hier. Das Einzige, was wir tun werden, ist, dass das Netz die Schaufensterpuppe machen wird. Sie können männlich oder weiblich wählen, wo immer Sie möchten. Gehen wir voran und drehen uns um 90 Grad. Lassen Sie uns die Kapselhöhen auf 95 einstellen und wir können 34 behalten, 0 können wir tun, ist, dass wir in den linken oder rechten Modus gehen können. Wir können ihn schnappen und ihn runterbringen. Ich habe wahrscheinlich die Fangeinstellungen geändert. Sie bewegen das einfach auf fünf, genau da auf negative 95. Negativ drehen. So z Lage der negativen 95 und Rotation von negativen 90 wird ihn in der Kapselkomponente als 95 als auch setzen. Wechseln Sie zurück in den perspektivischen Modus und hier ist unser Charakter. Das Drahtmodell spielt keine Rolle. Es muss nicht sein, seinen Arm zu überlappen, weil wir schlagen, dass diese sich nicht mit Capsule Component schneiden. Das ist nur so, dass, wenn wir ihn rausziehen, wie man tatsächlich mit dem Boden so steht. Also ja, das sieht alles gut aus. Also gehen wir weiter und wählen unsere Schaufensterpuppe Mann und schlagen die Brauntöne. Und dann sollten Sie für die männliche Variante Physik-Asset sehen. Und es ist das aufmachen. Und jetzt haben wir einen Haufen dieser verschiedenen Becken, Wirbelsäule, all diese verschiedenen Dinge. Das sind physische Vermögenswerte. Also lasst uns voran gehen und diese in einschlitzen, damit wir mit dem Kopf physisches Material überschreiben können und lassen Sie uns es feindlich Kopf machen. Versuchen Sie einfach, alles auszuwählen. Also, wenn das nur im allgemeinen Bereich ist, nennen wir das die Brust, die Wirbelsäule, nennen es das Schach. Wir können wahrscheinlich einige davon ehrlich löschen, aber wir nennen es den Oberarm der Brust, wir nennen es Arm, Unterarm. Ich rufe den Arm immer noch an. Und Omega. Und Oberarm, Unterarm wird wie mehrere, genannt ARM. Und diese beiden werden beide Chef-Typ sein. Richtig? Und Kalb. Richtig? Diese beiden war es für alle gehen, um Bein und dann Fußball und dann Fußball links und rechts werden minus die Fußball werden Fuß sein. Alles klar, jetzt sollten alle diese etwas haben, es einschieben. So wie das. Nun, wenn Sie sich erinnern, in einem vorherigen Video sprach ich über die Schadensschwellen Skala. Also gehen wir zurück in unsere Materialien und gehen mit feindlichem Arm. Also, wenn es Schaden Schwelle Fertigkeit. Also, was ich will, dass du darüber nachdenkst. Wenn wir also unsere Waffe auf 25 Schaden pro Kugel setzen, wenn dies auf eins gesetzt ist, wie das irgendwann aufgebaut wird, bedeutet das, dass die Kugel 25 Schaden tut, wählen Sie den Kopf als eins. Aber stellen Sie sich das als eine Multiplikationszahl vor. Also sagen wir, ich will, wenn ich das so setze, dass es der Arm wie 0,5 ist, oder? Sagen wir, unsere Kugel fügt 25 Schadenspunkte zu. Das heißt, er würde ihn in den Arm schlagen. Diese Kugel fügt 12,5 Schadenspunkte zu. So können wir reingehen und den Arm leicht zensieren. Ich behalte das bei 0,5. Die Brust wird 0,8 sein. So können Sie es als wieviel Prozent vorstellen? Wenn wir ihn also in den Fuß schlagen, werden es 30 Prozent von dem, was auch immer die Gesamtschadenszahl normalerweise ist, die Hand macht einen Punkt, um zu handhaben und so viel Schaden anrichten zu können. Der Kopf wird ein 100 Prozent des Schadens, den wir in das Bein setzen wird wie 0,7 sein, etwas weniger als die Brust, ein wenig mehr als die Arme? Ja, das sollte gut sein. Ok. Das ist, was wird die verschiedenen Mengen an Schaden Video zu kontrollieren. Es wird ein bisschen Multiplikation machen. Du wirst sehen, du wirst sehen, okay. Out of event beginnen zu spielen. Wir wollen einen Hinweis auf unseren Charakter. Nein, wir wollen nicht in unsere eigene Ebene werfen. Das ist und vielleicht in diesem Fall für Sie, Pon. Pon ist derjenige, den wir technisch kontrollieren werden, sind beide Charaktere, aber der Teich, um derjenige zu sein, den wir kontrollieren. So können Sie Get Player Pawn verwenden, ich bin nur daran gewöhnt, Git-Spielercharakter zu verwenden. Wir werden das meiste Teil tun, für die meisten Fälle. Und wieder, so spielt das keine Rolle. Okay, cool. Also jetzt, was wir tun werden, so werden wir eine Schnittstelle zu machen. Gehen wir also in unseren Interfaces Ordner, klicken Sie mit der rechten Maustaste und gehen Sie zum Drucken Blueprint Interface. Ein Blueprint-Interface ist also eine Sammlung von einer oder mehreren Funktionen Namen nur keine Implementierung, die zu anderen Blueprints hinzugefügt werden kann. Also, wie soll ich, es ist so, als würde eine Schnittstelle nichts tun. Es ist nur ein Ort, an dem Sie mehrere verschiedene Funktionen speichern können. Und dann können Sie diese Ereignisspalte in mehreren verschiedenen Blueprints aufrufen. Und du wirst sehen, es eines dieser Dinge sein wird, die du sehen wirst, wenn wir mitmachen. Also lasst uns einfach diesen Feind anrufen, Schaden nehmen. Öffnen wir das und lassen Sie uns eine Funktion erstellen und nennen sie Feind, erleiden Schaden. Ich könnte den Standardnamen ändern. Nennen wir es einfach BPI. Erleiden Sie Schaden, Blueprint-Schnittstelle erleiden Schaden. Weil wir wollen, dass der Feind Schaden erleidet. Wir wollten auch einen Radiusschaden oder Schaden erleiden, und wir werden beide hier drin setzen. Also habe ich Enemy Schaden erleiden. Und dann wollen wir zwei Eingaben dazu haben. Wir wollen, dass man die Waffenstatistiken nennt, und das schaffen wir in einer Sekunde. Und dann nennt man Tonhöhe Ergebnis vom Typ Pitch Ergebnis. Ok? Und wir müssen eine Struktur für unsere Waffenstatistiken schaffen. Gehen wir also in Daten, klicken Sie mit der rechten Maustaste. Und lasst uns Blaupausen gehen, strukturieren und nennen es Waffenstatistiken . Eine Struktur unterscheidet sich also etwas von einer Aufzählung. Die Aufzählung ist wie eine Liste. Eine Struktur oder eine Struktur ist wie ein Bucket von Variablen. So können Sie dieser eine kleine Sache eine Reihe von Variablen hinzufügen. Also werden wir einen Schaden machen, der als Schaden bezeichnet wird, und das wird vom Typ Float sein. Dies steuert, wie viel Schaden die Waffe verursacht. Und dann für unsere, die explodieren, haben wir einen Schwimmer für den Aufprallradius. Und wie gesagt, das wäre nur notwendig, wenn wir uns wie unser Granatwerfer in einem Raketenwerfer fühlen. Also wollen wir diese Art Waffen Tode machen. Du kannst da genau so sehen. Ok? Das ist also unsere Schnittstelle. Wenn wir nun in die Seite unserer feindlichen Blaupause gehen, können wir Ereignisfeind nennen. Und lassen Sie mich dort gehen. Feind erleiden Schaden, weil Sie nicht brauchen, um Ereignis setzen. Oh, nun, das hat nicht funktioniert. Warum funktioniert es nicht? Ich kompiliere. Oh, ich habe den offensichtlichsten Teil vergessen. Ok. Wir müssen diese Schnittstelle tatsächlich zu diesem Blueprint hinzufügen. Ok? Unter Klasseneinstellung sehen Sie Schnittstellen und wir müssen eine hinzufügen. Und lasst uns weitermachen und BPI hinzufügen, Schaden nehmen. Wenn wir nun diese Schnittstelle zu diesem Blueprint hinzufügen, können wir nun Feind oder Ereignisfeind als Schaden bezeichnen. So können wir jetzt ein Ereignis in diesem Entwurf haben und Sie können unsere kleinen Eingaben hier sehen. Und so, was auch immer Blueprint, die wir hinzufügen, auch diese Schnittstelle, können wir dieses Ereignis aufrufen, um davon zu laufen. Und es wird die gleiche Ausgabe haben. Also ist es irgendwie hilfreich, wenn Sie wollen, wie so wie denken Sie an ein Spiel wie zwei Wochen. Okay, es gibt viele verschiedene Dinge in Fortnite, die Schaden erleiden. Sie können die Gebäude, die Häuser, die Bäume zerstören , und Sie können die Spieler beschädigen. So können Sie eine Schnittstelle haben, die Eingaben aller verschiedenen Arten von Daten hat , die Sie von verschiedenen Dingen passieren möchten, die Schaden erleiden. Aber wie ein Baum wird Schaden anders als ein Teil eines Bauholzes nehmen. Und anders als ein Spieler, sie alle haben unterschiedliche Mengen an Gesundheit und sie alle erleiden unterschiedliche Mengen an Schaden. Durch die Verwendung von Schnittstellen können Sie eine Schnittstelle erstellen und dann können Sie im Wesentlichen wie diese Arten von Dingen auf einer einfacheren Ebene anpassen , aber Sie müssen nicht jedes Mal ein anderes Ereignis erstellen. Sie können es einfach die Schnittstelle nennen und dann dieses Ereignis von der Schnittstelle ausführen , anstatt es für 1000 Mal zu machen. Okay, also lassen Sie uns eine Variable erstellen und nennen, das ist tot. Wir wollen überprüfen, ob unser Feind tot ist. Das erste, was wir tun werden. Du willst also nicht, dass es Schaden erleidet, wenn wir tot sind. Ok? Und auf typische Art und Weise werden wir das Wahre ausgehen. Wenn wir nicht tot sind, dann wollen wir etwas Schaden anrichten. Lassen Sie uns voran und lassen Sie mich Ihnen das zeigen. Also Waffenstatistiken und lasst uns Waffenstatistiken brechen. Und so haben wir jetzt Schaden und Aufprallradius, was auf unserer Struktur war. Ok. Aber wir wollen in der Lage sein, zu berechnen, wie viel Schaden wir anrichten wollen. Also lassen Sie uns das in einer Funktion speichern. Also nennen wir diesen Coull Spätschaden. Und lassen Sie uns hier einige Eingaben hinzufügen. Wir schaffen einen Schwimmer namens Schaden. Und lassen Sie uns auch in einem Treffer Ergebnisse des Typs Treffer Ergebnis davon übergeben. Gehen wir weiter und ich werde dies nur auf eine lokale Variable setzen , so dass ich es später im Skript verwenden kann. Dieser wird zu lang sein und wir werden einen Rückgabeknoten hinzufügen. Und das wird auch ein Schwimmer sein. Und es wird sein, nennen Sie es berechneten Schaden. Das ist das, was tatsächlich berechnen wird, wie viel Schaden wir unserem Feind anrichten. Also lassen Sie uns das Treffergebnis brechen. In Ordnung, und dann abseits des physikalischen Materials wollen wir die zerstörerische Schwelle beschädigen. In Ordnung, also noch einmal, wie ich sagte, wenn wir in Materialien gehen und wir in unsere feindliche Hand gehen , bekommen wir ein physisches Material und dann prüfen wir nach dieser Schadensschwellen-Skala. Also, in dieser Chance, wie ich schon sagte, machen wir 30% von dem, was wir in den Schaden stecken, den unsere Waffen anrichten werden. Und wir wollen das mit unserem lokalen Schaden multiplizieren. Also, wie ich sagte, wenn das 25 oder multiplizieren, dass mit in diesem Fall, wenn wir die Hand schlagen würde wie 0,3. Und dann stellen wir das als unsere Rückkehr fest, geben wir diese Nummer zurück. Also, jetzt zurück in unserem Ereignisdiagramm, nennen wir berechnen Schaden. Also wollen wir, dass dieser Schaden so weitergegeben werden würde. Also, wo wir diese Struktur, Waffenstatistiken jeder unserer Waffen auf unserer Basis zuweisen , richtig? So können wir individuell in jeder Blaupause, wie wir schon viele Male auf alle Kinder gemacht haben, wird in Schlitz, wie viel Schaden wir diese Waffe zu tun haben wollen. Also habe ich die Nummer 25 benutzt. Unser Trauer, unser Sturmgewehr fügt 25 Schaden zu. Das wird es passieren. Es wird diesen variablen Speicher 25 haben, und es sind Waffenstatistiken. Es wird die Daten nehmen, es wird sie übergeben. Es wird es berechnen. Es ist wie, okay, ich habe die Hand dieses Feindes getroffen. Sofort. Mein Sturmgewehr ist 25 Schaden. Aber ich habe die Hand getroffen. Also nehme ich 0,3 davon oder was auch immer es war, und dann gebe ich 7,5 Schaden zurück. Alles klar, so funktioniert das. Und dann wollen wir auch in diesem Treffer übergeben, um sicherzustellen, dass wir gut haben, wir schlagen etwas, weil das peinlich wäre. Und dann wollen wir die Gesundheit unserer Feinde aktualisieren. Also wollen wir dafür eine neue Funktion erstellen und dieses Gesundheitseröffnungsdatum aufrufen. Und lasst uns eine Grippe machen und diesen Schaden so nennen. Und machen wir das zu einer Sequenz , weil wir hier ein paar verschiedene kleine Dinge machen werden. Wir wollen prüfen können, ob unsere Feinde im Wesentlichen tot sind. Also würde Saturn zurückkehren. Und wir werden sagen, ist tot und machen es zu einem booleschen. Richtig? Also aus unserem verursachten Schaden, Lasst uns größer als oder gleich gehen. Und dann sag Zweig, whoa, whoa, whoa, die Rhonchi, ihren Zweig. Das ist eher so. Ok. Und lassen Sie uns eine neue Variable erstellen und diese aktuelle Gesundheit nennen. Es wird unsere Feinde Gesundheit Typ Float sein. Wenn also unser Schaden größer oder gleich unserer derzeitigen Gesundheit ist, sagen wir, dass unsere derzeitige Gesundheit 10 ist und unser Schaden 20 ist. Ok? Wenn dies geschieht, dann wollen wir setzen ist tot oder nein, tatsächlich, lassen Sie uns ein lokales ist tot. Es könnte das Gleiche tun. Was auch immer. Das ist, wie ich es vorher gemacht habe. Wir setzen lokale ist tot, um wahr zu sein. Und dann stellen wir sicher, dass unsere Gesundheit nicht unter 0 geht, indem wir sie auf 0 setzen. Das passiert also, wenn sie sterben. Wenn sie nicht sterben, dann wollen wir den Schaden erleiden, den wir verursacht haben. wollen wir subtrahieren. Wir wollen, dass das auf der Unterseite ist. Ziehen Sie das hier rüber. Sicher. Jetzt nehmen wir die aktuelle Gesundheit. Unsere derzeitige Gesundheit ist also größer als die Höhe des Schadens. Unsere aktuelle Gesundheit ist also 20. Wir richten 10 Schaden an und wir wollen 20 von 10 subtrahieren. Und dann stellen Sie das als unsere neue aktuelle Gesundheit. Und dann wollen wir nachsehen, ob wir tot sind. Und wir werden in lokalen ist tot, so. Um zu überprüfen und zu sehen. Also haben wir diese Variable lokal erstellt. Ohne das hätten wir es schaffen können. Wahrscheinlich hätten wir das als tot gebrauchen können. Aber es ist, was es ist. Wir setzen das Lokal sowieso als dasselbe. Also ist es wirklich egal. Das ist es, was wir hier tun. Dann, wenn wir hier rauskommen, dann wollen wir unsere Gesundheitsupdates machen. Der verursachte Schaden wird der berechnete Schaden sein. Und dann kehren wir zurück, das ist tot. Also wollen wir setzen ist tot, was auch immer die Ausgabe davon war. Wenn uns also die Gesundheit ausgeht, sind wir tot oder gesund von 0. Nun, wenn der Schaden, den wir verursacht haben, geringer ist als die Menge an Gesundheit, die wir haben. Wir werden nur sagen: Nun, wir haben das noch nicht wahr gemacht, also sind wir nicht tot. Ok? Wir sind also sehr gut aufgestellt, dass wir eine if-Aussage machen werden. Ok? Und dann, wenn wir vorerst eine Schnur drucken und sagen, ich bin David. In Ordnung? Und dann für nicht sagen, ich bin immer noch erlaubt. Alle Rechte. Und das sollte alles sein, was wir brauchen. Für jetzt werden wir mehr dazu später hinzufügen, einige Effekte. Aber nur um es willen können wir sehen, ob das funktioniert. Berechneter Schaden. Warum drucken wir hier nicht auch eine Schnur, damit Sie tatsächlich sehen können, welche Schäden wir sind, was unsere Gesundheit ist. Also lassen Sie uns das auf 100 setzen. Standardmäßig ist die aktuelle Integrität 100. Und wir werden sehen, wie die Subtraktion stattfindet und das alles tun. Das letzte, was wir hier tun müssen ist, in unsere Waffe gehen oder Waffenbasis zu gehen und wir wollen diese Struktur hinzufügen. Also lasst uns Waffe gehen. Statistiken machen es von Typ Waffen Statistiken. Okay, jetzt können Sie diese Statistiken sehen. Also lassen Sie uns in unsere gehen, die bereits in der richtigen Mappe war, war keine Pistole. Und Sie sollten Waffenstatistiken sehen. Lasst uns das 20 Schaden anrichten. Wir brauchen uns keine Sorgen um den Aufprallradius zu machen, weil es noch nichts davon tut. Also, wenn wir jetzt einspringen und spielen, und wir einen Scone aussuchen und unseren Kerl erschießen. Und es funktioniert nicht. Ich muss einen Schritt vergessen haben. Oh, ja, ich weiß, was es ist. Wir müssen den Kopf nennen, den wir hier gemacht haben. Also, wenn wir in unsere Waffenbasis gehen, Lassen Sie uns voran und erstellen Sie eine Funktion, in der wir hinzufügen, die wir unserem Kerl Schaden hinzufügen. Also ja, ja, ja. Ok. So traurig, neue Funktion und nennen Sie dies Schaden hinzufügen. Ok. Add Schaden wird eine Eingabe eines IT-Ergebnisses wie üblich haben, weil RNA immer durch unsere Trefferergebnisse passieren wollen. Wir verlieren es nicht. Und dann, was wir tun wollen, ist, dass wir bekommen wollen, da wir die Schnittstelle nicht hinzugefügt haben, wollen wir eine Nachricht von Feind bekommen, Schaden nehmen diese Schnittstelle. Und so wird es um ein paar Sachen bitten. Also, was sind unsere Waffentode? Nun, es ist alles, was wir in unsere Waffen stecken. Jetzt, da Daten durchlaufen werden, wollen wir dieses Treffergebnis hier durchbrechen. Hat mir geholfen, das Ergebnis in die Treffergebnisse zu treffen, so dass es sich einfach so durchzieht. Aber wir müssen diesem ein Ziel geben, das so trifft, wie das, was Schaden erleidet. In diesem Fall wird es der Hit Actor sein, der auf sich geht, was unser Feind ist. Ein Schauspieler oder ein Drache, der so durchmacht. Okay, das ist so, als ob Informationen durch Waffe an den Feind weitergegeben werden. Schaden zu erleiden sagt, was tatsächlich die Menge an Schaden durchläuft , die wie unsere Waffen tun. Und das haben wir noch hinzugefügt? Nein, haben wir nicht. Ok. Also, wenn wir hier raus kommen, müssen wir Schaden wie das hinzufügen und das wird für einen Treffer Ergebnisse fragen. Und dann ist dieses Ergebnis das. Also genau das Gleiche. So hoffe ich jetzt, dass Gott arbeiten sollte, weil wir diese 20 Schäden haben, die durch. Und das ist es immer noch nicht. Was in meinem Leben vor sich geht. Wow. Wow. Ich sage, okay, also habe ich das Problem herausgefunden. Also, wenn Sie sich erinnern, wenn wir unsere berechnet haben, einige davon, wenn wir unsere Linie Spur berechnet haben, haben wir Akteure, die wir in denen treffen, die wir ignorieren werden. Was wir also tun könnten, ist, dass wir eine Pin hinzufügen, Teich hinzufügen oder etwas anderes, weil das ist, was das ist. Standardsatz S. Was wir tun wollen, was wir tun können, angenommen gehen Sie zum Netz. Und Sie werden wahrscheinlich andere Einstellungen haben. Es wird wahrscheinlich Pfand oder so etwas sagen. Gehen Sie voran und stellen Sie es auf benutzerdefinierte. Stellen Sie sicher, dass die Kollision aktiviert ist Abfrage und Physik. Und setzen Sie den Objekttyp 2 Welt und dynamisch, wenn Sie diese drei Dinge auf dem Netz tun. Hier sind also physische Objekte. Und dann nimmst du die Pistole und gehst hier rüber. Dann erhalten Sie die Auswirkungen Effekte. In der ganzen Mathematik ist los. 30 ist tot. Und so hat er keinen Schaden mehr erlitten. Aber er ist, er ist ein Verrückter. Und ich glaube, das funktioniert, also habe ich kein perfektes Spiel, aber für ihn in den Kopf sollte 8650 sein, um etwas Erfahrung damit zu sein. Sagen Sie jetzt bei der Mathematik, ich hätte es auch vermasselt. Meine Auswirkungen Effekte sind meine Materialien scheinen, als ob der Kopf war der Kopf eingestellt, um dort zu sein. Ja. Das wird schwieriger zu erkennen sein, ob die genauen Schadensberechnungen und all das Zeug funktionieren, bis wir die Schadenszahlen auf dem HUD auftauchen. Aber wenn das falsch ist, gibt es eine einfache Sache zu beheben. Es ist wahrscheinlich ein blöder Fehler. Genau wie das Setzen auf den falschen Typ oder das Festlegen der falschen beschädigten Schwellenwertskala. Oder vielleicht sogar auf der Physik-Leiche der Schaufensterpuppe hier. Vielleicht stellen Sie einige dieser Dinge als die falschen oder so etwas. Man weiß es nie. Es gibt einige albern Dinge, die passieren können, aber das funktioniert wie vorgesehen. Bisher. Du kannst unsere Waffe abholen, damit du reingehen und zu den anderen Hit-Scan-Waffen gehen kannst . Und du kannst zwischen den Videos verschiedene Schadenszahlen unter einer Waffenstatistik zuweisen und sehen, wie viel Schaden du anrichten willst. Das wird wahrscheinlich mehr Fummeln mit, wenn wir tatsächlich die Schadenszahlen bekommen und wir bekommen verschiedene Dinge passieren, wenn unsere Feinde Diäten. Aber in der Zeit kannst du da drinnen rumdrehen und Spaß haben. Aber ja, ich hoffe, ihr habt dieses Video genossen. Danke, dass Sie zugesehen haben. Sie haben Fragen, lassen Sie es mich wissen und wir sehen uns in der nächsten. 29. Betrachtung: Hey, alle. In diesem Video werden wir die Fähigkeit hinzufügen, nach unten Sicht unserer Waffe zu zielen. Der Hauptgrund, warum ich das jetzt statt später machen wollte, ist, weil wir, wie es jetzt steht, nicht wirklich genau sagen können. Ich schätze, wenn wir uns anders eingeschaltet haben. Nun, okay, sieh mal, es gibt einige Möglichkeiten, wie wir es tun könnten. Wir könnten die Leitungsspur wieder einschalten. Wir guten Blick auf die Auswirkungen wirkt vor Setup, aber ganz ehrlich, Ich fühle mich wie diese Funktion ist irgendwie lange überfällig. Und wenn wir darauf zielen, dann gehen unsere Linienspuren perfekt aus. Wir machten uns Sorgen um jede Art von Kugeln, verteilten Dinge. Gehen wir also weiter und machen das jetzt. Also innerhalb unseres Charakters haben wir bereits Ziel Variable, aber wir wollen eine Eingabe-Aktion für das Ziel erstellen. Gehen wir also in unsere Einstellungen, Projekteinstellungen, Eingabe. Und lasst uns noch einen machen und dieses Ziel nennen. Und so machen wir es mit der rechten Maustaste. Zurück in unserem Spieler, in unseren Action-Mappings, Lasst uns auf Ziel rufen. Richtig? Also will ich nicht in der Lage sein, zu zielen. Alle wurden neu geladen. Das ist in erster Linie, lasst uns das Nachladen bekommen. Und sagen wir nicht. Mal sehen, ob es das auf das Gepresste setzen wird. möchte nicht in der Lage sein, nachladen zu können, während es regnet. Nun, die Art und Weise, wie wir das tun werden, ist, dass wir einen Event Dispatcher verwenden. In Ordnung? Wir müssen nicht unbedingt, aber ich werde es so tun, nur um Ihnen zu zeigen, wie Sie Event Dispatcher verwenden. Das erste und vor allem, was wir setzen wollen, ist das Ziel, hier wahr zu sein. Wenn wir den Knopf drücken. Und dann, wenn wir loslassen, wollen wir, dass dies so auf false zurückgesetzt wird. Gehen wir also voran und erstellen Sie diesen Event Dispatcher. Und wir nennen dieses Ziel eingeben, und wir nennen ein anderes Ziel Exit. Was Sie also mit einem Event Dispatcher tun können, ist, wenn Sie ihn herausziehen, können Sie Sie kombiniert anrufen oder zuweisen. Glauben Sie, dass alles hier tun wird, ist es anzurufen und zu binden. Also, wenn du anrufst, so okay, lass mich das erklären. Sie können Ereignis-Dispatcher an mehrere verschiedene Ereignisse binden , die in Ihrem Spiel vorhanden sind. Also, wenn ich eine benutzerdefinierte Ereignisse erstellen und ich sage hallo. Diese kleinen Knoten, die Sie binden können, Event-Dispatcher, können sie damit verbinden. Das ist, was diese kleinen Knoten oder vier. Was Sie tun können, ist, dass Sie ein Ereignis an einen Ereignis-Dispatcher binden und dann diesen Event Dispatcher aufrufen können. Und wann immer es aufgerufen wird, ruft es auch alle anderen Ereignisse auf, an die es gebunden ist. Also, wenn wir dies klicken, Lassen Sie uns Ziel geben. Sagen wir dem Spiel einfach, dass wir unser Ziel erreicht haben. Wir wollen Bewegungen gestoppt nennen. Wenn wir also zielen, wollen wir nicht sprinten. Das ist immer eine gute Sache. Und dann gehen wir weiter und holen unsere Ladung aus. Und das ist komisch. Und schalten Sie es ein. Und kopieren Sie Einfügen. Wir wollen das zweimal machen. Lass es uns da einschalten. Dann nennen wir ihn „Exit“. Wenn wir nicht zielen. Und wir können das eigentlich anordnen, damit es irgendwie schön aussieht. Lassen Sie uns das auch hier einschalten. Okay, jetzt holen wir unsere Charakterbewegungskomponenten, weil wir überprüfen wollen, um sicherzustellen, dass wir unsere Gehgeschwindigkeit einstellen wollen, also setzen und maximale Gehgeschwindigkeit. Und wir wollen das für beide tun. Also die Ziele. Und dann für hat Waffe es als Waffe verpasst. Das gefällt mir. Das sieht gut aus. Wenn wir also unseren Ausgang anstreben, wenn wir unser Ziel verlassen, wollen wir maximale Gehgeschwindigkeit erreichen, die Variable, die wir auf 750 gesetzt haben. Und dann können wir das auch als Variable festlegen, aber ich setze es einfach auf 250. Das wird, weißt du, ich werde nett sein. Zielend, Gehgeschwindigkeit, das wird bei dieser Bewegung hoch sein. Max. Gehgeschwindigkeit. Ziel Gehgeschwindigkeit wird 250 sein. Sie möchten das also einer Variablen präsentieren. Das kannst du auch ändern. Und so werde ich nur verlangsamen Spieler nach unten wenn wir nicht in der Lage sein wollen, mit voller Geschwindigkeit zu bewegen, während Amy nicht gut aussehen wird. Es fühlt sich auch sehr schwer, sich in den meisten Spielen zu bewegen, wenn Sie zielen sie langsam Jahr, Gehen Geschwindigkeit nach unten wie folgt. Das ist es, was wir dort machen. Okay, das ist alles, was wir in unserem Charakter tun müssen. Das nächste, was wir tun müssen, ist, dass wir in unsere Waffenbasis gehen müssen. Und gehen wir zum Ereignisdiagramm. Und gehen wir zu Event Begin Play direkt hier. Und wir haben diese Spielerreferenz hier. Also können wir das direkt von hier aus machen. Also lasst uns Ereignis binden eingegeben Ziel Ziel. Hier ist unser Event Dispatcher hier. Und machen wir es noch mal. Bind Event, um Exit zu zielen, so. So können wir jetzt ein paar Ereignisse erstellen und sie daran binden. Wenn dies geschieht, werden diese Ereignisse auch passieren. Okay, also lasst uns ein benutzerdefiniertes Ereignis erstellen und dieses Waffenziel nennen, geben Sie ein. Und lassen Sie uns eine Variable zu schaffen ist Zielwaffe. Und das wird wahr sein. Und dann für AIM-Exits, lasst uns dasselbe tun. Wir sagen Waffe, Ziel Ausgang. Und dies werden kurze Ereignisse sein, die diesen booleschen Wert ein- und ausschalten werden. Ok? Und wir werden sagen, Geldstrafen die darauf abzielen, ADS-Eingabe-Aktion auf dem Teil. Also, was das tut, ist es, diese Variablen im Wesentlichen mit diesen zu binden. Und es gibt einen anderen Weg, es gibt andere Möglichkeiten, das zu tun, oder? Aber ich wollte Ihnen zeigen, wie man es durch einen Event Dispatcher macht, damit Sie eine viel komplexere Zeile von Code-Skript, Ereignis oder was auch immer hier heraus erstellen können, das an etwas binden und Sie können Dinge mehrere Male binden und wie sieben verschiedene Ereignisse gleichzeitig abfeuern. Wann immer Sie einen Event Dispatcher aufrufen. Ein einfacher Weg, den wir hätten tun können, ist auf unserem Interact-Skript. Wir hätten gerade einen von diesen namens Interact erschaffen können. Und wir können einfach anrufen interagieren in unserem Interact-Aktionsereignis und setzen Aktion könnte einfach sagen, rufen Sie ihn an, rufen Sie interaktiv an. Und wir können eine Reihe von verschiedenen Ereignissen, die daran gebunden sind, in einem von ihnen könnte ein Ereignis sein , das wir wie Kunde schlecht haben könnten und uns anrufen interagieren oder was auch immer, und dann stecken Sie das ein. Und dann könnten wir das an einen Event-Dispatcher binden und es dann direkt hier nennen. Es ist eine andere Art, Dinge zu tun. Ja, so machen wir es nicht. Weil wir zu cool sind. Eine Sache, die ich hier tun möchte, ist das automatische Nachladen auf leer. Ich möchte Waffenzielausgang nennen. Dieses Ereignis, Waffe Ziel Ausgang. Oh, wow. Das ist wie buchstäblich genau da. Warten Sie. Ja. Ja. In meinem Kopf. Ok. Ja. Das sind nur seltsame Ordnung. Ok. Also erinnern wir uns nur an dieses Ereignis. Wenn wir also automatisch auf leer laden, wollen wir unser Ziel verlassen. Wir wollen nicht gleichzeitig zielen und nachladen. Das ist also gut zu tun. Eine Menge davon wird in unserem Scharfschützengewehr sein. Denn das Scharfschützengewehr, das, da es ein Zielfernrohr ist, wird etwas anders funktionieren. Also, die hier drin zu binden, wird uns helfen, wenn wir das Scharfschützengewehr erschaffen. So sehen Sie möglicherweise nicht eine ganze Reihe von Funktionen damit jetzt, aber es wird später wieder kommen. Also das nächste, was wir hier tun müssen ist in unseren anim-Blueprint über unseren Charakter zu gehen. Weil wir diese Cache-Pose verwenden und eine ganz andere Sache erstellen und dann diese Pose einlösen und das dann hineinstecken. Bu denn wir tun das. Nun, wir müssen sicherstellen, dass all unsere Dinge gesagt werden, alle unsere Variablen tatsächlich in Erinnerung bleiben. Also müssen wir drei Variablen in unserer Waffenbasis erstellen. Also rufen wir 11 X Offset an. All diese werden Float-Rechtschreibung sein. Also habe ich einen x-Offsets, Y-Offsets und einen Z-Offset. Und ich werde das in eine Kategorie namens Ziel setzen. Also lassen Sie uns zuerst den X-, Y- und Z-Offset machen. Also lassen Sie uns diese Variablen hier jetzt hinzufügen. X Offset des Typs float, y Offset. Wieder schwebt und dann Z-Offset. Alles klar, und dann wollen wir zielen. Und das wird so ein Boolean sein. In Ordnung, also gehen wir hier rüber, nachdem es neu geladen wird. Lassen Sie uns voran gehen und setzen zielt darauf ab, die Spielerreferenz zu erhalten und bekommen ist das Ziel zu Hause. Sogar nochmal, faul mit meinen gemeinsamen Boxen. Ich weiß, was das macht. Aber es ist schön, sie noch getrennt zu haben. Okay, das nächste, was wir tun wollen, ist, den Spieler zu setzen. Holen wir uns ihre aktuelle Waffe. Und dann lassen Sie uns den X-Offset bekommen und dann als X-Offset hier setzen. So, so wie das, genau so. Und dann machen wir das für den Y-Offset. Legen Sie fest, das ist der Y-Versatz. Und dann ein letztes Mal, aber die z-Offsets setzen dies. Das ist, ich werde das später erklären. Was diese Zahlen tun, wird Offsets für jede Benennung sagen. Diese Variablen sind also x, y und z. Wir werden pro Waffe anpassen, um in der Lage zu sein, zu diktieren, wo wir die Waffe tatsächlich bewegen wollen , um sie aussehen zu lassen, als ob sie sich mit dem Bildschirm an der exakten Mitte genau dort schneidet . Nun, da wir unsere Variable Setup haben, können wir sie jetzt verwenden. Also lasst uns x schnappen und uns Hawaii schnappen. Und lasst uns z schnappen und greifen, zielt darauf ab. Willst du sie alle schnappen. Wir fangen mit dem Last-Außenposten an. Also lasst es uns holen und es von dort kaputt machen und packen. Und wir wollen, wie üblich, wir wollen, zu transformieren, zu modifizieren Knochen. Der Knochen, den wir ändern werden, ist B Wirbelsäule eins. Wieder mal. Was wir tun werden, ist, dass wir die Skala und die Rotation loswerden , und wir werden uns trennen. Ich glaube, das habe ich falsch gesagt. Befreien Sie sich von der Skala und der Drehung und teilen Sie die Übersetzung. Und dann werden wir x, y und z in diese Werte stecken . Lassen Sie uns voran und bekommt eine neue Animation. Gehen wir zu einem Shooter-Spiel. Animationen drin sollten ein Anruf ein Gewehr sein, AIM. Ziel. Ja. Also lassen Sie uns ja treffen, es wird Ihre Skelett Lese-Ziele spielen. Ich denke, das hat tatsächlich so, als gäbe es einen Soundeffekt, den wir hier hinzufügen können. Also, wenn Sie wollen, klicken Sie hier auf Hinzufügen benachrichtigen und spielen Sound und dann den Sound und Sie müssten wahrscheinlich, um die Sounddatei zu reparieren. Das haben wir jetzt hinzugefügt. Also gehen wir zurück zu unserem Aim-Blueprint und lassen Sie uns Gewehrzielen gehen. Und das wird eine lokale Schuldenkomponente schaffen. Also nehmen wir unsere Gewehrziel-Animation, und dann werden wir diese Wirbelsäule durch verschiedene Werte kompensieren , die wir setzen werden, weil dieses Gewehrziel nicht jede Waffe perfekt einrichten wird , um perfekt in die Mitte des Bildschirms. Also werden wir in der Lage sein, diese Zahlen entsprechend zu setzen, um es besser aussehen zu lassen. Also lassen Sie uns Posen nach Bool mischen. Lassen Sie uns das für die wahre Pose einstecken. Wenn wir das Ziel haben, dann ja, wir wollen das tun. Wenn wir nicht zielen, werden wir nur diese Last-Außenposten verwenden, die wir hier von der Ausgabe unseres Nachladens haben . Also habe ich einen kleinen Computer und ein eigenes Skript. Schmeiß das hier rein. Oh, okay, und dann lasst uns diese Pose zwischenspeichern und wir sagen, dass wir zielende Züge ausladen . Mir gehen hier die Namen aus. Ja. Okay, und dann lassen Sie uns niedrige Last aus Zielpose-Befehl bekommen. Oh, meine Güte. Oh, meine Güte. Sakes. Und eine halbe Stunde später. Sie könnten jederzeit direkt da sein und sein Blinde, was auch immer. Ok. Jep. Lass uns voran gehen und Offset hinzufügen, um Waffe zu drehen. Beim Abzielen der Website oder was auch immer Sie dort sagen wollen. Dann machen wir unsere übliche Farbe. Das wird also tun. Also, was ist es nicht wie Transformationskomponenten zu ändern, ausgewählt? Mein Gott, wie es uns gemacht hat, ich hasse, wie es immer Standard ist, ignorieren. Stellen Sie sicher, dass Sie es zu vorhandenen hinzufügen. Und dann wird es dir die Luft geben. Wenn wir jetzt kommen und eine Waffe schnappen und wir zielen, können Sie sehen, wie sie nicht perfekt ist. Es tut, was es tun soll. Aber es ist nicht eindeutig nicht an der richtigen Stelle, oder? Aber es zielt darauf ab. Und Sie werden feststellen, dass das wie perfekt gemacht ist unsere AutoML-Rentenschaden aber und sehen, wie das perfekt auftaucht, wo wir nach rechts posieren wollten. Also macht es das kühne Spread-Ding. Und dann zielt es perfekt. Es sieht einfach dumm und lächerlich aus. Das nächste, was wir tun werden, ist, dass ich Ihnen sagen werde , was diese Werte für jede Waffe sind. Und so gut, es sieht nicht schrecklich aus. Gehen wir also weiter und machen das jetzt. Ich werde sie dir in einer Schnellfeueraktion geben. In Ordnung, also für das Auto-Gewehr, wirst du einen X-Offset von 1,5 haben. Der y-Offset wird negativ zehn sein, und der Z-Offset wird 0,5 sein. Kompilieren und speichern Sie das. Wir machen das nächste Produkt, das du nicht tust. Der erste X Versatz ist 0,9. Der Y-Offset wird 15 sein. Also wird es das ziemlich vorwärts schieben. Und dann wird die z versetzt, um es nach oben zu bewegen, wird 9,2 sein, die Schrotflinten als nächstes. Und X Offset wird 1.3 sein. Y-Offset wird negativ 0,5 sein. Und nicht zuletzt wird der Z-Offset sieben sein. Also auf halbem Weg, lassen Sie uns das einfach zeigen. Also haben wir diese Waffe, diese Waffe, dieses Waffenset. So sieht das jetzt aus, du kannst immer noch den weißen Punkt sehen. Wir werden das in einer Sekunde verschwinden lassen. Aber das sieht wirklich, wirklich gut aus. Ich denke, dann ist die Schrotflinte auch sehr genau da. Es funktioniert also alles gut. Gehen wir weiter und machen das nächste. Diese Scharfschützengewehre gehen, um ein wenig anders zu arbeiten , so dass Sie eigentlich nicht brauchen, um es überhaupt zu kümmern . Also ja, mach dir keine Sorgen. Aber für den Granatwerfer wird der X-Offset 0,5 sein. Y wird bei 0 belassen, und dann wird z auch 0,5 sein. Und schließlich, für unseren Raketenwerfer, wird das x ein Wert von 1 sein. Y wird wieder auf 0 belassen, und dann wird z negativ vier sein. Bei all dem, wie ich schon sagte, spielt der Scharfschütze, dunkle Scharfschütze keine Rolle. Aber wir haben einige Clipping-Probleme mit dem Raketenwerfer. Aber die Granatwerfer sieht aus, es sieht gut aus. Dies wird auch einen Bogen schießen. Das letzte, was ich denke, dass wir tun sollten, ist, dass wir in unser Rot gehen können, ich setze diese Blaupausen in unser HUD und wir können, naja, mehr Produkt zu bearbeiten, beginnen zu spielen, richtig? Holen Sie sich einen Verweis auf unseren Charakter. Okay, und dann bekommen wir eine if-Aussage hier raus. Und dann werden wir sagen, git zielt darauf ab. Wenn wir nicht zielen. Und wir wollen das Rechteck zeichnen. Also sehen wir die kleine Linie hier und sie verschwindet. So verschwindet ein kleiner weißer Punkt. Nun, wenn wir zielen, genau wie der Rest des Fadenkreuzes. Also können wir das einfach als Radikal verwenden. Du willst also nicht immer diesen weißen Punkt sehen. Das ist also ein Skript, das ich ziemlich hässlich gemacht habe. Ich werde es in einer Sekunde schön aussehen lassen. Und das kannst du auch tun, wenn du möchtest. Sonst funktioniert es, aber so zielen wir in unserem Spiel. Und die Kugel ausgebreitet Sache sah aus, als hätte es gut funktioniert. Das sollte also alles gut und gut sein. Also ja, das ist, wie Sie in Videospielen wollen, um dieses Video zu packen. Und ich werde dich im nächsten sehen. 30. Zoom: Hallo alle und willkommen zu einem anderen Video in der letzten Lektion, wenn ich mich richtig erinnern kann, weil es zugegebenermaßen eine Weile her ist. Nennen Sie es? Wir fingen an, dem Spiel Ziele hinzuzufügen. In diesem Video möchte ich nur eine Funktion hinzufügen. Also, wenn wir in unser Spiel springen und uns eine Waffe schnappen, oder ich meine, jede davon ehrlich und fortsetzen oder wir zielen. Man merkt, dass die Kameras ein wenig weit zurück, das ist ein wenig schwer zu sehen. Was wir also tun können, ist, dass wir unser Sichtfeld ändern können. Wir können diese Kamera ein wenig schieben, wenn wir zielen oder nicht, und machen sie ein bisschen dynamischer. Im letzten Video habe ich auf ein Problem gestoßen, und ich löse das ziemlich schnell, wenn wir zu unserem Feind. Wenn Sie dies ist R berechnen Schadensfunktion, die Ereignisdiagramm genannt wird, rechten Hügel. Also, was Sie tun können, ist, dass Sie aus diesem berechneten Schaden ziehen können , als ob ich keine Schnur gedruckt habe. Jedes Mal, wenn du auf eine Waffe schießt, wird es dir diesen Schaden zurückgeben. Und ein dummer Fehler, den ich gemacht habe, war auf diesem Physik-Asset hier. Ich habe den Kopf gemacht, denke, dass es eine Hand war. Deshalb habe ich kleine Zahlen ausgepumpt, aber sehen Sie, dass ich meine Pistole auf 20 eingestellt habe und wenn ich schieße, tut es 201614610, und dann vier. So Zun für Schäden auf dem Kopf vor und das war peinlich. Es ist nicht das, was wir wollten. So ein einfacher Weg, um zu beheben, dass, wenn Sie so etwas begegnen, Lassen Sie uns voran und wählen Sie den Feind. Sie können zu diesem Asset gehen, indem Sie diesen Knopf drücken, öffnen Sie unser Physik-Asset und stellen Sie sicher, dass Sie überprüfen, ob diese korrekt sind. Also, was ich tat, war, dass ich einen Hals und Kopf zur Hand hatte und nicht den Kopf, weil sie ähnlich aussehen. Also war es vorher für Schäden getan. Das ist also eine einfache Möglichkeit, das zu beheben und sicherzustellen , dass und Sie die richtigen Physik-Assets bei haben. Und so war das wirklich das einzige Problem, das ich sicherstellen wollte, dass es behoben wurde. Das könnte eine andere Sache sein, die Sie wahrscheinlich nicht einmal getroffen haben. Aber ich habe es getan. Also lasst uns einfach weitermachen. Also lass uns die Waffenbasis öffnen und wir werden eine neue Variable erstellen. Und wir werden das nicht Feuerrate nennen. Ich schaue mir gerade die Feuerrate an. Sichtfeld. Wir werden es eigentlich Zielfeld nennen, weil es eine Variable gibt , die als Sichtfeld eingebaut ist, wird es zu einem Float machen. Dann wollen wir unsere Charakterkomponenten wie diese öffnen , weil wir unsere Kamera brauchen werden. Und wir wollen dies innerhalb einer Funktion tun. Also lassen Sie uns eine neue Funktion erstellen und wir werden dieses Zielfeld aufrufen. Wir können ihm den gleichen Namen geben. Erste Dinge zuerst, lasst uns voran gehen und bekommen ist das Ziel. Und wir wollen überprüfen, ob wir zielen oder nicht. Du willst, dass das nur passiert, wenn wir zielen. Gehen wir weiter und schnappen uns unsere Kamera. Und wir werden tatsächlich zwei davon dazu bringen, etwas von dem wahren und etwas von dem Falschen zu tun. Und so sagen wir, setzt Sichtfeld für beide von ihnen. Also, wenn Sie Gott, ich denke, wir wählen auf der Kamera und wir gehen in, Sie können einfach suchen Sie es bis Sichtfeld auf 90 gesetzt. Also werden wir das ändern. Also es 90, je größer die Zahl, desto weiter hinten wird es aussehen. Also eine Menge von Boilerplate, Leute, die PC-Spiele spielen, sind wie irgendwie machen dieses Sichtfeld wirklich breit, extra breit. Und das ist die Nummer, die sie ändern, wenn Sie das in Ihren Einstellungen tun. Also wollen wir diese Kamera ein wenig weiter schieben und das sind wir dynamisch eingestellt. Ok? Also brauchen wir wieder eine Kamera, und wir müssen die Sichtfeldvariable bekommen, die auf 90 gesetzt ist. Denkst du, das kannst du vielleicht ändern. Und wir wollen nicht, dass dies nur auf dieses neue, neue Sichtfeld einrastet. Wir wollen, dass es interpelliert, damit wir einen F Interrupt für Float bekommen. Interpretieren Ich habe vorher beschrieben, was Interpolation bedeutet. Dann holen wir unsere derzeitige Waffe. Deshalb mag ich es fast nicht, Dinge in Kategorien zu legen , weil ich herausfinden muss, oh Gott, wo habe ich das hingestellt? Und wir wollen dieses Blickfeld erreichen. Unser normales Sichtfeld ist also der Strom, den wir zum Ziel bewegen wollen, was wir festlegen werden. Also speichere ich diese Variable in den Waffeneltern, so dass wir immer wieder darauf zurückrufen können , in dynamischer Veränderung, je nachdem, was auch immer wir haben. Für Interrupt-Geschwindigkeit. Lass es uns einfach auf 10 setzen. Sie können dies ändern, was Sie wollen, von Ihrer persönlichen Präferenz. Wissen Sie nur, dass, wenn es auf 0 gesetzt ist, es sofort dort schnappen wird, dass wir bekommen werden. Welt, dass Delta Sekunden für unsere Delta-Zeit, es ist ziemlich normal dort. In Ordnung? Und dann werden wir das kopieren und einfügen. Und das Einzige, was wir tun werden, nun, gehen wir weiter und lassen Sie uns das einfach auf 90 setzen. Wenn Sie also Ihren Standardwert für das Ansichtsfeld ändern möchten, können Sie dies durch Amine zu einer Variablen heraufstufen, aber ich ändere es nicht von 90 SMS zu hart, setzen Sie es auf 90. Okay, also läuft das im Wesentlichen nur, wenn wir nicht zielen. Also ist die Strömung 90 und wir bewegen uns in 90, wo das eine andere Art ist zu sagen, dass wir nichts tun. Und dann werden wir dieses für das Sichtfeld zurückgeben. Wenn wir so zielen, oh, ist es wunderschön. Und dann können wir sagen, Änderungen, Was ist Phantasie F0 v. Wenn Ziel Waffe, die hahaha. Wie ein so schönes wie das, wunderbares Kompilieren, Speichern, tun, was immer Sie tun müssen. Jetzt gehen wir zurück zu unserem Aufstieg und Basis und wir werden im Event Graph sein, wenn Sie noch nicht da sind. Und lasst uns einfach in den offenen Raum gehen. Und wir werden das aus dem Ereignis-Tick laufen wollen. Wenn Sie sich erinnern, ist das Ereignis-Tick wie ein ungültiges Update. Es läuft jeden Rahmen oder jede Sekunde wird zur gleichen Zeit stattfinden, ich denke, Lassen Sie uns sagen, jeden Rahmen, okay, Professional. Lasst uns unseren Spieler schnappen und wir wollen diese Veranstaltung durchführen. Jeder einzelne Rahmen. Ziel Sichtfeld, wir wollen überprüfen, okay, zielen wir die ganze Zeit? So können wir dieses Sichtfeld ändern. Also lassen Sie uns für dieses Sichtfeld standardmäßig auf den Standardwert 70 setzen. Also wissen Sie einfach die niedrigere Zahl, als Sie es eingestellt haben. Je weiter es nach innen schiebt, desto mehr wird es so zoomen. Ich werde das nur für den Moment dort lassen. Da dies also auf 70 gesetzt ist, sollten Sie das tatsächlich sehen. Also, wenn ich unser Auto Gewehr schnappe und du kannst jetzt sehen, wenn du zooms in und zooms wieder so rauszoomen kannst. Und wenn Sie bemerken, haben Sie vielleicht eine Art Clipping-Problem mit der Waffe gehabt und da die Kamera zoomt, wird es das tatsächlich beheben. Wenn ich also etwas Dummeres wie 30 machen würde und du eine Art von mal sehen wolltest, hast du wie ein viermaliges Spielfeld auf deiner Waffe, dann wird es wirklich nicht so schlimm aussehen. Es ist irgendwie cool in gewisser Weise, aber das ist der Effekt, den wir so machen, aber ich werde es auf 70. Ich denke, das ist etwas weniger lächerlich. Also kannst du voran gehen und in jede dieser Waffen springen und diese ändern, damit du die Pistole vielleicht ein bisschen mehr zoomen kannst. Unser Raketenwerfer macht so eine seltsame Clipping-Sache. Ich werde Ihnen zeigen, wie Sie das beheben können, aber nur wissen, dass es viele Schritte erfordern wird. Also, wenn Sie in die Projekteinstellungen gehen und nur ich bin, werde ich einfach in die Nähe gehen, dass in. Sie werden in der Nähe der Schnittebene sehen. Wenn Sie dies auf eine niedrigere Zahl wie fünf oder so einstellen, wird das wahrscheinlich dieses Clipping loswerden, das Sie sehen. Es wird mit einem Kompromiss kommen, was bedeutet, dass Dinge, wenn ich mich richtig erinnere, Dinge in der Ferne nicht unbedingt so weit geladen werden , weil die Schnittebene näher an der Kamera ist. So tun Sie damit, wie Sie möchten, dies ist ein freies Land, in dem ich lebe, kann es tun. Sie werden nicht nur wissen, dass, wenn Sie diese Einstellung ändern, im Gegensatz zu vielen anderen Einstellungen hier, Sie müssen Ihr Programm schließen und dann öffnen Sie Backup Ihrer Unreal Editor tatsächlich sehen diese Änderungen. So kann es ziemlich mühsam sein. Und Sie werden wahrscheinlich auch Ihre X-, Y- und Z-Offsets ändern müssen . Weil das vielleicht sein könnte, wird es nicht verändert werden. Es wird wie ein Blick ein wenig anders, wenn diese Schnittebene ändert. So hat einige Dinge im Hinterkopf, aber ja, gehen Sie voran und gehen Sie in die verschiedenen Waffen und sehen, welche Art von Zoomstufen Sie wollen. Ja, das funktioniert alles. Es sieht alles gut aus. Das ist alles, was ich für dieses Video habe. Danke fürs Zuschauen. Wir sehen uns in der nächsten. 31. Hit hinzufügen: Hallo an alle und willkommen zurück zu einem anderen Video. In diesem werden wir unser feindliches Drehbuch fortsetzen. Und wir werden unserer feindlichen Waffe ein paar Treffer hinzufügen. Ich weiß nicht mal, was es ist, welches es technisch sein würde, was es auftauchen wird und wir haben den Feind getroffen. Also werden wir hinzufügen von, wenn Sie nicht bereits unseren Feind offen für dieses Ereignis, Feind erleiden Schaden. Statt dieser dummen Zeichenketten, werden wir tatsächlich ein paar coole Sachen machen. In Ordnung, also fangen wir an, indem wir in unseren UI-Ordner gehen und wir werden ein neues Widget erstellen und wir können einfach diese Treffer Marker nennen. Wenn Sie nun die Projektdateien für diese Klasse heruntergeladen haben, die Sie haben sollten, werden wir sie hier verwenden. Also lassen Sie uns unter Symbole gehen und wir werden Marker getroffen haben. Dies ist für unsere Minimap, die wir noch nicht notiert haben. Das ist unser Scharfschützengewehr. Gehen wir einfach weiter und ziehen Sie einfach alle drei davon ab. Sie können sich frei fühlen, einen anderen Ordner namens Texturen zu erstellen, aber ich werde sie einfach alle in der Benutzeroberfläche platzieren. Nun, diese werden auftauchen und ziemlich albern aussehen. Damit wir das beheben können, als ob wir das öffnen würden. Und wenn wir hier zur Texturgruppe gehen, setzen wir dies auf UI. Sie können sehen, dass es jetzt behebt, dass nichts wirklich daran ändert. Es lässt nur das kleine Thumbnail nicht wie gerader Müll aussehen. So lustige Fakten überall gibt es einen Weg, um alle von denen alle zur gleichen Zeit zu tun, aber sind nicht so professionell. Okay, also lasst uns diese Säuren hier rein. Gehen wir weiter und gehen Sie auf unsere Hit-Marker-Widgets. Und wir werden jetzt einige coole Dinge tun, anders als vorher, wir wollen tatsächlich, dass dies von einem wie, perfekt ist, wir werden nicht, um dies zu wünschen oder Kunden irgendetwas, weil wir wollen, dass dies in der Mitte unseres Bildschirms angezeigt wird. Denn wenn Sie auf diese Weise darüber nachdenken, gut, Treffer Marker sollten immer in der Mitte des Bildschirms sein, weil unsere Kugeln aus der Mitte des Bildschirms schießen. Wir müssen also nichts Superverrücktes damit machen. In Ordnung, also lassen Sie uns weitermachen und ein Bild zu unserem Leinwand-Panel hinzufügen. Und wir rufen diesen Marker einfach an. Wir können dies zentrieren oder es in der Mitte verankern, sagen Position 0, Position y ist 0. Und wir müssen es 0.5.5 in der x und der y ausrichten und auch die Größe zum Inhalt treffen. Jetzt können wir in unserem Hit Marker Dingy, und es ist ginormous. So können Sie dies so einstellen, dass es sich um einen beliebigen Wert handelt. Ich werde 60 mal 60 wählen. Also machen wir es so. Und das sollte gut sein. Da ist also unser kleiner Marker. Ich habe das in Photoshop gemacht. Es ist nicht das Größte, aber es wird die Arbeit erledigt. Was wir jetzt tun werden, ist, dass wir 0 wollen. Es ist bereits eine Variable. Nun, unwirklich, die Waffe auf mich zu springen. Wir werden ein paar Animationen erstellen. Wir wollen zwei von ihnen erschaffen. Wir wollen eins für eins machen, wir bekommen einen normalen Treffer, und einen, wenn wir einen Kill Hit bekommen, weil wir Lust haben. Okay, also lass uns eins erstellen, es normal nennen, so schlagen. Und das Einzige, was wir hier als unsere transformierte Kulisse vermasseln werden. Also, wenn Sie nach unten scrollen, um zu rendern transformieren, und wir werden zu tun Skalierung. Klicken wir einfach auf diesen Keyframe auf der Skala. Und es öffnet sich dieses Drop-Down-Menü und wir haben unsere Skalierungseinstellungen direkt hier. Also Standard, lassen Sie uns dies 0 um 0 machen, oder? Dann bei 0,2 Fünf relativ schnell, fügen wir zwei Keyframes hinzu und machen es 0,7 seiner Größe in voller Größe. Ok. Eigentlich machen wir es einfach in voller Größe. Alles klar, Punkte 75. Lassen Sie uns diese Keyframes erneut einstellen. Also drücken Sie einfach diese beiden Tasten wieder, so dass es immer noch auf der gleichen Größe für diese Zeit. Und dann um 1 Sekunde. Schließlich lassen Sie uns dies einfach bei zwei Schlüsselbildern tun und es auf 0 und dann wieder 0 setzen. Also, wenn wir diese Animation wiedergeben, wird es das einfach tun. Also kommt es hoch und zoomen Sie dann wieder nach unten wie dieser ganze schöne See. Okay, jetzt lassen Sie uns eine weitere Animation erstellen und diesen Tod nennen. Für den Tod getroffen. Es wird sehr ähnlich sein. Also werden wir noch einmal die Waage greifen. Standard oder nicht Standard, aber bei 0 Sekunden, machen Sie es 0.25. Ich werde das ein bisschen größer machen. Also vielleicht 1,2 mal 1, um das wieder auf 0,75 Sekunden zu setzen und dann bei 1 Sekunde, setzen Sie es zurück auf die 0. Jetzt ist es genau dasselbe, nur ein bisschen größer. Und die andere Sache, die wir ändern wollen, ist, dass es rot ist. So können wir dies tun, indem wir Marker treffen und dann auf Farbe und Deckkraft gehen. Und wir können ehrlich gesagt jeden von ihnen treffen. Ich werde nur R treffen und das Einzige, was wir tun müssen, ist, all diese Werte auf 0 zu setzen. Also sollte es bedeuten, dass a die Deckkraft ist. Also behalte das bei einem. Wir möchten, dass G und B auf 0 gesetzt werden. Und wir können das einfach die ganze Zeit rausziehen. Oder ich könnte in der Lage sein, loszuwerden, dass man eigentlich nur Omega gelesen werden soll. Jetzt ist es rot. Also haben Sie nur auf dem AR, machen Sie diese und dann Standard, diese sollten auf 0 gesetzt werden. Und es ist nur auf das Defizit. Also gehen wir zurück zum normalen Treffer. Es ist weiß und der Tod, aber es ist ein wenig größer und unsere Farben, nein, keine Arbeit. Okay, jetzt hasst mich das Spiel. Ok. Vielleicht haben wir das alles eingestellt. Oh, warte, bevor du zu einem zurückkehrst, dann goof ball. Ok. Stellen Sie es einfach als Zuhause ein. Es spielt keine Rolle. Genau so. Alles klar, da gehst du. Stellen Sie einfach die Keyframes für alle ein und das sollte funktionieren. Alles klar, jetzt müssen wir das Spiel im Ereignisdiagramm erzählen, wenn du diese Animation ausführen willst. Also werden wir vom Event-Konstrukt ablaufen. Und wir wollen eine neue Variable machen, und wir nennen das ist tot. Und es wäre ein Boolean. Und wir wollen das auf Laichen enthüllen. Und wir können einfach weitermachen und es auch editierbar machen. Weil warum nicht? Und was wir tun werden, ist, dass wir das mit der toten Variable verknüpfen , die in unserem Feind existiert. Deshalb stellen wir es auf Spawns offen, dass, wenn wir dieses Widget in diesem Blueprint erstellen, oder dieser Blueprint, den wir tun können, diesen Wert so einfach ist. Unter Animationen sollten Sie sehen, dass unser Tod einen normalen Kopf hatte. Also, wenn tot ist, ist wahr, Lassen Sie uns greifen definitiv und sagen Play Animation so. Und all das sollte in Ordnung sein. Die Standardeinstellung, wenn es nicht tot ist, wollen wir den normalen Treffer zu bekommen und diese Animation abzuspielen. In Ordnung? Und dann werde ich voran gehen und hier einen Verzögerungsknoten treffen, nur um diese zu verhindern. Und stecken Sie beide da rein. Nur um diese von seltsamen Überlappungen zu verhindern und die Dinge sind nicht einmal, dass sie nur Zeit für diese Animation tatsächlich spielen zu verhindern. Eine Sache, die Sie tun können, ist, dass Sie die Endzeit von diesen erhalten und das in eine Verzögerung stecken können. Ich mache das manchmal, aber um dieser 1 Sekunde willen funktioniert es gut. Das ist alles, was wir tun müssen. Wir können unsere Treffermarkierungen jetzt in B schließen, zurück in unserem Feind. Ok? Es gibt also ein paar verschiedene Dinge, die wir tun wollen. Wir haben unsere beschädigten Nummern noch nicht erstellt. Also müssen wir hier ein paar verschiedene Dinge erledigen. Ja, ich werde diese Drucksaiten vorerst behalten. In Ordnung, und das ist wahr und sagen Sie einfach, ich bin tot. Also wollen wir einen für das Falsche haben. Alles klar, dann wollen wir sagen, ob es gültig ist? Und wir stecken hier in einer Sekunde etwas an, und wir stecken die falsche Straight hier rein. Diese Dinge werden erst später mit unseren Schadenszahlen hinzugefügt. Ordnung? Dann aus ist nicht gültig. Es spielt keine Rolle, welche wir das tun. Lassen Sie uns ein Widget erstellen. Es spielt keine Rolle, welche wir das jetzt rausziehen. Und dann wollen wir unsere Treffermarkierung erstellen. Also, jetzt haben wir das ist tot Variable. Also lasst uns greifen ist tot von dieser Blaupause, es ist der Link, der oben. Nun sind diese beiden Variablen nun verknüpft. Lassen Sie uns voran und klicken Sie mit der rechten Maustaste und fördern Sie dies zu einer Variablen und nennen Sie es Hit Marker, ref als Referenz oder was auch immer. Und dann möchten wir zum Ansichtsfenster hinzufügen. Alles klar, cool. Jetzt haben wir diese Treffermarker-Referenz. Lassen Sie uns das so in unsere Eingabe-Objekte stecken. Aus ist gültig. Lasst uns, das können wir wahrscheinlich nicht tun. Schnappen Sie sich eine Treffermarker-Referenz und sagen Sie Vom übergeordneten Element entfernen, und schließen Sie dann das in off von ist gültig, wie dies, und verschieben Sie es dann zurück in die Kette. Der Grund dafür, dass dieser kleine Teil existiert, wird dies. Also wird es Sie bitten, das Treffermarker-Widget im Wesentlichen zu erstellen, oder? Und deine Kugeln oder ich schießen und ziemlich schnell, vor allem mit dem Auto Gewehr. So werden Sie, es wird das Spiel mit jedem Treffer sagen, um einen neuen Treffermarker zu erstellen. Aber das Spiel, das ich bekomme, werden wir ein wenig verwirrt, weil es sein wird, wie Sie versuchen, ein Widget zu erstellen, bevor es vom Bildschirm entfernt wurde. Sie erstellen es nur, erstellen und erstellen es, ohne es jemals zu entfernen. Es wird also verwirrt. Es gibt dir genau wie ein paar Warnungen oder was auch immer. Also diese Notiz hier sagt so ziemlich wie, okay, wenn die Treffer Marker bereits auf dem Bildschirm, dann entfernen Sie sie und erstellen Sie dann eine neue. Also könnte man einfach sagen, für Zwecke nur sagt, entfernt vorherigen Marker, wenn ein anderer Treffer vor dem ersten auftritt, dieser Peers, ich weiß nicht. Hoffentlich ergibt das Sinn. Es ist genau so, als ob es das Spiel davon abhält, Likes zu schaffen, um Marker auf einmal zu treffen. Also, einen von ihnen zu entfernen, wird es so schnell passieren, du es nicht einmal bemerken wirst, aber ja, es ist eine Sache. Das könnte nun so funktionieren, wie es ist, auch andere Teile des Skripts fehlen. Also lasst uns hier rüber gehen. Und lassen Sie uns schießen. Und da gehen wir. Also beachte, dass wir ihn oder sie nicht kriegen, also haben wir nichts getroffen. Aber wenn wir unseren Kerl treffen, bringen wir unseren Marker zum Auftauchen. Und wenn Sie es bemerken, sollten wir ihn bald umbringen. Da gehen wir. Da ist der rote, und Saddam tat es. Okay, und jetzt sollten sie nicht mehr auftauchen. Tun sie nicht. Das wird also auf dem Auto-Gewehr sichtbar sein. Also das Ganze wie das Entfernen von Eltern-Sache. Sie können irgendwie sehen, wie es nicht wie 4 Tausend von ihnen auf dem Bildschirm zur gleichen Zeit erstellt hat. Es ist wirklich schnell zu sehen, sind sehr schwer zu sehen, denke ich. Richtig? Da gehst du. Es gibt Treffer, wie so etwas wie die Schusswaffen, die ihn mit all diesen verschiedenen Spreads auf einmal treffen . Es erscheint also nur mit einem Treffermarker statt acht. So wie das. Alles klar, das ganze Zeug sollte funktionieren wenn deine Kugeln keinen Schaden anrichten. Nur um sicherzustellen, dass Sie in die Klasse gehen und zu Waffenstatistiken gehen und sicherstellen, dass Sie tatsächlich beschädigt haben. Einfache Sache zu verpassen. So ja, cool. Das sind Hit Marker. Nächstes Video, wir werden Schaden Zahlen zu tun und loszuwerden diese hässlichen Druck Strings und machen diesen Blick furchterregend genial. Okay, also sehe ich dich dort. Danke, dass Sie zugesehen haben. 32. Damage hinzufügen: Hey alle und willkommen zurück zu einem anderen Video. In der letzten Lektion haben wir Treffermarken zu unserem Spiel hinzugefügt. Und in diesem werden wir hinzufügen, um unsere ausgefallene Hose CUI und fügen einige coole RPG wie beschädigte Zahlen auf dem Bildschirm. Also lasst uns anfangen. Okay, gehen wir zu unserem Interface-Ordner. Und lassen Sie uns eine neue Schnittstelle hinzufügen. Gehen wir also zu Blueprints und Blueprint Interface. Und nennen wir dies, sollte den Namen gleichen BPI Unterstrich Schadenszahlen halten. Nun, was wir technisch aus einem benutzerdefinierten Ereignis machen könnten. Aber in unserem Spiel. Okay, wenn du darüber nachdenkst, wenn du dazu hinzufügen willst und du eine ganze Reihe verschiedener Feinde erschaffen möchtest. Nehmen wir an, ein Angebot einer Schnittstelle zu machen, wäre ziemlich einfach weil Sie dann einfach diese Ereignisse und diese Funktionen im Wesentlichen erstellen könnten , die innerhalb von hier erstellt werden. So konnte es sofort tun, indem Sie ein Ereignis machen. Aber so rollen wir hier nicht, okay? Weil ich dieses Projekt so erstellen wollte , dass Sie leicht ein Implementieren hinzufügen können. Deshalb machen wir es so. Also lasst uns den Namen unserer Standardfunktion ändern und diese Schadensnummern aufrufen. Und wir wollen hier drei Eingänge haben. Wir wollen, dass man ein Float ist, ein Vektor und dann ein Boolean sein. Und nennen wir den Schwimmerschaden. Es wird die Vektoraufprallposition genannt. Und nennen wir den Boolean ist ein Headshot so. Und es ist alles, was wir tun müssen. In Ordnung, und dann können wir innerhalb unseres bp-Feindes nach unten scrollen. Und gehen wir zu unseren Klasseneinstellungen und fügen Sie diese Schnittstelle hinzu. Also lasst uns BPI gehen. Bpi beschädigte Zahlen, kompilieren, und dann können wir Ereignis beschädigte Zahlen gehen. Also, jetzt haben wir sie hier angerufen und wir können anfangen, ein paar Sachen daraus zu machen. Aber wir haben nichts erschaffen. Wir haben unsere Schadenszahlen noch nicht erstellt, also müssen wir das zuerst tun, bevor wir davon abhauen können. In Ordnung, also lasst uns in die Benutzeroberfläche gehen. Lassen Sie uns ein neues Widget erstellen und wir werden diese Schadensnummern so nennen. Und wir können das aufmachen. Alles klar, das erste, was wir tun wollen, ist, dass wir diese Bildschirmgröße so einstellen, dass sie auf unserem Leinwand-Panel gewünscht wird. Lasst uns eine Größe Box setzen. Diese Größe Box, ich werde es nur Größe Box nennen. Ich werde das in eine Variable verwandeln. Und ich werde das auf 100 mal 100 setzen. So und du bekommst diesen Anker. Oh Gott, es zu verankern, hat das vermasselt. Ich schätze, das spielt wirklich keine Rolle. Oh, das haben wir. Nun, das ist peinlich. Okay, nun, negativ 50, 50, 100, 100. Es spielt wirklich keine Rolle. Ok. Ich mochte es nicht, das Ding in der Mitte zu sehen. Ok. Nun lassen Sie uns etwas Text zu unserer Größe Box hinzufügen. Aber dann oben auf der Größe Box. Und wir nennen das so etwas wie Oh, ich wusste nicht, dass es nicht in Ordnung ist. Beschädigter Text. Was ist, was für ihn unwirklich ist? Es ist, als ob ich mein Es ist gespalten noch nicht zeige. Auch die Bearbeitungen vornehmen. Okay, und lassen Sie uns voran und machen beschädigten Text variabel. Lassen Sie uns es in der Mitte ausrichten, so. In, lassen Sie uns es ein Standardtext wie eine Zahl wie 99 oder so etwas sein. Dann haben wir unsere Schriften hinzugefügt. Wir machen das zu der fett gewordenen Schrift. Wir werden es von einer Größe von schaffen, ich mag es nicht, so groß zu sein. Jemand kann Bein 18 bekommen. Fühlen Sie sich frei, diesen Look zu machen. Wie immer du willst. Das ist all dieses kunstvolle, schicke Stiefmütterchen Zeug für dich, das ich gerade mache. Okay, für einen Schattenversatz möchte ich ein bisschen Schatten hinzufügen. Also machen wir zwei mal zwei. Und für die Schattenfarbe werde ich tatsächlich diese Show machen, weil unser Wert jetzt auf nichts eingestellt ist. Ich werde es wie 0,5 über so etwas machen. Und weißt du, und ich bin glücklich damit. Sie können die Ausrichtung oder all diese seltsamen Einstellungen ändern. Aber auf den Punkt gebracht. Das ist es, was ich will. Okay, jetzt müssen wir eine Animation dafür erstellen und sie als Schaden oder so etwas bezeichnen. Und wir geben dem einen Effekt auf eine Art Pop-in und dann wieder raus. Alles klar, wir werden es wie zoomen, wieder nach unten zoomen und dann etwas nach oben schweben. Lassen Sie mich einfach darüber nachdenken, was ich hier für eine Sekunde tun soll. Das erste, was ich tun möchte, ist Chaos mit der Waage. Gehen wir also voran und stellen Sie sicher, dass beschädigter Text ausgewählt ist und gehen Sie nach unten, um zu skalieren. Holen wir uns das X und das Y, und es könnte verschwinden. Also wollen wir, dass dies zuerst 0 ist. Und dann nach wie 0,25, Lassen Sie uns es wie 1,5 seiner Größe machen. Ordnung, und dann bei 0,5, Lassen Sie uns es einige Keyframes hinzufügen können seine wahre Größe bei 11 erhalten. Es tut also so etwas. Und dann war's das. Eigentlich muss ich für die Waage tun. Ok. Das ist also cool. Weißt du, ich habe darüber nachgedacht, dass es irgendwie verblasst wenn du willst, dass es hier einblendet. Ich schätze, wie ich schon sagte, ich will nicht wie eine lächerliche Menge Zeit mit den Widgets verbringen und gerne all das tun, weil du es so machen wirst, wie du es trotzdem aussehen lassen willst, in Ordnung. Das einzige andere, was ich tun möchte, ist, dass ich mich mit der Übersetzung in den X und Y verwirren möchte . Also lassen Sie uns hier einige Keyframes wie diese hinzufügen. Und dann gehen wir einfach auf 1,25. Und ich denke, wir brauchen nur das Ja, wir brauchen nur das y. So kann es tatsächlich die x1's löschen. Und dann lassen Sie uns das so einstellen, dass es vielleicht wie negative 10. Also, jetzt wird es in einer Art wie bewegen nach oben so spielen. Oh, wir brauchen es, um ein- und auszublenden. Ja. Du musst es dazu bringen, wegzugehen. In Ordnung. Sehen Sie, wie wir das tun müssen, okay? Aber wir haben unsere Bewegung irgendwie nach unten. Gehen wir nun zu unserer Benutzeroberfläche, da wir einen Schatten hinzugefügt haben. So unwirklich funktioniert. Sie müssen dies mit der Schattenfarbe und nur der normalen Farbe und Deckkraft tun. Also werden diese beiden Dinge dasselbe sein, die gleichen Werte. Also standardmäßig können wir dies einfach 0 machen. Zu der Zeit haben wir 0,25 erreicht. Machen wir es zu einem Set. Das Ganze ist mit 1 Sekunde geladen. Fügen wir einfach die Keyframes erneut hinzu, um sicherzustellen, dass diese auf eins gesetzt sind. Und dann bei 1.25, Lassen Sie uns den a Wert 0 machen. Also, wenn wir jetzt diese ganze Animation wiedergeben, tut es das. Alles klar, ich bin zu verrückt. Wie ich schon sagte, fühlen Sie sich frei, mit dem Hinzufügen von Keyframes beim Verschrauben mit einer ganzen Reihe von Dingen verrückt zu werden, alles mit diesem Label, das Sie ändern können. Sie können einen Keyframe erstellen und diesen Wert im Laufe der Zeit ändern. In Ordnung? Aber wir werden nicht eine ganze Menge Zeit damit verschwenden. In Ordnung, also lassen Sie uns von Event Construct hier rüber gehen. Und lasst uns den Beschädigungstext packen. Oh, weißt du was? Wir müssen ein paar Variablen darin erstellen. Also lasst uns eins machen und es Schaden nennen, und machen es aus Schwimmer. Und lassen Sie uns eine erstellen und sagen, ist Headshots in machen es eine boolesche Inlets-Instanz editierbar und stellen beide auf Spawn. Der Grund, warum wir das getan haben, ist, weil wir es brauchen, wir haben sie hier geschaffen und wir wollen diese beiden Dinge letztendlich miteinander verbinden. Okay, also lasst uns unseren Schaden nehmen. Dies wird das sein, was unsere aktuelle Druckzeichenfolge tut. Wie viel Schaden wir anrichten. Eine Sache, die wir derzeit tun wollen, ist, wenn wir nicht wollen, dass unsere Zahlen Dezimalstellen zeigen. So, wie die Mathematik funktioniert, ist es möglich, dass wir 7,5 Schaden oder so etwas anrichten könnten. Wir möchten nicht, dass beschädigte Zahlen als 7.5 angezeigt werden, obwohl dies möglicherweise genauer sein könnte. Also können wir mit Schwimmer tun, ist, dass wir den Snowden plotten können, sagen wir Boden. Und was das tun wird, ist, dass diese ganze Dezimalstellen verhindert. Es wird, Es ist irgendwie wie abgerundet. Ordnung. So sind beschädigte Texte, die Sie setzen möchten, setText, erhalten Sie diesen Widget-Set-Text, und dann stecken Sie dies so ein. Also wird es diese kleine zusätzliche Notiz hier hinzufügen und dann werden wir das einstecken. Also, was das tut, ist, dass wir machen, was diese Schadensnummer ist, was nichts in dieser Blaupause ist, aber wir werden es mit Schäden hier verbinden. Und dieser Wert, der in unserem Web und Blaupausen gesteuert wird, werden wir diese beiden Dinge verknüpfen. Wir stellen sicher, dass keine Dezimalstellen angezeigt werden. Und dann werden wir es wie in loswerden von den Dezimalstellen, weil wir das sehen wollen. Okay, jetzt holen wir unseren beschädigten Text wieder. Und ich will greifen ist erreicht. Also möchte ich die Farbe des Schadenstextes ändern , wenn wir einen Kopfschuss bekommen, weil das irgendwie Spaß macht. So können wir einen Knoten herausziehen, der buchstäblich als Select Color bezeichnet wird. Ordnung? Und dann aus dem Rückgabewert können wir sagen, Schieferfarbe so zu machen. Dann von Schadenstexten, sagen wir, setzen Sie Farbe und Deckkraft. Und Sie werden sehen, dass wir diese neue Option für eine Schieferfarbe haben und wir werden das so drinnen fallen lassen. Alles klar, und jetzt müssen wir nur eins für ein haben und eins für B haben. Nun wird a sein, wenn das wahr ist. Also werde ich das machen, bevor ich es gelb gemacht habe und ich bereits diese rote Farbe habe, also werde ich es einfach rot machen. Ordnung. Und dann werde ich keine Headshots haben, die weiß sind oder so etwas. Ich mag Gelb, aber ich habe nicht das Gefühl, dass du die Farbe machen kannst, die du für deine Kopfschüsse magst. Alles klar, das Letzte, was wir tun wollen, ist, dass wir unseren Animationsschaden anrichten wollen. Und wir wollen die Animation spielen. Okay, also spielen wir Ihre Animation ab und dann wollen wir eine Verzögerung haben. Und dann möchten wir dies vom Elternteil entfernen, das das Widget loswird. Der Grund, warum wir diesen Verzögerungsknoten hier haben, ist zu verhindern, dass unser Widget vom Bildschirm entfernt wird, bevor die Animation abgespielt wird. Das wird also wie ein einziger Frame wie augenblicklich laufen. Also, obwohl wir technisch abspielen werden, wird die Animation auch das gesamte Widget vom Bildschirm zur gleichen Zeit entfernen. Also müssen wir eine Verzögerung haben. Wird sagen, bekommen n Zeit für unsere Animation. Also bekommen wir nur die N-Zeit für diese Animation, die 1,25 Sekunden ist. Und dann werden wir für diese Zeit verzögern, bevor wir unser ganzes Widget vom Bildschirm entfernen. Alles klar, das ist alles, was wir damit tun müssen. Also gehen wir hin. Jetzt gehen wir zurück zu unserem Feind. Und lasst uns hier unter dieses Ereignis gehen. Okay, und das erste, was ich tun will, ist, dass wir ein Widget erstellen wollen. Das Widget, das wir erstellen möchten, ist beschädigte Zahlen. Und da wir diese Variablen haben, die den Spawn enthüllen, können wir sie jetzt genau hier sehen. Also stecken wir sie einfach so an. Da alles in Ordnung. Jetzt beeinflussen Standort, dies wird der Ort sein , werden die Zahlen tatsächlich angezeigt werden sollen. Nun müssen wir ein gewisses Maß an Randomisierung hinzufügen. Denn wenn Sie die Waffe schießen, bewegen Sie sie normalerweise nicht genug herum. Wählen Sie die Zahlen aus, die Zahlen werden überlappen. Alles klar, lass uns einfach hier sein. Also müssen wir diesem Ort eine Art Randomisierung hinzufügen. Also lasst uns damit beginnen, den Controller unseres Charakters zu bekommen. Und es gibt diese wirklich Phantasie malen Sie den Knoten namens Project World Location auf Widget-Position. Es wird uns nach einem Ort fragen. Also lasst uns das so reinlegen. Und das ist alles, was wir dafür brauchen. Jetzt hat es eine Bildschirmposition einer Vektor 2D Struktur. Wir werden das kaputt machen. Jetzt bekommen wir also eine X- und eine Y-Koordinate auf unserem Bildschirm. Alles klar, jetzt müssen wir etwas ausgefallene, ausgefallene Mathematik machen. Also für das x Add, gehen, um negative 100 hinzufügen zu wollen. Und dann ziehen wir das ab und fügen einen weiteren Schwimmer plus einen Schwimmer hinzu. Also werden wir diese negative 102 hinzufügen, einen zufälligen Float in Reichweite wie diesem, und dann werde ich negative 25 als Minimum und dasMaximum und dann werde ich negative 25 als Minimum und das als hunderteinhundertfünfzig machen. Okay, dann aus dem y, werden wir mehr Schwimmer hinzufügen wollen. Und dieser hier wird wieder plus negativ 100 sein. Und dann werden wir einfach, es wird kopieren diese beiden einfügen. Dies steuert unsere x und unsere y zufälligen Standorte. Das Minimum für das y, das oben und unten ist, wird 050 sein, so. Und dann zu guter Letzt müssen wir diese beiden Dinge nur noch zusammenfügen. Ich verbrachte eine anständige Menge Zeit damit, mit diesen Zahlen zu experimentieren. Das ist es, was ich fühle. Es schafft eine gute zufällige Verbreitung für mich meiner Meinung nach. Also, wenn Sie über diese Mathematik nachdenken, dass wir negative 102 hinzufügen. Die niedrigste Zahl, die dies für unser x sein kann, das ist dies hin und her, ist negativ 125 bis positiv 150. So wie das ist der größte Betrag, den es auf diese Weise ausbreiten kann, die Zahlen. Und dann die, Dies kann entweder so niedrig wie negativ 100 und negativ 100 plus 0 ist negativ 100 oder negativ 50. Das ist also das Beste, was wir in diese Richtung gehen können. So erhalten Sie diese Art von Querschnitt. Wenn Sie die potenzielle Mindestzahl wie negativ 200 machen möchten, erhalten Sie eine negative 100 plus potenziell negative 100 und Sie können das tun. Aber das sind die Zahlen, die ich für anständig genug hielt. In Ordnung. Also, was wir getan haben, oh, eigentlich wollen sie nicht zusammenfügen. Wir haben den Vektor kaputt gemacht. Also jetzt wollen wir diese Schwimmer wieder zu einem Vektor machen. Und wir wollen Vektor 2D so machen. Denn dies ist nur eine 2D-Ebene auf unserem Widget hier. Und dann werden wir Renderübersetzung setzen. Warum weiß es, tun Sie mir das an? Vielleicht müssen wir uns holen und unsere Größenkiste holen. Da gehen wir. Geben wir mir den dummen Namen. Deshalb mussten wir dies zu einer Variablen machen. Wenn Sie dies nicht getan haben, können Sie dies nicht bekommen, machen Sie es einfach in eine Variable oder wählen Sie Größe Box und legen Sie einfach die Variable fest. Es könnte hier funktionieren. Jetzt setzen, rendern. Da gehen wir. Richtig oder Übersetzung festlegen. Und die Übersetzung ist das. Also ändern wir tatsächlich den Standort unserer Größenkiste. Und denken Sie daran, dass unser Text ein Kind der Größe Box ist. Wo auch immer die Größenbox hingeht, die Zahlenskala. Lass uns das einfach so einstecken. Und dann können wir hier rausziehen und zum Ansichtsfenster hinzufügen sagen. Stecken Sie das ein. Also irgendwie ein gooftiges Login-Skript, das nicht zwischen den Videos liegen wird, da ich das nicht sein möchte, wenn du hingehörst. Also werde ich wahrscheinlich die gemeinsamen Boxen und Sachen dazwischen hinzufügen. Zeig dir nur irgendwie, was ich getan habe. Das Letzte, was wir tun wollen, ist, dass Sie dieses Ereignis tatsächlich nennen wollen. Also genau hier drin haben wir ein paar goofy Print Strings. Dies ist in unserem Fall und es kann Schaden nehmen. Ok? Also haben wir keine Art von M Feind Todesart hinzugefügt. Aber das werden wir im nächsten Video machen. Denn unser falscher Zweig bedeutet, dass wir nicht tot sind. Okay, wir wollen beschädigte Nummern anrufen, was das ist. Jetzt rufen wir es an und es bittet um diese Informationen. Oder und das sollte ziemlich einfach sein. Also Schaden, wir wollen, dass dies nicht der Schaden von hier ist. Okay, es wird falsch sein. Wir wollen den berechneten Schaden bekommen , der diese Zahl zurücksetzt, basierend auf dem Körperteil, den wir treffen, im Wesentlichen mit der Waffe, die wir halten. In Ordnung. Nehmen wir unser Ergebnis und wir können es hier rausziehen es tatsächlich so brechen. Für die Aufpralllage wollen wir das in den Aufprall normal stecken. Alles klar, und dann ist das Letzte, was wir brauchen, das ist Headshot. Also lasst uns unser physikalisches Material greifen und wir bekommen den Oberflächentyp. Okay, und wir haben einen benannten Kopf. Also können wir tun, ist, dass wir gleich sagen können. Und wir werden sagen, ist das gleich dem Kopf? Wenn es so ist, dann wird es ein Kopfschuss sein und das wird wahr zurückkehren. Okay, das ist alles, was wir dafür tun müssen. Wenn wir also einspringen und spielen, ist hier ein Moment der Wahrheit. Also, wenn wir dieses Shooting machen, haben wir 16, die Hecke ist 20 und gelb oder rot. Da gehen wir. 1014600 bevor wir gehen. 16. Ich schätze, ich habe es gerade verpasst. Und da sind wir. Ich bin tot. Und es hat keine Zahlen gepumpt, wie ich denke, für den letzten Tod unten. Das ist okay, weil es die roten Hit-Marker hat, die es für uns tun. Wirklich. Wissen Sie. Warum hat das funktioniert? Hat nicht funktioniert. Wir sind weit weg. Vielleicht bin ich nur blind oder so etwas. Das war aber sehr seltsam. Funktioniert es nicht aus einer bestimmten Entfernung? Nun, gehen wir hier runter. Ok. Zugegeben, ich habe das noch nie gesehen. Ich habe absolut keine Ahnung, warum es nur in einem bestimmten Radius wie diesem angezeigt wird. Weil es genauso funktioniert wie der Treffermarkierer. Also sollte es wirklich nicht passieren. Es könnte also eine Art internes Problem sein, denn das ist einfach wirklich seltsam. Ich habe keine Ahnung. Wenn ich es also nur eine seltsame Panne sein könnte, könnte es etwas mit meinen Einstellungen sein. Das Skript ist in diesem Blueprint im vorherigen Projekt genau das gleiche. Also schätze ich, wenn Sie sich ansehen, lassen Sie mich wissen, ob sie die gleiche Art von Sache erleben. Aber das ist eine sehr seltsame kleine Sache. Denn wie ich schon sagte, funktionieren die Hit-Marker genau auf die gleiche Art und Weise und es taucht immer noch auf, unabhängig von der Entfernung. Also, wenn ich eine Art Lösung dafür finde, dann werde ich Sie wissen lassen. Andernfalls werde ich den Zug nur weiter voranbringen , weil es nur eine seltsame, unwirkliche Art von Bug sein könnte , der nichts mit uns zu tun hat. Oder es könnte nur eine seltsame Einstellung sein, etwas, das ich geändert habe, dass Sie überhaupt nicht erleben, weil es scheint, wie all die Fehler, die ich bisher hatte, nur wegen mir, nicht wegen irgendetwas anderes. Sei einfach an meinem Ende. Ich meine, ein Schwachsinn zu sein, wie das falsche physische Material auf den Kopf zu legen und so was. Aber das ist das Video, so schaden Sie Zahlen. Und dann hast du so viel zum Zuschauen. Und wir sehen uns im nächsten. 33. Enemy Animation: Hey alle und willkommen zurück zu einem anderen Video. Zwischen den Videos habe ich versucht, ein wenig zu sehen, was als ein Problem verursacht werden könnte beschädigte Zahlen. Und wenn Sie sich unser altes Projekt hier ansehen, sehen Sie, dass dies genau das gleiche ist wie zuvor. Entweder das, oder ich bin blind. Und wenn ich reingehe und aus der Ferne schieße, taucht die Zahlen immer noch auf. Also bin ich mir nicht ganz sicher, ob ich ehrlich bin, was das Problem verursacht. Manchmal führt der Motor nur Fehler oder Probleme oder was auch immer das passiert, und es ist möglich, wahrscheinlich wahrscheinlicher, dass ich einige Probleme habe. Wenn Sie also auf dieselbe Art von Problem stoßen, bei der die Schadensnummern nur in einem bestimmten Bereich angezeigt werden. Ich entschuldige mich wirklich, aber wie ich sagte, sie treffen Marker arbeiten in dem Skript ist genau das gleiche. Also bin ich mir nicht wirklich sicher. Am Ende dieser ganzen Klassewerde ich wahrscheinlich eine Art Bug Fix-Video anhängen, werde ich wahrscheinlich eine Art Bug Fix-Video anhängen wo wir einfach reingehen und einige der kleinen Probleme beheben, die unser Projekt hat, was für buchstäblich jedes Videospiel üblich ist , die als Teil des Prozesses erstellt wurden. Deshalb gibt es QA-Teams. Ordnung? Aber wir werden den Zug in Bewegung halten, okay? Denn wenn du jetzt auf unserem Spiel bemerkst, bekommen wir den coolen roten Treffer Marker, wenn unser Charakter den Staub beißt. Alles klar, aber da steht nur, dass ich tot bin und wir wollen ein paar coole Sachen machen. Wir wollen ein paar Geräusche abspielen. Wir wollen ein paar Stoffpuppen Physik machen, okay? Und wir wollen einige Impulse hinzufügen. In Ordnung, also lasst uns in diesem Video ein paar coole Physik-Sachen machen. Also noch einmal, wir brauchen eine Umfrage aus unseren Projektdateien ist die letzte sein. Also, wenn wir einen Ordner namens Audio haben und es hat nur einen Soundeffekt hier drin. Also unter FPS. Das habe ich nicht richtig gesagt, FPS-Spiel. In Ordnung. Machen wir einen, den man Audio nennt. Und das wird unsere einzige Audiodatei ehrlich sein. Aber wir können das einfach drinnen ziehen und ablegen. Unreal mag Wellengeräusche. Das muss also eine Welle sein und ich möchte einen MP3 oder so, wenn Sie jemals Ihre eigenen Sounds zum Spiel hinzufügen möchten. Dies ist eigentlich ein Sound aus dem Schlachtfeld Franchise, wenn Sie einen Kopf Schuss töten. Aber ich denke, es ist irgendwie ein cooler Sound im Allgemeinen. In Ordnung. Nur ein kleines, wenig zusätzliches Fackel. Ok. Ich weiß, ich bin nicht groß auf dem Flair, wenn es um den Unterricht geht. Ich habe tatsächlich viel Zeit mit der Fackel verbracht, meiner eigenen Freizeit, aber wir reden davon, diese Informationen zu machen, okay, also bin ich, ich bin, ich bin in der Event-Graph für die Klassen. Es gibt also eine kleine, kleine Fackel von mir. Ordnung. Lassen Sie uns also voran gehen und ersetzen Sie diese goofy-Druckzeichenfolge durch ein tatsächliches Ereignis, das ausgeführt wird. Okay, also lass uns eine Funktion erschaffen und diesen Feind Tod nennen. Habe ich den Weltraum getroffen? Haben Sie eine Träne? Viel besser. In Ordnung, also für den Tod des Feindes, lasst uns zwei Eingänge bekommen. Ja, ja, ja, ja, ja, ja. Ok. Lassen Sie uns einen von ihnen nennen, Ort treffen, machen Sie dies zu einem Vektor. Der Grund, dass dies existiert, ist, dass wir durch einen Ort gehen können, um einen Impuls hinzuzufügen. In Ordnung, um unsere Tod-Animation zu machen, Stoffpuppenphysik sieht toll aus. Ok, der andere, den wir als Knochennamen bekommen, und wir machen das zu einem Namen. Wir wollen dem Spiel sagen, welchen Knochen wir auf diesen Charakter treffen, um diesen Impuls anzuwenden? Ordnung, es gibt also, wir fügen keine Animationen hinzu, wir fügen nur Physikimpulse auf die Charaktere hinzu. Skelett, das offensichtlich kühler aussehen wird. Also raus hier, machen wir eine Sequenz oder schreiben eine und dann wollen wir unsere Netzkomponenten unseres Feindes packen. Und wir wollen sagen, Set simulieren Physik. Ordnung, das wird also, wir überprüfen das bei neuen Simulationen. Dies bedeutet für diesen Teil sind wir ermöglichen Verlegung Stoffpuppe. Physik hier, wo wir aufstellen, simulieren wir einige Physik auf unserem Mesh-Jahr. Wir lassen es ganz willy nilly gehen. Alles klar, das nächste, was wir tun wollen, eine Pin hinzufügen, wird heute einen Ton abspielen. Und das Geräusch, das wir wollen, wird tötet werden. Eine, die ich euch gleich hinzufügen ließ. Und dann zu guter Letzt werden wir wieder unser Netz greifen. Und wir werden einen Impuls an einem Ort hinzufügen. Das wird also hier einen kühlen Impuls treiben. Alles klar, also wird es nach einem „ Dieser Knochennamen und einem Ort“ fragen . Nun, wir haben einen Bot-Namen und wir haben einen Standort. Also haben wir unsere Hausaufgaben gemacht, Leute. Okay, das ist alles eingerichtet. Und das Letzte, was wir tun müssen, ist, dass wir tatsächlich einen Impuls haben müssen. Nun ist die coole Art, dies zu tun, ist, dass verschiedene Waffen unterschiedliche Menge an Impulsen, um die Pistole haben wahrscheinlich einen ziemlich niedrigen Impuls. Aber der Raketenwerfer, wir wollen einen ginormösen Impuls, um auf diesen Feind zu explodieren. Also fliegen sie durch die Luft und es wird großartig sein. Okay, aber nachdem wir das getan haben, schnappen wir uns nicht Sie, die Kapselkomponenten. Und wir wollen diese Komponente zerstören. Dies wird es nur erlauben, damit wir über diesen Charakter gehen können. Und keine Art von anderen Ereignissen mit ihnen werden in der Lage sein , jetzt, da die Capsule Component, dies ist weg. In Ordnung, also zerstören wir nur diese Komponente. Wenn wir den ganzen Schauspieler zerstören würden, dann würde dieses ganze Netz verschwinden und alles verschwinden, was bedauerlich wäre. In vielleicht anderen Spielen hättest du also einen Verzögerungsknoten und dann zerstörst du den ganzen Schauspieler. Also waren sie nur aus dem Pop aus der Existenz oder was auch immer. Nun, das werden wir hier nicht tun. Okay, also lasst uns einen Verweis auf unseren Spieler nehmen. Und wir wollen den Schauspielerstandort bekommen. Also bekommen wir den Ort des Schauspielers. Und dann wollen wir den Schauspielerstandort wieder bekommen. Das ist also das Ziel, hier ist der Spieler, das ist der Standort des Spielers. Und dann ist dies ein Verweis auf das Selbst. Also, jetzt ist dies der Ort unseres Feindes. Okay, ich will die Richtung der Einheit bekommen. Also bekommen wir einen Vektor vom Standort unseres Spielers zu unserem Feind Standort. Okay, und wir werden das multiplizieren. Also ein Vektor mal einen Float. Dann wird die Ausgabe davon unser Impuls sein. Was wir aus dem Spieler machen wollen, ist, dass wir die aktuelle Waffe greifen und wir müssen eine Variable in unserer aktuellen Waffe oder Waffenbasis erstellen. Mit anderen Worten, und wir nennen diesen Kill-Impuls, machen es zu einem Schwimmer. Und lassen Sie uns dies so einstellen, dass es standardmäßig wie 10 Tausend ist. In Ordnung. Jetzt gehen wir weiter und holen Kill Impuls zurück. Und die Todesfunktion des Feindes lebt in unserem Feind und steckte das ein. Also kriegen wir es. Die Position des Spielers, eine Vektorlinie von dieser Position zum gegnerischen Standort. In Ordnung, also mit anderen Worten, das wäre genau das Gleiche. Es ist wie unsere Kugelspur in gewisser Weise, weil wir den Schauspieler schlagen, wir schlagen unseren Feind. Und wir werden das mit diesem Impuls multiplizieren und diesen dann verwenden, um einen Vektor eines Impulses zu machen, den es verlangt, so. Also ist dieses Skript fertig. Das Letzte, was wir tun müssen, ist aus diesem wahren Zweig hier zu kommen. Ich will eigentlich, dass das über Sada geht, wahr, rufen wir den Feindtod an und stecken das an. Also, wenn unsere Feinde tot sind, werden wir diesen Todesfeind leiten, diese Todesereignisfunktion, okay? Wenn sie nicht tot sind, machen wir die Schadenszahlen. In Ordnung? Also wird es nach anderen Dingen fragen, Ort und, und all dem Zeug, das Sie wahrscheinlich erraten können. Also, wenn wir diesen Ort nehmen, fügen wir einen kleinen Umleitungsknoten hinzu, dann müssen wir nicht von hier aus hochziehen. Wir können von hier rausziehen. Also werden wir die Auswirkungen normal machen. Die Treffer Ergebnisse, sie trafen Position und dann Knochennamen. Dieser hat Knochennamen als Option getroffen und stecken Sie das einfach dort hinein, übergeben Sie einfach das in oder was auch immer. Wir haben Laserlicht, zeigen alle diese farbigen Linien hier. In Ordnung, und so wird sich das in dieser RA verbinden. Also, was wir tun können, um Spaß darüber zu haben oder was auch immer es ist, lasst uns weitermachen und diese Waffe wechseln. Es muss Impuls töten und das so etwas verrückt machen, wie 50.000. Das sieht nach 50000 aus. Ja, okay. Halten wir die Alt-Taste gedrückt und ziehen wir einige andere Feinde hierher. In Ordnung, und ich habe Play getroffen. Und so ist das Auto Gewehr auf 10 Tausend, dass ein Fehler. Also gehen wir hin. Voll draußen auf dem Boden. Wenn ich ihm in den Arm schlagen würde, sagen wir für den Tötungsschuss, er wird zurückfliegen. Der Impuls wird in diesen Knochennamen an dieser Stelle gesetzt. So wird es den Impuls auf diesem Arm abschießen. Es bewegt sich also wieder dorthin und findet die Schusswaffe heraus. Wir können zeigen, dass wir einen höheren Kiloohm-Impuls haben. Es ist wie fünf Mal so viel, dass er fliegen könnte. Dies ist möglicherweise nicht alles, was ich standardmäßig in dem anderen Projekt habe. Aber mal sehen. Die un, un fliegen so ein. Dieser arme Mann. Aber das hat er, also fügen Sie Impulse und so hinzu. So das Spiel, so jetzt können Sie mehr Feinde und Sachen hinzufügen. Du bekommst coole Sounds und alles. Also der Brief, das ist wahrscheinlich zu hoch. Und Fräulein. Da geht er, wieder von hinten rein, fliegt auf diese Weise. Sie können sehen, wie das alles jetzt zusammenkommt. Wir haben in den Fuß. In Ordnung, also tschüss, tschüss. Okay, ja, du siehst, wie es dort funktioniert, und ich habe nur Spaß an diesem Punkt. Ok? So fügen Sie Kilojoule hinzu. Wir haben unseren coolen Sound in Gang gebracht. Alles sieht gut aus, soweit das Ding geht. Also, da gehst du hin. Oh, ihr habt dieses Video genossen. Fühlen Sie sich frei, in Ihre anderen zu gehen, die wir nur haben, wissen Sie, ich meine, Sie können die ändern, wenn Sie Reno wollen, aber sie tun jetzt nichts. Das ist es, was wir tun werden, wenn wir das Projektil hinzufügen. Aber wenn Sie die Pistole traurig und Schuss Pistole ändern wollen , um verschiedene Kill Impulse sein. Das wäre meine Vermutung. Ok. Der Standardwert ist 10 Tausend. Ich fühle mich, als wäre das ein ziemlich anständiger Betrag für eine dieser Waffen. Also habe ich das Gefühl, das ist eine ziemlich gute realistische Menge für wie, weißt du, tut mir leid, dass ich Waffe tippen werde. Okay, damit du es mehr für die Schrotflinte machen kannst. Du hast die Schrotflinte viel, weißt du, die Pistole ist ein bisschen weniger, was immer du tun willst. Also hoffe, ihr habt dieses Video genossen. Wir sehen uns den nächsten. 34. Shooting (Teil 1): Hallo an alle und willkommen zurück zu einem anderen Video. In diesem werden wir eine Waffenbasis hinzufügen. Und wir werden uns endlich erlauben, ein paar Geschosse zu schießen. Also sind wir so ziemlich alles mit unseren Hit-Scan-Waffen fertig. Und jetzt müssen wir weitermachen, ist das Projektil. Alles klar, lass es uns tun. Also lassen Sie uns FPS-Spiel geben. Lassen Sie uns einen neuen Ordner erstellen und dieses Projektile aufrufen. Und lasst uns eine Farbe setzen. Und lassen Sie uns eine neue Blueprint-Klasse vom Typ Actor erstellen. Und nennen wir es Projektile Basis. Und lassen Sie uns das öffnen und es über die Oberseite ziehen. Ein paar Dinge, die wir tun wollen, fügen wir eine Komponente der Projektilbewegung hinzu, okay, dieses Projekt, wie Bewegung einige verschiedene Einstellungen hat, in denen wir manipulieren können. Wir können uns ändern oder werden irgendwann in der Lage sein, für unsere Anfangsgeschwindigkeit zu ändern. Machen wir es so etwas wie 10 Tausend und die maximale Geschwindigkeit, auch 10000. Projektile Gravitationskala eins ist ziemlich intensiv, also machen wir es wie 0,2. Wir werden das ändern, je nachdem, welche Waffe wir haben. So wie ein Granatwerfer wird die höchste Projektilgravitationsskala haben , weil es mehr ein Bogen in Richtung unseres Scharfschützengewehrs wird wahrscheinlich am wenigsten sein . Es wird wahrscheinlich auch der schnellste sein. Ok. Dies sollte nicht springen. Wir müssen so etwas nicht tun. Abseits der Senior 2 werden wir eine Sphärenkollision machen, und wir werden diese Kollision nennen. Und lasst uns voran gehen und einfach machen, dass die neue Wurzel. Warum nicht? Eine Sache, die wir mit dieser Kollision machen wollen, ich glaube, lass mich einfach eine sehr schnelle Simulation überprüfen , okay, wenn wir also diese Kollision ausgewählt haben , okay, okay. Also, wenn ich diese Kollision ausgewählt, wir wollen Ereignis suchen und wir wollen sicherstellen, dass wir Simulation erzeugt Treffer Ereignisse ausgewählt haben. Dies ist ein sehr wichtiger Schritt, denn wenn Sie dies nicht tun, jedes Mal, wenn Sie etwas mit einer Projektilwaffe treffen, wird es Ihnen Fehler geben. In Ordnung? Denn mit der Art und Weise, wie wir unsere Aufprallbasis geschaffen haben wird das nach einem physikalischen Material suchen, das getroffen wurde. Und so, während ein Spiel wissen wird, dass das Projektil etwas trifft, es, es wird einfach verwirrt. Und es simuliert nicht ein Generieren. Es sagt, es simuliert kein Treffereignis. Es wird nicht denken, dass es etwas getroffen hat und so wird es nicht wissen, welchen Sound zu spielen und welche Wirkung zu erzeugen und andere Dinge wie diese. Also stellen Sie sicher, dass Sie das überprüft haben. Siehe Vermeiden von Fehlern. In Ordnung. Dann bekommen wir ein statisches Netz, das ein Kind unserer Kollision sein wird, und wir nennen dieses Projektilnetz. Und dafür brauchen wir jetzt nichts zu machen oder etwas zu tun. Mit dem. Ich glaube nicht, dass all das vorerst in Ordnung sein sollte. Wir werden es wahrscheinlich ein paar Änderungen daran machen, aber es ist, was es ist. Ok? Lassen Sie uns ein paar Variablen erstellen. Nennen wir das hier, verursacht Radiusschaden. Also wird dieser für unsere Granate und unsere Rakete wahr sein. Sie werden einen Radius des Schadens anrichten, wo das Scharfschützengewehr nur Sie etwas getroffen haben und das ist es, was zwei getroffen. Wir wollen auch unsere Waffenstatistiken hier, diese Struktur, die wir eine Waffe Statistiken erstellt. Und gehen wir weiter und sorgen dafür, dass das so ist, damit wir das an der Waffenbasis verbinden können. Lassen Sie uns die Instanz editierbar machen. Es ist vermutlich auf einem Laich. Und dann zu guter Letzt wollen wir unseren Wirkungseffekt sichern. Also lassen Sie uns Auswirkungen bekommen, beeinflussen Basisklassenreferenz, Kompilieren und Speichern. Alles klar, und das sieht alles gut aus. Lassen Sie uns also einen Verweis auf unseren Spieler erstellen. Und Sie wissen das wahrscheinlich schon, aber als könnten wir es einfach hier rausziehen und jedes Bein machen, was wir wollen. Ich werbe es einfach immer zu einer Variablen, damit wir sie einfach so zeichnen können. Aber hier rauszuziehen und hier reinzuziehen, macht genau das Gleiche. Wir, Sie müssen dies nicht jedes Mal auf eine Variable setzen. Das ist nur irgendwie die Art, wie ich rollt. Also schätze ich, ähm, Sie wussten das wahrscheinlich schon, aber ich möchte nur sichergehen. Ok. Ich bin diese Projektilbewegung. Es ist mit der rechten Maustaste. Fügen Sie ein Ereignis hinzu und wir wollen auf Projektil zu tun, stoppen. Okay, und Sie sehen, genau hier hat es Auswirkungen. Schon hier für uns, das ist geschaffen. Nun, das wollen wir. Dies ist also ein Ereignis, das beim Aufruf abläuft, wenn Projektil zu einem Stopp Geschwindigkeiten unter der Simulationsschwelle kommen wird. Alles klar, also sagt es im Wesentlichen, wenn das etwas trifft und es nicht sein soll, sollte abprallen. Okay, lassen Sie uns eine Funktion machen und dieses Stopp-Projektil aufrufen. Und lasst uns dies haben, haben eine Eingabe eines Treffergebnisses vom Typ Treffer Ergebnis. Wenn Sie dies kompilieren und zum Ereignisdiagramm zurückkehren, können wir dies sofort so aufrufen und dann einfach die Treffer wie solche einstecken. So sollte unser Ereignisdiagramm aussehen. Es ist alles, was wir tun müssen. Also, jetzt gehen wir in Stop-Projektil und wir machen eine Sequenz. Aber ein paar Dinge passieren gleichzeitig hier. Wir wollen überprüfen, ob wir Radiusschaden verursachen wird zwei verschiedene Dinge verursachen. Wenn wir das sind, wollen wir eine andere Funktion ausführen, die wir noch nicht erstellt haben. Aber vorerst, lass uns das nicht tun. Lassen Sie uns das später erstellen. Also eine Sache, die wir tun wollen, Lassen Sie uns das Ergebnis in Pause nehmen. Alles klar, und dann wollen wir den Hitdarsteller holen. Dann sollten wir sagen: Haben wir es? tun wir. Aus Hit Actor können wir Gegner so Schaden erleiden. Weil das einer der Zak-Torus ist, den wir erhitzen können. Das ist unser BBA, diese Schwulen, richtig? Also mussten wir ein paar Waffenstatistiken holen. Wenn du dich hier drinnen erinnerst, wenn der Feind Schaden erleidet, bittet er nach Waffenstatistiken. Also haben wir eine Variable für Waffenstatistiken erstellt. Also können wir das einfach einstecken. Und wenn Sie sich erinnern, diese Waffenstatistik, okay, das sind wir zurück zur Waffenbasis, richtig? Und wir fangen an, zu schießen. Und wir haben das, wir nennen dieses Ereignis und wir verknüpfen Waffenstatistiken. Das sind also diejenigen, die in den Kindern unserer Waffenbasis leben. Das wird also in seinen Waffenstatistiken weitergegeben, wenn es hier auftaucht. Und jetzt verbinde ich auch die Variable im Inneren von hier, die in der Waffenbasis. Indem Sie das tun, ist das einfach alle Daten durch übergeben. Wenn Sie nicht für HIT-Ergebnisse erraten können, werden wir es nur das gleiche genaue Ergebnis haben. Jetzt müssen wir ein paar kunstvolle Dinge machen. Also wissen Sie was? Das sollte hier nicht eingesteckt werden. Dies sollte aus dem falschen Stecker kommen. Wenn wir uns nicht mit fertigen Standards befassen, dann nehmen wir einfach Schaden. Wenn wir das sind, dann werden wir eine andere Schnittstelle erstellen, die Radiusschaden hat, die einige verschiedene Dinge abfeuern wird. In Ordnung, also lasst uns unser Projektilnetz holen und sagen wir, setzen Sie verstecktes Spiel. Stecken Sie das ein. Und wir wollen das zu einem neuen Verborgenen machen. Also haben wir etwas getroffen, wir wollen, dass das Netz verschwindet, wir wollen es nicht mehr sehen. Dann werden wir die Welt transformieren. Also der Ort dieses in einer Transformation, x, y, z und wir wollen einen Schauspieler aus einer Klasse hervorbringen. Der Schauspieler, den wir wollen, ist unser Wirkungseffekt. Und das werden wir. Also haben wir dies zu einer Variablen gemacht. Da gehen wir. haben wir jetzt ein Treffergebnis, das wir durchlaufen müssen. Also machen wir das und leiten es dann so um. Lassen Sie es uns so einstellen, dass es immer spawnt, Kollisionen ignoriert. Wir wollen nicht, dass das eine Art Problem hat. Und dann werden wir diesen Knoten auslaufen, der die Lebensdauer festlegt. Das ist ähnlich wie die Zerstörung eines Schauspielers wie hier ist das Ding. Sie können keine Verzögerungsknoten innerhalb einer Funktion aufrufen. Das ist also kein Ding. Legen Sie also die Lebensdauer fest, wenn sie abläuft. Objekt B ist wahr. Dies ist also das Äquivalent von Verzögerung für 0,1 Sekunden und dann Zerstöre Schauspieler. Also stellen wir nur die Lebensdauer ein, nur weil Sie keine Verzögerungen und Funktionen setzen können. Okay, ich mache die Regeln nicht. Also können wir kommen, um das einzupacken. So können wir sagen, entfernt Netz, Laichen, Auswirkungen, Wirkung, zerstört Akt. Das ist es, was das alles tut. Es gibt also mehr von der Kunststufe der Skripterstellung. Und das ist die Funktion. Das ist, was die Mathematik macht und die Dinge was den Spieler dazu bringt, zu denken, dass, na ja, so dass Dinge tatsächlich auf dem Bildschirm passieren. Oh, wir müssen in einer Transformation passieren. Oh, wir haben diesen Knoten nie verbunden. Dumme mich. Ok? Also müssen wir jetzt etwas tun, wenn wir Radiusschaden verursachen. In Ordnung, also lasst uns das machen. Lassen Sie uns ein weiteres erstellen und dieses Explosionsprojektil nennen. In Ordnung. Dies wird auch ein Treffergebnis haben. Und wir nennen es Treffer. In Ordnung. Und ich denke, wir werden das in einem anderen Video machen, aber lassen Sie uns einfach voran und nennen es z. Wir wollen, dass ich nur den Scharfschütze zuerst zum Arbeiten bringen will, aber so funktioniert es. Also musst du Projektil explodieren und das wird ein Treffer Ergebnisse sein. Ich schätze, es hat den Namen nicht geändert. Ich habe es nie kompiliert. Können wir alle leben, du bist okay. So meistern Sie das. Explodieren Sie das Projektil in einem anderen Video, wenn wir es mit unserem anderen zu tun haben. Danke. Okay, das ist alles, was wir jetzt in unserer Projektilbasis machen wollen. Wir gehen zurück zu unserer Waffenbasis und gehen zurück, um zu schießen. Was wir tun wollen, ist, dass wir jetzt Dinge tun wollen, wenn wir unsere Waffe als Projektil setzen, was wir tun werden , ist, dass wir berechnete Linienverfolgung bekommen und wir werden Control W treffen . Kopieren Sie das. Und wir werden sagen, berechnen Ablehnung. Nun, was ich hier drin getan habe, ist, dass ich ein Waffennetz in einer Waffenbuchse in Calculate Line Trace hatte. Und der Grund, warum das war und ich war verwirrt, warum hat es nie benutzt? Der Grund dafür war, dass ich früher den Zeilenablauf und das Projekt innerhalb derselben Funktion hatte. Und ich ändere das. So arbeiten sie jetzt in verschiedenen Formen. Also sind diese beiden Dinge tatsächlich nutzlos für die Berechnung der Zeilenverfolgung. Sie können die Waffenbuchse und das Waffennetz loswerden. Du brauchst nur die Kamera. Alles klar, und so wird es dir einen Fehler geben, weil es dich hasst. Und dann können wir hier mit der rechten Maustaste klicken und wir können sagen, Knoten aktualisieren und dann einfach loswerden. Und das sollte immer noch perfekt funktionieren. Funktioniert immer noch gut. Ok. Wir brauchten sie nicht. Alles klar, aber wir werden es innerhalb von Berechnungen brauchen. Projektil wird alle drei brauchen. Okay, wir brauchen das Waffennetz, die Kamera und die Waffenbuchse. Also werden diese einfach sein, nur immer so leicht. Es gibt tatsächlich eine Menge Serifen. Anstatt Projektil zu berechnen, können Sie dieses Zeug tatsächlich loswerden. Werde einfach das meiste davon los. Behalten Sie den Rücklaufknoten bei. Befreien Sie sich davon, entfernen Sie DrawLine, verfolgen Sie und all das. Und wir werden nur diese beiden lokalen Variablen fördern. Also sagen wir lokales Waffennetz. Also werden wir die hier drin benutzen, im Gegensatz zu dem anderen, den wir gemacht haben. Und dann Waffenbuchsen. Denken Sie daran, dass es bereits existiert. Also, was meinst du damit, dass es in Gebrauch ist? Oh, meine Güte. Ja. Ich möchte es löschen. Warten Sie was? Nein, warte. Waffenbuchse Oh, meine Güte. Ich bin so verwirrt oder versenke Komponenten-Objekt. Oh mein Gott, ich werde das nur zu einer lokalen Variable fördern. Willst du sagen, Oh, siehst du, es existiert nicht. Ok? Manchmal ist das Kopieren einfügen, es macht Sie wirklich gut. Ordnung, also okay, wir mögen einfach Daten, was wir in der anderen gemacht haben, die andere Blaupause dort, damit das funky aussieht. In Ordnung. Also haben wir unsere lokale Kamera oder lokale Waffennetz in unserer lokalen Steckdose. Also, was wir tun wollen, werde ich Control drücken und das nach oben bewegen und diesen Umleitungsknoten loswerden. Und was wir anstelle eines Treffergebnisses wollen, ist, dass wir eine Transformation erhalten wollen, die einem Ort ähnlich ist. Also statt Treffer Ergebnisse, Lassen Sie uns Projektil Transformation bekommen. Und wir werden das eine Transformation nennen, denn es wird uns fragen, wann wir unser Projektil laichen, kann uns fragen, wo wir das tun müssen. Und lassen Sie uns dies zu einer Variablen fördern. Und wir nennen es Objekt. Ich werde mich verwandeln. In Ordnung? Wir müssen das jetzt nicht als irgendetwas festlegen. Also hast du all diese coolen schicken Stiefmütterchen Koordinaten. Der Grund, warum wir das nicht brauchen, ist, dass wir es hier setzen wollen. Und wir werden jetzt ein Skript machen, um dies zu setzen. Das ist also für unser Projektil. Also lasst uns weitermachen und unser lokales Waffennetz und unsere lokale Waffensockel holen. Und wir werden sagen, den Socket-Standort zu bekommen. Es wird vielleicht sofort einen abziehen. Standardmäßig. Löschen Sie das einfach. Also bekomme einfach den Socket-Standort. Wir stecken unser lokales Waffennetz ein und unsere lokale Waffensockel setzen entweder die Variablen ein, weil sich unser Waffennetz immer verändert. Ok? Wir wollen das in eine Transformation machen, das packen. Alles klar, und so wird es uns um eine Rotation und Skala und alles bitten. Wir kümmern uns nicht um die eingestellte Skalierung. Aber der Rückgabewert davon wird unsere Transformation CINAHL sein. Holen wir uns unsere lokale Kamera und wir werden Besitzer bekommen. Und dann werden wir auf BP-Spieler werfen. Wir können mit der rechten Maustaste darauf klicken und wir können sagen, konvertieren Sie zu reinen Besetzung. Und ich hasse diese Irrtümigkeit. In Ordnung, also sagen wir jetzt, bekommt Kontrollrotation und Rohrleitungen für die Rotation. Also, was das hier genau macht , ist, wo wir transformieren müssen , dass Sie in einer Sekunde hier sehen werden, um unser Projektil abzufeuern. Also bekommen wir den Standort unseres Waffennetzes und wir bekommen diesen Socket-Namen. Denken Sie daran, dass es Mündungsblitz genannt wurde. Das kriegen wir. Das werden wir also sagen. Unser Spawnpunkt ist, dass das unser Standort ist, okay? Aber wir müssen die Rotation unseres Charakters bekommen. Also bekommen wir die Kamera-Komponente auf unseren Charakter. Wir tun, dass wir darauf werfen. Wir könnten sehen, ja. Das kannst du also nicht. Ok. Ja. Du brauchst diese Notizen. Du musst die Casting-Sache holen. Und ich habe es zu einer reinen Besetzung gemacht , damit wir die Ausführungsdrähte nicht durchlaufen müssen. Und dann kommen wir in die Kontrolle der Drehung der Kamera. Und dann setzen Sie diese Herstellung, machen diese zu dieser Position, diese Vektorposition in dieser Straße, Rotation in eine Transformation. Ein Vektor ist also XYZ, ein Transformator wie XYZ plus Rotation plus Skala. Es ist also noch schicker. Okay, damit wir hier schließen können. Wir können wieder anfangen zu schießen. Okay, und dann können wir ein Projektil rausziehen. Und wir werden sagen, berechnet Projektil, diese Funktion. Es wird uns jetzt um eine Menge dieser Daten bitten. Also, wenn wir jetzt in diese wenigen Waffen gehen und sagen, das sind Projektile oder nicht Hit Scans. Es wird jetzt diesen hier durchlaufen. Ok? Also, jetzt wollen wir hier rausziehen und sagen, laichen Schauspieler aus der Klasse. Sie können sehen, dass es nach einer Transformation fragt, also schließen wir das einfach an. Und dann wollen wir 0 bekommen. Setzen wir es auf eine Variable und wir sagen Projektil, und wir werden diese Art Projektil Basis bilden. Der Grund dafür, dass ich es in eine Variable mache und nicht nur einschlitze, ist, dass wir in den Kindern, im Scharfschützengewehr, Rakete und allem, im Scharfschützengewehr, Rakete und allem,verschiedene Projektil-Blueprints zuweisen wollen, ähnlich wie haben wir die Auswirkungen Effekte gemacht. Wir wollen in der Lage sein, diese dynamisch zu setzen, je nachdem, welche Waffe wir haben. Also, wenn ich es einfach so reingeschlitzt habe, dann wird es immer die Basis sein. Es wird nicht, es wird das nicht über Variable ändern. Und es verlangt nach Waffenstatistiken. Also werden wir das mit der Variablen verknüpfen, die wir in unserer Waffenbasis erstellt hatten . Also, wenn Sie sich erinnern, haben wir diese Variable gemacht und wir setzen sie auf Laichen. Wenn wir das jetzt spawnen, bittet es dich darum. Also jetzt verknüpfen wir diese Daten, so dass sie weitergehen. Ordnung. Nun, wenn das alles insgesamt ist, müssen wir das einfach in den Rückstoß stecken, um diesen Draht hier zu beenden. Und dann lasst uns weitermachen und diese Dinger einstecken. Also bekommen wir, dass der Spieler die Kamera bekommt. Plugin der Kamerawaffe Netz. Holen wir uns das Waffennetz von hier. Und die Waffenbuchse. Wir können das zu einer Variablen machen, aber wie ich schon sagte, alle werden Mündungsblitz genannt. So Schnauze Blitz, hart eingegeben wird immer funktionieren. Wenn Sie es in eine Variable machen wollen, gehen Sie rothaarig. Be, du müsstest es nur zu einer Variablen machen. Technisch gesehen, wenn Sie Waffen hinzufügen wollen , die sich von der Packung unterscheiden, die wir hier verwenden. Schließlich stellen Sie sicher, dass immer Spawn sagt, ignorieren Sie Kollisionen, nur um einige Probleme zu vermeiden. Und dann meine Kommaboxen und sagen Laichen, Projektil. Alles klar, das Letzte, was ich in diesem Video machen will, damit wir nur dieses Setup hier haben, ist, lass uns in unsere Waffen gehen. Und für Scharfschützengewehr, Mal sehen, wir haben jetzt einen Schlitz für unser Projektil, was ziemlich cool ist. Und wir wollen nur sicherstellen, dass das nicht auf Haut trifft, sondern auf Projektil eingestellt ist. Und das wollen wir für das Raketen-Projektil und das Granatwerfer Projektil tun. Und jetzt werden diese drei Waffen den anderen Weg hinunterlaufen. Das wird eigentlich gar nichts tun. Es könnte uns Fehler geben, aber Sie können sehen, wie es nicht mehr eine Linie Spur schießen und es macht immer noch diesen kleinen Waffenkick, kleine klappernde Sache. Ich habe keine dieser Zahlen geändert, um es zu etwas Wahnsinnigem zu machen, aber als würde es durchlaufen und es gibt uns keinen Fehler. Es gibt einfach kein Ereignis, das jetzt hinzugefügt wird um zu laufen, wenn wir tatsächlich etwas damit getroffen haben. Also machen wir das im nächsten Video. Wir sehen uns für Teil 2. Also danke, dass Sie zugesehen haben. Wenn Sie Fragen haben, lassen Sie es mich wissen und ich sehe Sie in der nächsten. 35. Shooting (Teil 2): Hallo an alle, Willkommen zurück zu einem anderen Video. In diesem werden wir unser Projektil-Skript fortsetzen das in diesem Video beenden. Im Gegensatz zu jedem anderen Video wird dieses Video nicht live aufgenommen. Das bin ich aus der Zukunft, weil mit der Aufnahme letztes Mal etwas Schlimmes passiert ist. Also muss ich zurückgehen und es wiederholen. Es wird also ein bisschen peinlich sein. Also schaue ich eigentlich zurück auf das, was ich gerade mache. Also, wenn Sie gerade auf den Bildschirm schauen, ist die Sache, die ich erkläre, eine Sache. Ich habe die Variable in eine lokale Variable geändert , da sie außerhalb dieser Funktion nicht benötigt wird. Aber Sie möchten sicherstellen, dass der zurückgegebene Knoten aus dem letzten Sequenz-Pin ist. Wenn das in Ihrem Spiel in Ihrem Projekt nicht der Fall ist, wird es nicht an der richtigen Stelle erscheinen. Obwohl Sequenzen gleichzeitig stattfinden sollen, möchten Sie sicherstellen, dass Sie diese Variable festlegen, bevor Sie sie zurückgeben. Also ging ich voran und ich bin in einer Projektilbasis in meinem Granatwerfer geschlitzt nur um zu zeigen, dass das funktioniert und ich habe nur eine zufällige Box in unser Projektilnetz zum Spaß gesetzt , nur um zu zeigen, dass all das funktioniert, wenn Sie Das Projektil zeigt sich an der richtigen Stelle. Und dann habe ich es entfernt. Also, wenn Sie wollen, können Sie voran gehen und etwas in das Netz stecken und dann in eine Ihrer Waffen gehen und das hineinlegen. Also das nächste, was ich hier mache, ist über eine Kollisionsantwort zu sprechen. Und wir werden eine brandneue Kollisionsantwort erstellen , die als Projektil oder Objekttyp bezeichnet wird. Um unser Spiel zu erkennen, dass wir ein Projektil verwenden, weil wir unser Spiel für mich wollen. Wir können es wie Weltdynamik oder etwas anderes hinzufügen. Aber was wir auch tun können, ist ein neues Objekt Kanäle erstellen. Also nennen wir einen Namen eins Projektil. Also Projekt-Einstellungen unter dem Motor, es ist Kollision. Wir werden ein Projektil erschaffen. Und die Standardantwort wird blockiert sein. Wenn wir das jetzt erstellen, wird es als Option angezeigt. Und so können wir das jetzt als Objekttyp festlegen. Also denke ich, ich habe hier ein bisschen ein Problem, wenn ich mich richtig erinnere, denke ich, ich gehe voran und suche danach. Es zeigt sich also entlang der Unterseite. Damit wir unseren Feind dafür sorgen können, dass diese Einstellung das Projektil blockiert. Aber wir sind nicht wirklich in unsere Kollisionsvoreinstellungen gegangen, um irgendetwas als Projektil einstellen zu können. Also werde ich hier auf das Problem stoßen. Wir schauen uns um wie große Sorgen. Ich glaube, es ist irgendwo. Es sind also zwei Schritte. Sie können einen Objekttyp hinzufügen, aber es ist eine völlig andere Sache als, um ihn hinzuzufügen. Damit es hier in einer Voreinstellung angezeigt wird. Weil wir wollen, dass unser Projektil als Projektil eingestellt wird , so dass unser Feind, der immer das Projektil blockiert. Dies ist also kein 100% notwendiger Schritt. Du musst das nicht jedes Mal tun. Aber indem Sie es auf diese Weise tun, Sie erhalten angeben, welche Objekte Sie ignorieren möchten, überlappen und blockieren, um verschiedene Ereignisse in Ihrem Spiel laufen. So unwirklich kommt mit einer anständigen Menge an Preset einmal. Aber Sie können immer Ihre eigenen erstellen, um die Dinge spezifischer und auf Sie zugeschnittener zu machen. Okay, also habe ich endlich herausgefunden, dass du es auch als Voreinstellung einstellen musst. Also hier sind wir in der gleichen Sache. Stellen Sie also sicher, dass Sie ein Objekt-Kanalnamen-Projektil in der Kollision der Projekteinstellungen erstellen . Einer von meinem Gewicht und für ihn wahrscheinlich EPA auf und überall. Aber wir wollen sicherstellen, dass wir auch eine unter der Voreinstellung erstellen. So Projektil. Siehst du, wir wollen Kollision für Abfrage und Physik für dieses neue Objektprofil aktivieren? Und Sie können eine schöne kleine Beschreibung hinzufügen, wenn Sie möchten. Und dann werden wir sagen, ignorieren, ignorieren. Mal sehen, was ich hier mache. Blocken, blockieren. Ignoriere den Pon-Befehl, Tim, ja, ignoriere den Physik-Körper und ich denke, wir ignorieren alles andere. Ja, ja. Also, wir ignorieren alles, aber wir werden die Weltstatik und die Weltdynamik blockieren. Also, wenn du dich an unseren feindlichen Typ erinnerst, das Netz, das den Physikkörper drauf hat. Und es ist, wo wir in unsere physikalischen Materialien geschlitzt haben. Wir haben das eingestellt, ich denke, ich werde in einer Sekunde nachsehen, wo wir das Netz setzen. Komm zu ihnen, du könntest es tun. Wie Sie hier sehen, stellen wir das Netz so ein, dass es weltdynamisch ist. Also unser Projektiltyp. Es ist so eingestellt, dass es Projektil in unserem Netz wird gesagt, alles zu blockieren, was Projektil genannt wird. Das ist also im Wesentlichen, wie das in unserem Spiel funktioniert. Und wir sind dran, unser Charakter ist so eingestellt, dass wir das ignorieren, was bedeutet, dass unsere Kugeln oder Projektile uns nicht treffen werden. Wenn Sie in der Lage sein wollen, sich mit einer Rakete oder so etwas in die Luft zu jagen, würden Sie sicherstellen, dass der Bauer auch blockiert. Aber das ist nicht etwas, was wir in diesem Projekt tun werden. Also bei der Kollision in unserer Projektilbasis, wenn Sie es nicht sehen, drücken Sie einfach Kompilieren und Sie werden es als Projektil einstellen. Kollisionsvorgaben unter Kollisionsprojektil, okay, mit der Kollisionskugel-Kollision ausgewählt, okay? Das ist das eigentliche Objekt, das unser Event für den Stopp des Projektils antreiben wird. Jetzt machen wir ein paar Kinder aus dieser Projektilbasis. Wir machen eins für unser Scharfschützengewehr, eins für unseren Granatwerfer und eins für unseren Raketenwerfer. Ihr kennt jetzt den Bohrer, klickt mit der rechten Maustaste auf die Basis und gibt ihm dann den Namen, den ihr wollt. Ich mache Projektile Unterstrich und dann den Namen der Waffe. Ich hätte wahrscheinlich, wenn ich konsequent sein wollte, das hätte ich rückwärts getan. Ich hätte den Namen der Waffe gemacht und dann Projektil unterstrichen, als hätte ich alles andere getan, aber ich habe beschlossen, es dieses Mal zu wechseln. Ganz ehrlich, ich vergaß wahrscheinlich, dass ich sie umgekehrt mit allem anderen genannt habe . Aber wir werden das Scharfschützengewehr starten und dann unter dem Projektil werden wir in Scharfschützengewehr Projektil einschneiden. Das ist also tatsächlich in der Waffe selbst. Also wollen Sie in jede einzelne Waffe gehen, diese drei Waffen, Scharfschützengewehr Waffe, Granatwerfer, Waffe, Rakete starten Ihre Waffe. Und da wir das auf eine Variable gesetzt haben, möchten Sie sicherstellen, dass sie als Projektil nicht Treffer Scan eingestellt sind. Und du willst sichergehen, dass es unter dem Projektil die richtigen Projektilkinder sein soll, die du soeben machen hättest. Also für das Scharfschützengewehr Geschoss unter dem Netz, gibt es eine namens Scharfschützengewehr Munition, und es ist diese kleine Kugel. Und wir werden das drehen, so dass es nach vorne zeigt und die Größe vergrößert. So negativ 90, es sieht aus wie in der y und dann mache ich das wahrscheinlich wie sechs oder so mal so groß. Sie können es machen, wie groß Sie es sein wollen. Also mache ich es einfach groß genug, damit es irgendwie um unsere Kollision passt. Sie können jedoch die Größe der Kollision ändern, nur um zu wissen , dass, wenn Sie die Größe der Kollision innerhalb des untergeordneten Elements ändern, auch das Netz verkleinert, da das Netz ein untergeordnetes Element ist. Wir werden diese Geschwindigkeiten auf 12 Tausend und die Schwerkraftskala auf 0,1 ändern. Es wird also nicht eine ganze Menge Abgabe geben und dieser wird wirklich schnell gehen. Wir wollen sicherstellen, dass der Radiusschaden für unser Scharfschützengewehr verursacht wird falsch. Für Waffenstatistiken, Ich werde in einem Schlitz 100 Schaden, obwohl ich glaube, dass die Variable Kontrolle, die innerhalb der Waffe existiert. Ich denke, das ist alles, was zählt. Und dann für Impact Effekt, aber Scharfschützengewehr Wirkung Wirkung, wie ich sagte , diese, es mag nicht so viel Rolle. Es kann sein, dass Sie es nicht hier einlegen müssen, weil es möglicherweise diese Informationen aus dem Waffen-Blueprint erfasst. Aber weißt du, es ist eine gute Praxis. Es schadet nicht, Schlitz in den Mengen des Schadens. Und dieser Effekt im Projektil ist gut, kann keinen Schaden anrichten. So viel davon ist nur sicherzustellen, dass die Variablen auf den richtigen Typ gesetzt sind. Viele Male, wenn Sie eine Art Fehler haben könnten, könnte es sein, dass Sie nicht Projektil eingeschlitzt haben oder die Wirkung wirkt sich in geschlitzt. Du könntest es Scharfschützengewehr haben. Der Scharfschütze, der ein Hit sein soll, Scan, wenn es wirklich ist, sollte ein Projektil sein. Wenn also bestimmte kleine Dinge wie das nicht funktionieren, ist das erste, was ich einfach tun würde, Ihre Variablen in Ihren Blaupausen zu überprüfen , um sicherzustellen, dass es tatsächlich die richtigen Dinge gibt. Denn wenn man jemanden Waffen hat, kann es etwas verwirrend werden. Also haben wir den Geltungsbereich nicht fixiert. Das machen wir in einem späteren Video. Aber wenn es schießen sollte, dass Kugeln aus der Vorderseite der Waffe jetzt und es sollte ziemlich sichtbar sein, um das zu sehen. Was ich jetzt tun werde, ist, dass ich diesen Kerl erschießen werde. Ich werde einen Fehler bekommen, wenn ich dies in einem vorherigen Video schließe. Ich denke, ich habe erwähnt, um sicherzustellen, dass wir einen gewissen Sinn dafür ändern die physikalischen Materialien nicht korrekt zurückgegeben werden können. Und das ist der Fehler, von dem ich gesprochen habe. Also werde ich hier ein bisschen verwirrt. Ich bin wie, was zum Teufel? Also unsere Schäden und Arbeit, aber es ist seltsam. Es feuert also immer noch einen Aufpralleffekt ab. Es wird immer noch eine beschädigte Zahl angezeigt, obwohl die Schadensnummer 0 ist. Und es zeigt Ihnen immer noch einen Hinweis Marker, als ob wir etwas treffen, aber etwas stimmt damit nicht. Also wird der letzte Teil dieses Videos wieder am Leben sein. So hoffentlich konnten Sie diesen Teil des Videos durchziehen. Noch einmal entschuldige ich mich für dieses Geschehen bei ist verloren das Audio haben, um diesen Teil neu zu erfassen, aber die letzte Minute oder zwei dieses Videos wird die Live-Version wieder sein. Und Sie werden sehen, wie ich Ihnen die Lösung für diese Luft zeige. Okay, also lasst uns voran und schnell vorwärts gehen und unser Leben weitermachen. Ok. Also mehr Peinlichkeit für mich, okay, damit du weißt, was ich dir gesagt habe. Achten Sie auf eine bestimmte Variable C, Sie erhalten keine Fehler, so dass der Computer nicht erkennt, welches physische Material Sie haben. Nun, ich habe das Richtige getan und dir gesagt, dass das passieren würde, aber ich habe dir nicht gesagt, was du anschalten sollst. Also, wenn ich das hier abkreuze, okay. Ich schnappe das Scharfschützengewehr, ich hebe es auf, ich schieße in den Boden. Ok. Beachten Sie, dass es immer noch die d Anzahl ist, alles, aber es wird sagen, dass Zugriff keiner versucht, Eigenschaft, physikalisches Material zu lesen , und es wird in unserer Impact Base zeigen, wie der Emitter, der Sound ins Detail nicht funktioniert und Sie erhalten eine Zugriff auf keinen Fehler. Es bedeutet, dass es versucht, etwas zu finden, das nicht da ist. In diesem Fall ist es auf der Suche nach einem physikalischen Material, das getroffen wurde. Er kann es nicht finden. Also macht der Computer immer noch etwas und die meiste Zeit wird er immer noch das Richtige tun, aber du verwirrst es. Also in der Projektilbasis und Sie haben auch bemerkt, dass die beschädigten Zahlen nicht funktionieren, wenn Sie das nicht tun. Also bei der Kollision unserer Projektilbasis, suchen Sie einfach zurück. Wenn True Components Sweeps liefert Material der Ergebnisse. Ich weiß nicht, warum in Gottes Namen ist nicht standardmäßig aktiviert. Aber du musst das tun. Setzen Sie also Rückgabematerial in Bewegung, schalten Sie das in Ihren Kollisionseinstellungen ein. Also jetzt, wenn wir in den Boden schießen ist immer noch alles funktioniert. Aber wenn wir zu unserem Feind gehen und sie beim richtigen Klang treffen und die Schadenszahlen und all das. Und wenn wir auf „Escape“ klicken, bekommen wir keine Fehler. Ok? Das ist ein entscheidender Schritt. Ich kann nicht glauben, dass ich wieder auf den gleichen Fehler gelaufen bin, aber ich meine, du willst, dass ich denke, du willst auch ähnlich generierter Zaun? Ich verstehe nicht, warum du das nicht würdest, aber ja. Ok. So cool. Wir haben das repariert, bevor wir jetzt mit unserem Leben weitermachen können. Okay, also ja, lasst uns herausfinden, wo wir waren und alle Ehrlichkeit, das könnte sein, wo ich das Video beenden kann, weil ich immer noch versteckte Headshots auf Panzer bin. Im nächsten Video werden wir das Scharfschützengewehr reparieren, dass es tatsächlich Sachen macht und das ausbauen kann. Aber ja, ich meine, gerade jetzt sind wir unsere Schießgeschosse aus unserer Waffe, dann werde ich gut funktionieren. Also werden wir das Scharfschützengewehr erschaffen und dann machen wir Explosionen, und dann sind wir ziemlich fertig. Also sind wir hier im Homestretch. Danke, Jungs, dass ihr zugesehen habt. Wir sehen uns im nächsten. 36. Aufnehmen: Hey alle, willkommen zurück zu einem anderen Video. In diesem hier werden wir im Scharfschützengewehr fixiert werden , denn während wir es momentan ausrüsten können, schießen es und alles, es macht keinen Ton und der Umfang ist ziemlich Genki, also werden wir diese Dinge in dieses Video. Ok? Aber fangen wir an, indem wir uns hier aufstellen. Also haben wir diese Textur unserer Fadenkreuze, aber wir müssen das zu einem Widget hinzufügen. Also lassen Sie uns mit der rechten Maustaste auf die Benutzeroberfläche, und wir werden das nennen, es heißt Scharfschützenkreuze Fadenkreuz. Und lasst uns das aufmachen. Wir können dies auf einem Füllbildschirm halten und wir wollen nur ein Bild hinzufügen. Und wir werden nur nennen diese Fadenkreuze immer daran erinnern, F2 ist, Dinge umzubenennen und unwirklich und genau wie auf Ihrem Computer im Allgemeinen, lassen Sie uns dieses Bild verankern, um den Bildschirm zu füllen und setzen Sie die Offsets auf 00. Also, jetzt füllen wir einfach unseren gesamten Bildschirm hier. Und lassen Sie uns einfach in unser Bild für Scharfschützenfadenkreuze einschlitzen. Und da gehen wir. Das ist also eine andere Sache, die ich in Photoshop gemacht habe. Zugegeben, es ist nicht perfekt. Es wird aber die Arbeit erledigt, für unsere Zwecke. Das ist nicht das, was wir hier professionell sind. Ok. Aber es ist nicht so professionell. können wir schließen. Wir brauchen nichts damit zu tun, wir brauchen das nur, um zu existieren. Also gehen wir in unsere Waffenmappe und öffnen unsere Scharfschützenwaffe. Ok. Wenn du diese Dinge nicht eingelassen hast, haben wir Auswirkungen, wir haben unseren Schaden oder töten Impuls, den wir wie 15000 machen können, machen es ziemlich mächtig. Projektil ist ein separates Dateiprojektil. All das sollte eingeschlitzt werden. Ja. Okay, also lasst uns jetzt weitermachen und ein paar Ereignisse erstellen. Also müssen wir anfangen zu schießen. Du. Ereignisse fangen an, so zu schießen. Lassen Sie uns einen Aufruf an die übergeordnete Funktion hinzufügen. Dann sind beide dort eingesteckt. Und dann aus dem Waffennetz. Wir haben das getan, bevor wir eine Animation abgespielt haben. Animation wird Scharfschützenfeuer, Scharfschützengewehr, Entschuldigung, Animation sein. Also jetzt unsere Sound- und Partikeleffekte und all das Zeug funktionieren nur schießen. Und wir wollen auch nicht, dass dies einer von denen ist, die Spam abgefeuert werden können. Also machen wir Feuerrate berechnen. Und dann überprüfe ich einfach sehr schnell. Die Feuerrate dafür. Oder hätte ich diese Feuerrate gesetzt, setzen Sie dies auf 1 Sekunde. Also ein bisschen schneller feuern als die Schrotflinte. Ok? Jetzt, wenn Sie sich in unserer Waffenbasis erinnern, haben wir diese Waffe Ziel in Waffenziel eingeben, Ausgang. Und diese sind an das Eingabe-Ereignis gebunden, das wir auf unserem Player haben, das mit der rechten Maustaste verbunden ist. Damit wir diese Ereignisse jetzt tatsächlich nennen können, oder? Und diese Ereignisse, die in unseren Eltern existieren, da sie an den Event Dispatcher gebunden sind, der in unserem Spieler existiert, werden dazu führen, dass dies ausgelöst wird, wenn wir unser Ziel innerhalb des Spielers betreten. Deshalb haben wir sie auf diese Weise erschaffen. Also lassen Sie uns eine Ereigniswaffe Ziel eingeben, und lassen Sie uns den Anruf an die Eltern bekommen. Ok. Also, wenn ich das gut genug erkläre. So wie diese an einen Mentor gebunden sind, diese Ereignisse, die wir hier nennen. Und diese Veranstaltung in unserem Charakter, funktioniert unsere Event-Dispatcher? Die Action-Mappings zielen ab und wir rufen einen Mentor. Also, wenn wir dies aufrufen, passieren auch alle anderen Ereignisse, die gebunden sind. Das ist also einer von ihnen. Okay, also lasst uns einen Hinweis auf unseren Spieler nehmen und uns die aktuelle Waffe holen. Und wir wollen nur sicherstellen, dass die aktuelle Waffe, die wir haben, das Scharfschützengewehr ist. In Ordnung. Weil wir nicht wollen, dass das jedes Mal passiert, wenn wir einen Mentor nennen. Also lasst uns eine if-Anweisung bekommen. Also haben wir das nicht gemacht, sonst würde es. Und dass wir einen Verweis auf sich selbst bekommen können. Anstatt dies gleich wie die Last aus gleich zu haben, entspricht Scharfschützengewehr Schwäche. Holen Sie sich einen Hinweis auf uns selbst in dieser Blaupause denn während wir selbst dieses Scharfschützengewehr sind, okay? Das tut auch das Gleiche. Weil wir dieses Zeug nicht wollen, dass wir nicht wollen, dass all das passiert, wenn wir kein Scharfschützengewehr ausgerüstet haben. Und wir werden ein Widget erstellen. Das Widget, wie Sie wahrscheinlich erraten können, wird unser Scharfschützenfadenkreuz sein. In Ordnung, sagen wir, ist im Ansichtsfenster. Dann sagen wir, und dann sagen wir Zweig. Und dann sagen wir hier raus im Ansichtsfenster. Das ist keine Ansichtsfenster-Sache. Was das tut, ist, dass es verhindert. Also kann ich sagen, dass sie nicht zweimal hinzufügen wird. Es wird also nur unser Fadenkreuz zum Ansichtsfenster hinzugefügt, wenn es derzeit nicht vorhanden ist. In Ordnung. Dies wird nur verhindern, dass diese Art von Problem passiert, wie Sie eine Art Warnung oder Fehler sagen Widgetbekommen eine Art Warnung oder Fehler sagen Widget bereits auf dem Bildschirm oder so etwas hinzugefügt wurde, und es wird nicht angezeigt. Das wird also verhindern, dass das passiert. Als nächstes, wenn wir unsere Fadenkreuze oben haben, wollen wir uns im Spiel versteckt setzen. Wir wollen unser Waffennetz bekommen und es tatsächlich unsichtbar machen. Ok? Deshalb haben wir uns nicht wirklich Sorgen um das Aiming F0 v und all das Zeug gemacht, weil es wen interessiert? Wir werden es einfach unsichtbar machen. Wir werden auch unseren Spielercharakter nehmen und wollten das nicht tun und unseren Spielercharakter machen. Okay, nichts dagegen sagte Schauspieler verstecktes Spiel. Also die Waffe Nachrichten versteckten Spiel, und dann ist der Charakter Hit Schauspieler im Spiel. Also werden wir unsere Waffe in unserem Charakter unsichtbar machen. Ok? Und wir wollen unseren Spieler holen. Und wenn Sie sich erinnern, dass wir das HUD und unsere Spieler erstellt haben, werden wir das Haupt-HUD bekommen. Und wir werden die Sichtbarkeit so einstellen, dass sie zusammenbricht. Also werden wir auch das HUD loswerden. Wir wollen das HUD nicht sehen, wir wollen unseren Spieler nicht sehen und wir wollen das Netz der Waffe nicht mehr sehen. Also lassen Sie uns sagen, versteckt Waffe, Spieler und Hod. Beim Zielen. New York. So wie das. Während er sich versteckt. Während Amy und das Scharfschützengewehr sind das Dinge, die alles versteckt haben. Also, jetzt ist das alles für einen Mentor. Als nächstes wollen wir Ereignisse, Waffe zielen, verlassen, und wir werden die übergeordnete Funktion so nennen. Ok? Und dann werden wir überprüfen, ob es gültig ist. Das erste, was wir überprüfen werden, ist diese Fadenkreuz-Sache. Dies wird also verhindern, dass dies ausgeführt wird. Wenn dieses Fadenkreuz ein Neomycin erstellt hat. Weil wir ihm sagen, dass er es entfernen soll, werden wir ihm sagen, dass er weggehen soll, um vom Elternteil zu entfernen. Das überprüft also nur, als ob wir das Sturmgewehr abholen und den Ausgang abzielen, richtig? Wir, wenn wir Ziel verlassen, es geht, wird das Spiel wie entfernen Sie dieses Widget vom Bildschirm und dann wird das Spiel verwirrt sein. Sie werden so sein, dass wir es überhaupt noch nie hinzugefügt haben. Dies ist also ein gültiger Hinweis, der Fehler für diese Art von Fehler verhindert. Vom übergeordneten Element entfernt. Also wird es nur entfernen, wenn es gültig ist. Mit anderen Worten, wenn es überhaupt überhaupt erschaffen wurde. Alles klar, dann wollen wir nur die gleichen drei Dinge nehmen , die wir unsere Kästchen entfernen wollen, also bringen Sie es zurück, bringen Sie es zurück und machen Sie es sichtbar. Und dann sagen wir einfach zeigt Waffenschicht und all das Zeug, alle Scharfschütze zielen. Alles klar, und das ist alles, was wir für ein Scharfschützengewehr brauchen. Also, wenn wir jetzt gehen und den Scharfschütze greifen, nehmen wir das auf und wir zielen. Da gehen wir. Eine Sache, die wir wahrscheinlich tun wollen, ist, den Zoom zu ändern , weil das gerade ein bisschen schwer zu sehen ist. Ziel-Sichtfeld. Und wenn Sie das ganz können, wie Sie wollen, wie viel Sie wollen, dass dies zu vergrößern, weil der Scharfschütze soll Zoom. Ja, es ist wahrscheinlich nicht einmal in der Nähe. Machen wir es so etwas wie 25. Sehen Sie, wie das aussieht. Da gehst du. Ich werde sagen, immer noch vermisst. Also zugegebenermaßen, mein Scharfschützengewehr Zielfernrohr ist nicht perfekt. In Ordnung. Ich werde nur der Erste sein, der das zugibt. Es ist nicht, es ist ziemlich nah an der Mitte des Bildschirms. Aber ich habe Photoshop nicht. Also, wenn du nur ein bisschen raufkamst, wird es immer treffen. Wirklich sollten CIOs schließen. Also ja, es ist ein bisschen wackelig. Aber etwas, das Sie auch tun können, um dieses Problem zu beheben. Alles klar, so kleiner Jerry Reagan hier. Also, wenn du runtergehst und das Scharfschützengewehr findest, richtig? Wenn Sie sich an das Skelettnetz erinnern, wenn Sie sich daran erinnern, okay. Wir werfen die Kugel aus dem Mündungsblitz, damit Sie tun können, ist Sie hier Schnauze Blitz nehmen und es einfach ein wenig nach oben bewegen können. Vielleicht setzen Sie es in Einklang damit, vielleicht so und drücken Sie Speichern. Und jetzt werden Ihre Kugeln tatsächlich ein bisschen höher injizieren , weil die Steckdose höher war. Und jetzt und jetzt sind wir versteckte Headshot Flagge ist niemandes Sache. Alles klar, trotz meiner schlechten Photoshop und Fähigkeiten, wenn Sie das auf 20 bis 22 bewegen, schien ein anständiger Wert zu sein. Schritt 22. Die Mündungsblitzbuchse auf dem Scharfschützengewehr. Da gehst du. Jetzt machen wir unsere Schüsse. Also der Weg, um dort als Militärwaffen, Silberwaffen zu gelangen, und dann das Skelettnetz des Scharfschützengewehrs zu schnappen , das ist, woraus wir unsere Kugeln injizieren. Und verschieben Sie das bis zu einem Z-Wert von 22. Und dann wird das diesen Scharfschütze genauer mit dem Fadenkreuz machen , das ich in Photoshop erstellt habe. Alles klar, das ist alles für das Scharfschützengewehr, es ist alles erschaffen. In den nächsten Videos werden wir also an einem Granatwerfer und einem Raketenwerfer arbeiten und die Dinge explodieren lassen und es wird großartig sein. Alles klar, danke fürs Zuschauen. Lassen Sie mich wissen, wenn Sie Fragen haben und hoffen, Sie in der nächsten zu sehen. 37. Dinge laufen (Explosionen!): Hey alle und willkommen zurück zu einem anderen Video. Dieser wird Spaß machen, weil wir ein paar Sachen mit unserem Granatwerfer und Raketenwerfer in die Luft sprengen werden. Also lasst uns keine Zeit verschwenden und zu diesen Michael Bay kommen, um Explosionen zu fragen. In Ordnung, also gehen wir in unsere Schnittstellen und gehen zum BPI, nehmen Schaden an. Wir werden eine neue Funktion innerhalb dieser bereits bestehenden Schnittstelle hinzufügen und wir nennen dies nehmen Radiusschaden. In Ordnung. Nehmen Radiusschaden wird zwei Eingänge haben. Wir werden einen Treffer haben, weil wir immer schreiben müssen und der andere wird genau so sein, wie bevor der Feind Schaden nimmt, wir Waffen Statistiken bekommen wollen. Also lasst uns eine Art Waffenstatistik bekommen. Kompilieren, Speichern, Schließen. Jetzt lassen Sie uns gehen und öffnen Sie unseren Feind ist in die Ereignisdiagramm gehen und wir können nach unten scrollen, wo wir einige offene Raum haben und wir wollen Ereignis nehmen Radiusschaden nennen . Okay, also haben wir diese Schnittstelle bereits zu diesen Blueprints hinzugefügt und jetzt können wir einfach weiter Funktionen ziehen, die innerhalb von dort existieren. In Ordnung, also zuerst, lasst uns überprüfen und sicherstellen, dass unser Charakter oder Feind nicht tot ist. Ich will nicht in der Lage sein, das zu tun, was wir tun werden, wenn sie tot sind. Aus dem Treffer Ergebnis. Es aus Waffenstatistiken zu brechen, ist irgendwie brechen, dass. Wir fangen an, ein paar Sachen in die Luft zu stecken. Um dies zu tun, lassen Sie uns eine neue Funktion erstellen und sagen wir zählen, Warteschlange, spät, Radius, Schaden. Das wird ein bisschen anders funktionieren. Li dann berechnen Sie es beschädigt. Also werden wir drei verschiedene Eingaben hinzufügen. Einer nennt Schaden. Wir werden einen Aufprallradius nennen, und dann einen weiteren, der Aufprallpunkte genannt wird. Und diese werden Schwimmerschäden von Schwimmeraufprall Radius sein ist auch ein Schwimmer. Impact Points wird ein Vektor sein. In Ordnung. Lassen Sie uns eine lokale Variable nur für organisatorische Zwecke beschädigen. Wie okay, lassen Sie uns voran und bekommt Schauspieler Standort. Also bekommen wir den Standort des Feindes. Denken Sie daran, Ziel ist Selbst, es ist dieser Blaupause Charakter. Wir werden die Aufprallpunkte nehmen und diese subtrahieren. Also Vektor minus Vektor. In Ordnung? Und dann werden wir die Länge dieses Vektors bekommen. Und dann werden wir das durch einen Schwimmer teilen. Ist ein Schwimmer. Wir wollen sicherstellen, dass das oben ist und wir werden das durch den Aufprallradius teilen. Okay, und dann werden wir hier eine Subtraktion durchführen. Und wir werden das unten packen, und dann machen wir das hier. Es wird also 1 minus sein, was auch immer der Wert dieser Mathematik ist. Mathe ist, es bekommt den Schauspieler, die Position des Feindes. Es nimmt, was auch immer dieser Aufprallpunktvektor ist, er bekommt die Länge dieser beiden Dinge, wie weit sie voneinander entfernt sind. Dividieren Sie es durch das, was wir auf diesen Radius gesetzt haben, und subtrahieren Sie das dann. Also, wie ich sagte, die meisten der kleinen mathematischen Dinge hier drin, Es ist einfach Symbol oben auf, auf, aber viele dieser Zahlen und diese Berechnungen werden nur durch Tests herausgefunden. Die Tatsache, dass dies eine Klasse ist, bedeutet also, dass Sie das nicht durchstehen müssen. Also lassen Sie uns einen Schwimmer mal einen Schwimmer machen. Wir werden das mit unserem Schaden multiplizieren. In Ordnung? Und dann wollen wir etwas tun, das heißt das Klemmen eines Schwimmers. Das Minimum wollen wir 0 sein. Und das Maximum, das wir in der Lage sein wollen, ist, was auch immer Schäden. Das ist also nur so zu sagen, dass dies den Schaden verhindert , den wir auf einen größeren als das, was auch immer wir den Schaden setzen. Also, wenn unsere Rakete 700 Schaden verursacht oder so etwas, Wir selbst wenn diese Berechnung führt zu einer Zahl größer als 700, es wird klemmen, es wird es davon abhalten, über 700 zu gehen. In Ordnung, also fügen wir einen Rückgabeknoten hinzu und wir sagen Radiusschaden. Angewandt oder berechnet Radiusschaden oder was auch immer. Und das wird ein Float-Retur-Plug-In sein. Und da gehen wir. Das ist das. So können wir jetzt wieder zu unserem Veranstaltungsdiagramm gehen. Und wenn wir nicht tot sind, können wir den Radiusschaden berechnen. Wir haben all diese Eingaben. Also lasst uns Schaden in Schaden stecken, Aufprallradius in den Aufprallradius. Und dann wird unser Break-Hit-Ergebnis ein Impact Point geben. Sie können es genau dort sehen. Aufprallpunkt in den Aufprallpunkt So wie das. Meine Knoten sind ziemlich nah beieinander in einem, aber das ist okay. Okay. Das nächste, was wir tun wollen, ist, dass wir unser Gesundheitsupdate durchführen wollen. Also die gleiche wie die, wie zuvor, die wir hier oben verbraucht haben, wenn wir diesen Schaden berechnen. Also geben wir das rein. In Ordnung, dann wollen wir nachsehen und sicherstellen, ob wir tot sind oder nicht. Und dann wird vieles davon gleich sein. Wenn wir tot sind, dann wollen wir den Feindtod führen. In Ordnung? Der Treffpunkt wird dieser Ausschlagspunkt sein. Setzt, wo der Impuls abfeuern wird, und dann müssen wir einen Knochennamen bekommen. Es, Knochenname in Knochennamen. Zusammenbruch. Oh, mein Gott. Es ist eine Knotenparty hier drüben. Okay. Ja, das ist okay. Für nicht tot. Dann wollen wir Schadenszahlen k laufen und wir stecken das einfach so ein. Wirkungsstandort wird immer noch Auswirkungen sein. Schaden wird immer noch die verursachte Schadensmischung sein. Es ist der verursachte Schaden nach der Berechnung, nicht vorher. Und dann brauchen wir nicht als Headshot. Eine Sache, die ein falsch gemacht haben könnte. Lassen Sie mich einfach Felder zuerst kommentieren und sagen, dass der Feind Schaden durch Sprengstoff oder so etwas erleidet. Eine Sache, die ich ursprünglich falsch in der Bandschädigung gemacht haben könnte , der normale Gewebeschaden. Und stellen Sie sicher, dass Ihre so aussieht. Stellen Sie sicher, dass wahr in den Tod geht und dann nach unten, um Zahlen zu beschädigen. Dann wird falsch in Schadenszahlen gehen und dann Schadenszahlen führen zu ist gültig. Ich hätte vielleicht den Tod hier reingehen lassen und dann das einfach überspringen lassen. Ich bin mir nicht ganz sicher, aber ich könnte das getan haben, wenn ich nur sicherstellen würde, dass es aussieht, diese vier Knoten so aussehen. In diesem Fall erleiden Feind Schaden, ein Teil des Skripts so. Okay? Aber das ist alles, was wir im Feind tun müssen. Also, jetzt ist all das Setup. Was wir also tun müssen, ist jetzt wieder in unser Projektil zu gehen, in unsere Projektilbasis. Und denken Sie daran, wir haben diese Explosionsprojektilfunktion, die hier drin läuft. Und so macht es nichts. Also lassen wir es etwas tun. Also, abseits des explodierenden Projektils, öffnen wir eine Sequenz. Lassen Sie uns Ergebnisse treffen. Der Bohrer, wir werden ihn kaputt machen. Wir würden gerne die Dinge brechen. Und dann bekommen wir unsere Waffenstatistiken und wir werden das kaputt machen. Sie möchten also in der Lage sein, diesen Aufprallradius zu erhalten. Und wir werden einen Knoten machen, der von 1000 genannt wird. Es wird Sphärenüberlappung Akteure sein. Das ist also das Zeichnen einer Kugel. Und es wird sich überschneiden. Gibt ein Array von Akteuren zurück, die die angegebene Kugel überlappen. Also zeichnen wir eine Kugel und dann kehrt sie mit einer Reihe von Schauspielern zurück, die diese Sphäre überlappen. Wie groß wird die Sphäre sein? Nun, es wird sein, was wir auch immer unser Aufprallradius sein wollen. Wie ist die Position der Kugel, die sie sein wird, der Aufprallpunkt wird sein, wo unser Projektil etwas trifft. Okay, also genau wie vorher müssen wir ihm Objekttypen geben die sich überlappen und dann zu ignorieren sind. Also raus hier, lasst uns ein Array erstellen. Array ist wie eine Reihe von Dingen, wie mehrere Dinge, eine Liste, die ich nicht einmal weiß. Ein Arrays wie ein normales Wort, wenn wir wollen, um zu überprüfen, was die Welt dynamisch ist und was es ist Pfand setzt unseren Feind und dann wie andere Dinge in der Welt. Unsere Feinde sind also Feinde, weltdynamisch. Okay, das wird sich also überschneiden. Und dann lasst uns den Spieler verschrotten und uns die aktuelle Waffe holen. Alles klar, und dann lassen Sie uns das in Schauspieler stecken, um es zu ignorieren. Und dann mache ich eine eigene kleine Reihe. Das sind die Schauspieler, die wir nicht wollen. Wir wollen nicht, dass unsere Sphäre sagt, dass sie sich mit unserer Waffe überschneidet. Alles klar, das wäre nicht gut. Ich würde einige Verwirrung aus unseren OUT-Schauspielern schaffen. Wir werden eine für jede Schleife oder rechts tun, wie in der Ausführung. Und dann aus der Schleife Körper, wollen wir sagen, nehmen Radius, Schaden. Waffenstatistiken werden hier drin Waffenstatistiken sein. Hit Ergebnis, würden Sie wahrscheinlich vermuten, wird dieses Treffer Ergebnis sein. Loggen Sie es ein, Bergen es in. Und das ist alles, was wir tun müssen. Für das Array-Element. Wir werden sie jedoch in Target stecken. Alles klar, das Letzte ist, dass wir einen Schauspieler aus der Klasse spawnen wollen , und wir wollen eine Explosion machen, aber wir haben diesen Explosionseffekt nicht geschaffen, also müssen wir das jetzt erschaffen. Also können wir es einfach in Geschossen behalten. Lassen Sie uns eine Blaupause erstellen Klasse und Schauspieler und nennen diesen Explosionsimpuls oder so etwas. Es muss nicht super komplex eines Namens sein. Okay, und was wir dann hinzufügen wollen, ist, dass wir in den Menschen hinzufügen wollen , dass es eine radiale Kraftkomponente sein könnte. Nur eine radiale Kraft. Ok. Und wir nennen diese Explosion voll. Das wird also unser großes Ziel sein. In Ordnung. Also für den Radius, Lassen Sie uns es wie 400 in Änderungen machen, wie Sie wollen. Impuls. So okay. Also, wenn Sie den Fall der konstanten Impuls ist eine konstante Stärke, um es linear zu machen, dann wird es Impuls wird schwächer je weiter vom Ursprung. Das ist es, was wir wollen, das ist realistischer wie eine echte Explosion. Es ist am stärksten bei diesem Aufprall in der Mitte. Und dann, wenn du ihn von außen schlägst, wird es nicht so verrückt sein. bewirkende Objekttypen. Lasst uns einfach Welt Dynamic und Physik-Körper tun. können wir. Können wir die einfach loswerden? Wir können diese paar loswerden, denn wenn ich sie benutze, Impulsstärke, können wir das auf 3 Tausend einstellen, was immer du tun willst. Und dann im Ereignisdiagramm, alles, was wir tun müssen, ist beginnen zu spielen. Lasst uns unsere Explosionskraft ergreifen und Feuerimpuls sagen. Okay, also, wenn diese Blaupause in die Welt gebracht wird, werden sie diesen Impuls abfeuern. Bada Bing, Bada, Boom. Alles klar, jetzt bin ich wieder in unserer Projektilbasis. Wir würden sagen, immer laichen, Kollisionen ignorieren, was hier ziemlich Standard ist, wenn es um diese Dinge geht. Und die Klasse, die wir wollen, wird Explosionsimpuls sein. In Ordnung? Und die Laichen verwandeln sich. Lass es uns teilen, weil wir uns nur um seinen Standort kümmern. Also machen Sie das zum Aufprallpunkt. Und dann ist das das. Okay. Das ist also dieses Skript. Stoppen Projektil läuft zu hören, das sieht richtig aus. Das einzige, was wir tun mussten, ist, dass Sie diese Projektile in unseren Blaupausen erstellen müssen . Wir müssen sicherstellen, dass wir auf den Radiusschaden eingestellt sind. Okay. Also gehen wir in unseren Granatwerfer. Eins. In Ordnung, lassen Sie uns das einfach als Beispiel verwenden. Also für unser Projektilnetz werde ich das dreimal so machen. Und ich werde sagen, Granatwerfer Munition. Und da gehen wir. Da ist es. Wir können es vielleicht viermal so groß machen, es ein bisschen größer machen. Was immer du wolltest. Es spielt wirklich keine Rolle. Und ich werde eine zusätzliche Komponente hinzufügen. Und ich werde nach einem Partikelsystem suchen und wir werden diese Trail-Effekte so nennen. Weil es einen Granatpfad gibt. Also wird es tatsächlich schießen eine kleine rauchige Art von Effekt, ich denke, Sie wollen es zu Hause nennen. Sie werden für unsere Projektilbewegung sehen, das sind die Einstellungen, die ich hatte. Ich hatte 3500 für die Anfangs- und die maximalen Geschwindigkeiten. Die Schwerkraftskala war ziemlich schwer und was das Zeug Bögen ich werde es auf zwei setzen. Und dann wird Radius schädlich. Möchten Sie das in diesem Blueprint einschalten? Der Grund dafür ist, weil wir wollen, dass das explodierende Projektil ausgeht und nicht nur wie der normale Schaden, den die Scharfschützengewehre tun. Also drücken Sie die Daumen. Los geht's. Ich habe und wir haben die vielleicht nicht in unseren Blueprint aufgenommen. Lass mich mal sehen. Und wir haben nicht, okay, also haben wir dem Spiel nicht wirklich gesagt, was klein ist. Also für Waffenstatistiken. Eigentlich gehen wir weiter. Ich weiß nicht, ob die Statistiken überhaupt wichtig sind, aber für die Auswirkungen der Tatsache, denke ich, dass aber für die Auswirkungen der Tatsache, denke ich, dasses das tut, weil wir das und das Projektil Bayes hervorbringen. Also sind die Statistiken wahrscheinlich wichtig in der Waffe, aber der Aufpralleffekt ist hier wichtig. Also lassen Sie uns voran gehen und tun Granate Launcher Wirkung Wirkung. Und dann lass mich einfach zurück zu meinem Granatwerfer, einer Waffe. Es wird das öffnen. Also für Projektil ist das wichtig. Wir wollen in Projektil Granatwerfer Schlitz, Das ist die Projektakte, die wir für seine Waffenstatistiken schießen wollen. Sagen wir einfach den maximalen Wert, es kann wie ein 100 sein und, und lassen Sie mich überprüfen und sehen, was ich vorher hatte. Okay, also im vorherigen Projekt hatte ich den Schaden bei einem 150 Sophie Treffer, direkt im Epizentrum getroffen zu werden, wird viel Schaden in den Aufprallradius dieser Sphäre anrichten. Es wird 500 sein. Ordnung, also wird das kein Geräusch abspielen , wenn es ausgeworfen wird, weil wir das noch nicht aufgebaut haben. Aber mal sehen, ob das feuert. Da gehen wir. Es ist schießen durch Shooting so dünn. Wirklich, um Leute in die Luft zu jagen. Nun, der Kopf-Impuls, das ist ein Fehler, der manchmal auftauchen könnte, machen Sie sich keine Sorgen darüber. Hat nur damit zu tun, wie die Kapselkomponente zu zerstören und es versucht, mit etwas zu interagieren. Mach dir keine Sorgen. Okay. Also war das der Impuls oder was auch immer tötet Impuls? Das ist etwas, mit dem wir uns ein bisschen verwirren wollen. Also lasst uns das so machen, 100 Tausend, richtig. Und schicken Sie sie fliegen. Und ich habe es verpasst. In Ordnung. Also ja, das wird funktionieren. In Ordnung. Also im nächsten Video werden wir den Raketenwerfer und die Handgranatenabschussvorrichtung beenden und bauen diese auf. Stellen Sie sicher, dass wir die Animationen spielen und die letzten paar Dinge machen, die wir es tun wollen, diese zwei Waffen, aber ja, das ist alles in Stein gesetzt, also ja, ich hoffe, ihr habt dieses Video genossen. Wir nähern uns dem Ende dieser Klasse. Ziemlich verrückt. Also, vielen Dank, dass Sie zugesehen haben, und wir sehen uns im nächsten. 38. Schießen von Grenade und Rocket: Hallo an alle und willkommen zurück zu einem anderen Video. Dies wird wahrscheinlich das letzte Video dieser Hauptserie sein. Und was wir darin tun werden, ist, dass du unseren Granatwerfer und unsere Rakete fertigstellen wirst. Erstellen Sie also dieses Projektil und fügen Sie dann ein paar Dinge zum grauen Launcher hinzu, die im letzten Video fehlten. Dazwischen habe ich nur ich aufgereiht unser Video oder Videos sind Feinde alle 200 auseinander. Wenn Sie sich erinnern, wählen Sie etwas mit Ihren Fangeinstellungen an einer bestimmten Einstellung aus, drücken Sie Control End und es wird es an diesem Raster, Texten, Rendern und Ordnern und solchen Dingen einrasten . Okay, also in diesem, der uns anfangen lässt, indem unsere Granatwerfer Waffe in unserem Waffenordner öffnen. Die Sache, die wir gerne machen wollten, wie die meiste Zeit, weil wir brauchen, um die Veranstaltung starten zu lassen. Und lassen Sie uns einen Aufruf der übergeordneten Funktion hinzufügen. Nun, ich mag die, wie diese. Und dann wollen wir das Waffennetz bekommen und wir werden Animation spielen. In Ordnung? Und die Animation, die wir spielen wollen, ist Granatwerfer so abgefeuert. Ordnung? Und dann für diesen wollen wir auch Raten abfeuern, berechnet. Sie wollen auch nicht Spam auslösen. Und die Feuerrate, für die wir hier haben werden, sehen wir einfach, wo das ist. Feuerrate. Legen Sie das auf 0,5 fest. Okay, das ist alles, was wir tun wollen. Wir können diese verschiedene Zahlen wie 0,2, negativ 0,25 sein. Nachladezeit kann 2,5 sein, Kugeln Spread kann 600 sein. Also ich meine, einige davon, ich meine, das muss Projektil sein, das muss Granatwerfer sein. Aber einige davon, die Munition, hier werden die Dinge Spaß machen. Wissen Sie, wo Sie all diese Variablen betrachten können, die wir erstellt haben, und sie für alles, was Sie wollen. Sie können mit verschiedenen Maschen herumlaufen. Wenn du verschiedene Packs und verschiedene Soundeffekte hast und du dieses Zeug einfach einschalten kannst, ändere den Kill-Impuls. Das Projektil sollte der Gradienten starten ein Projektil Impakt-Effekt sein sollte, dass. Waffenstatistiken. Sie können die Schadenswerte ändern. Die Waffe Kick, Nachladezeiten, all das Zeug ist jetzt vollständig anpassbar für Sie. Also, wenn ich in das Spiel geben, so werde ich nicht zu viel Zeit damit verbringen. Und jetzt haben wir unseren Granatwerfer. Ich werde ein wenig zu groß von einem Radius sein, aber wie so jetzt kommt es in wie das Testen des Spiels, wo alles funktioniert und jetzt geht es nur darum, es aussehen und fühlen und klingen zu lassen, wer auch immer Sie es wollen. Und das war eine große Sache, die ich mit dieser Klasse tun wollte, war, es so einzurichten, wo an diesem Punkt alles, was es darauf ankommt, nur diese Variablen zu ändern und man bekommt ein völlig anderes Feeling Spiel. Und so können deine Waffen jetzt anders aussehen als der Verstand, klingen anders als meine. Haben verschiedene Mengen von KYC und Kugeln verteilt und Rückstoß und nur all diese Art von Zeug. In Ordnung. Also, um es zu beenden, lasst uns den Raketenwerfer machen. Und es ist auch das Raketenwerfer-Projektil bekommen. Und für ein Projektilnetz, lasst uns Raketen holen, Munition. Und lassen Sie uns das so sagen, Oh, das ist zu groß. Zweimal 2,52,5 mal so groß wie die Größe. Es ist ein bisschen größer als die Kollision. Wir können dies wie 1, 2, 0 einstellen. Das machte alles außer deine Hände hoch. Kommen Sie auf ihn und Kinder, Sie sollten wissen, wie das funktioniert. Wir wollen sicherstellen, dass dies Radiusschaden verursacht, Waffenstatistiken spielen keine Rolle, aber die Auswirkungen der Tatsache, wir wollen, dass dies ein Raketenwerfer ist. Impact Effekt sagt wirklich, was ich denke, okay , Mensch, Sie statt Sie öffnen dieses Skript wird nur eine lange an dieser Stelle sein. Geschossbewegung. Lassen Sie uns das so machen. Und unser Scharfschützengewehr war wie zwölftausend und zwölftausend. Damit wir das bei hundert, zehnhundert halten können. Wir können das 0,5 machen, weil ich denke, die Granate ist auch, also will ich, dass du 0,5 bist, wie ich schon sagte, verwirrst dich damit, tu was immer du willst. Sie können dieses Ding haben, schießen Sie einen Strandball aus und machen ein wie ein quietschendes Geräusch oder ein Löwenbrüllen. Das ist mir egal. Du tust, was immer du willst. Es ist nur eine Frage der Veränderung. Damit wir das Geschoss jetzt in der Waffe schließen können. Also haben wir unsere Raketenwerferwaffe. Alles, was wir tun wollen. Alles klar, wir haben nur eine Sache zu tun, Event. Beginnen Sie mit der Aufnahme, weil IT-Profis von diesem. Also dieser Punkt, stecken Sie einfach in die Feuerarten, greifen Sie die Waffe Maische und wir wollen in Animation legen. Ich habe tatsächlich vergessen, eine Sache zu tun, aber ich mache diesen Auftrag, feuere eine Rakete ab. Und das haben wir in Gang. Wir müssen uns Sorgen über die Feuerrate machen, die ich zumindest nicht muss, weil ich zu jeder Zeit nur eine Runde eine Rakete in meinem Magazin habe. Also, wenn Sie schießen, einfach neu lädt automatisch Projektil wird Rakete starten ein Projektil. Eigentlich werde ich die Verstärkung öffnen. Töten Sie den Impuls. Lassen Sie uns das auf 250 Tausend oder so einstellen. Einfach absolut lächerlich. Der Schaden beträgt 200 und der Aufprallradius beträgt 300. Ich setze nur Zufallszahlen an dieser Stelle ein. Raketenwerfer Auswirkungen beeinflussen Vorladezeit b. Okay, das ist in Ordnung. Damit das 750 ist, also r., wird das nicht wirklich beeinflussen, wohin das Projektil geht, aber es wirkt sich auf das Fadenkreuz aus. Okay, also wird es schwieriger, Feuerziel zu treffen, weil du hier nicht überqueren wirst. Spreads können viel breiter sein. Nun, Waffenkick, wir wollen wahrscheinlich, dass das negativ 0,5 ist, wahrscheinlich wie viel. Je näher es einem ist, desto verrückt wäre es, wenn es wie negative zwei wäre. Je kleiner die Zahl ist, desto intensiver wird im Wesentlichen gespeichert. Um daran zu denken, da es negative Zahlen sind, ist es wie invertiert. Also negativ 0.5 ist nicht so viel, aber wie negative zwei ist, wie Feuerrate spielt keine Rolle. Wenn ich Projektil tippe. Ja. Das Einzige, was ich tun will, ist wie mit dem Granatwerfer. Es wird eine Komponente hinzufügen. Und ich möchte sicherstellen, dass ich es hier auf einem Partikelsystem mache und wir werden diese Trail-Effekte wieder nennen. Und dann gibt es einen Raketenweg. Ich kann eine Spur starten. In Ordnung. Daumen haben sie gekreuzt, vergessen Sie etwas. Aber ja, wir haben das. Jetzt haben wir diese Verzögerung ein wenig geladen begonnen. Siehst du, es ist, als würde man sich streiten. Oh, da gehen wir. Wir müssen töten. Die Geräusche sind ein wenig unsinkbar. Die Rakete ist wirklich laut und so könntest du, aber wenn du genau zuhörst, kannst du immer noch diesen Tötungsimpuls hören. Wenn ich es direkt auf den Boden vor ihnen schieße. Habe nur die eine Entscheidung getroffen. Tun Sie das mit allen. Aber hoffentlich schafft das Oh, vielleicht habe ich den Aufprallradius nicht festgelegt. Dies hat also tatsächlich bei Waffenstatus Aufprallradius sitzen. Ich dachte nur, ich würde das Ende dieses Videos wird wirklich zufällig. Und es ist irgendwie bis zu diesem Punkt herumzuspielen. Sie können sehen, dass die Leute getroffen, die mir die Radius lokale Liste einstellen. Es ist nicht super große Refi auf den Boden zu treffen. Eigentlich. Früher gehen sie? Nein. In Ordnung. Komm runter zu ihm. Ok. Ja. Ich glaube, das ist alles. Das sind all unsere Waffen, die wir abholen können. Ja, ich denke, das ist alles, was wir vorerst in dieser Klasse tun müssen. Also haben wir, dass sie diese Waffe abholt, diese Waffe. Diese Waffe. Ich habe die Kugel nicht gewechselt, damit du sehen würdest, dass das Scharfschützengewehr nicht so groß ist. Also könnte ich die wahrscheinlich ein bisschen größer machen. Sie können sehen, dass sie ein wenig hochschalten. Das Chicago ist mehr als wie alle. Ja, wir können unsere Munition abholen. Heben Sie das auf. Ja, du hast dieses ganze Projekt. Sollte jetzt alles arbeiten. Esel. Das, ich habe das hier. Wir haben ein bisschen davon. Wir haben ein bisschen, oh, ich habe vermisst. Wir haben ein bisschen Schulden. Wird das sein. Und ein bisschen für ihn. 360. Beenden Sie sie am Stempel. Sehen Sie jetzt, jetzt können Sie anfangen, etwas Spaß zu haben. Sie können zwischen den Waffen wechseln und Sie können African Pro hier drüben sein. Ok. Also ja, Leute, ich denke, das ist so ziemlich alles. Also, bevor wir es beenden, möchte ich nur ein paar Dinge durchgehen. So vorwärts in diesem Projekt, offensichtlich gibt es bestimmte Dinge, die in Ego-Shootern sind , die ich hier nicht enthalten wollte, um die Waffen aufzunehmen. Ich möchte d, die Munition und die verschiedenen Aufprallfehler einbeziehen. Also, wie ich sagte, es ist sehr leicht anpassbar, um es jetzt zu machen , was Art von First-Person-Shooter, die Sie wollen. Sie können dieses Wissen nehmen, wie die Linie Spuren zeichnen und Sie können das auf einen Third-Person-Shooter anwenden. Es alarmiert, es wird genau die gleiche Weise funktionieren. Sie können verschiedene Servicetypen hinzufügen. Sie können KI zu den Feinden hinzufügen, eine ganze Reihe von verschiedenen Dingen. Also, ja, so wie jetzt können Sie die Art von Spiel, das Sie wollen, machen Sie es wie ein Luder-Shooter, kann es in eine Zombie-Welle Überleben Art von Spiel zu machen. Sie können Ziele mit einem Punktsystem haben. Du kannst machen. Ein normaler Militär-Typ-Shooter, der irgendwie wie das ist, was ich hier getan habe. Sie können voran gehen und wie ein Gesundheitssystem erstellen, Blutbildschirme hinzufügen. Wir haben keine Möglichkeit, dass der Spieler tatsächlich Schaden in diesem aktuellen Projekt mit, das ist etwas, das hinzugefügt werden kann. Sie können Gesundheits Pickups und verschiedene Dinge wie das machen. Wir können die Feinde dazu bringen, Munition fallen zu lassen. Also, was wir das tun können, wäre wirklich einfach. Biete diesem Feind den Tod an. Sie könnten eine zusätzliche Pin hinzufügen und Sie könnten einen Schauspieler aus der Klasse hervorbringen lassen. Und Sie können sie jede von ihnen hervorbringen lassen. Du kannst ein Array rausziehen, oder? Und dann können Sie eine dieser sechs Möglichkeiten haben, die Sie brauchen. Vielleicht können Sie ein Array von 10 haben. Es besteht also die Chance, dass nichts vom Feind fällt, so etwas. Wir können mehr setzen, Mehr UI-Funktionen mit den Waffen in den Pickups. Denn gerade jetzt in einem echten Spiel würde etwas auftauchen und Sie könnten tatsächlich damit interagieren. Das war etwas, das ich nicht hinzufügen wollte. Wir können unser Spiel weggeben, um diese Hand zu verschwinden. Hoffentlich wissen Sie genug über verschiedene Animations-Blueprints, mit denen wir keine Waffe halten. Alles, was du tun musst, ist nur die Animation zu ändern oder du kannst einfach, du kannst sogar ein Ereignis-Tick auslaufen und das Armnetz haben , wenn wir keine Waffe haben, die gerade in Endgame gesetzt ist und das unsichtbar ist. Es gibt also wie ein paar kleine Dinge, die du tun kannst. Dieses Projekt wird nicht super perfekt sein. Es wird wenig Probleme geben. Eine Sache, die ich bemerkte, ist, dass, wenn Sie Waffen wechseln, also wenn ich ziele und ich Waffen tausche, es einfach nur zwischen ihnen geht. Es spielt die Animation nicht tatsächlich im Sound ab. Deshalb gibt es QA-Teams. Es gibt also bestimmte Dinge, die nicht notwendigerweise wie Fehler an sich sind, aber sie sind eine Art Eintauchen, die Dinge in den Code brechen , den Sie entweder lindern können. Es gibt wahrscheinlich einige Dinge, die ich, ganz ehrlich, nicht einmal bewusst bin, aber so ist das Leben. Das ist eine Art, wenn das Erstellen von Spielen so viel Zeit in verschiedene Builds von Spielen verbracht wird, die jeden Tag erstellt werden und dann diese Builds aktualisiert haben und ein ganzes Team von Leuten spielen , um sie zu finden dieser Probleme, die der Computer vielleicht nicht als Problem erkennen wird, aber ein Mensch, der das Spiel spielt, würde sagen, das ist ein bisschen auf natürlich, dass es so passiert ist, oder? Wir können dem Spiel auch weitere Kollisions-Einstellungen hinzufügen. Also Göttin hat diese Arbeit als eine Linie Spuren, aber diese unsichtbaren Boxen, die Sie sehen können, in denen sie tatsächlich interagieren, treffen die Standard-Steinsache, die wir nicht um sie herum laufen können. Das wäre so einfach, wie in die Projekteinstellungen zu gehen, in Kollision zu gehen und die Einstellung hinzuzufügen , dass eine andere Art von Objektverfolgung besagt, zwischen der unser Spieler tatsächlich laufen kann, und das ist etwas, was unsere Zeilenverfolgung würde ignorieren würde. Okay, also versuche ich, mir etwas anderes einfallen zu lassen. Sie könnten das Spiel auch so machen, wie Sie es wollen. Als ob ich es nicht so habe, wie ich es eingerichtet habe. Du kannst nicht nachladen. Wenn du sprintst. Sie können, Sie können das ändern, wenn Sie wollen. Sie können das Skript nach Ihren persönlichen Wünschen oder was auch immer ändern, je nachdem, wie das funktioniert und wo Sie es beobachten. Wenn es bestimmte Funktionen, die Sie sehen möchten, zeigen Sie mir speziell, wie Sie tun, wenn Sie nicht wissen, es. Sie sind nicht in der Lage, ein Tutorial auf YouTube zu finden dieses Projekt oder etwas auf der unwirklichen Dokumentation aufzubauen, ich würde dringend vorschlagen, dass Sie voran gehen und versuchen , dass, wenn Sie etwas suchen wollen, das wirklich ist, wirklich spezifisch. Aber wenn es bestimmte andere Funktionen gibt, die Sie hinzugefügt sehen möchten, lassen Sie es mich wissen und ich kann potenziell zu diesem Kurs hinzufügen, ich müsste darüber nachdenken, ob es überhaupt möglich ist, können Sie Videos hinzufügen, wie sie an das Ende anhängen. Aber ja, wenn Sie es bis zum Ende dieser Klasse geschafft haben, vielen Dank, dass Sie zugesehen haben. Es bedeutet mir sehr viel, dass Sie diese Art von Sache ansprechend sehen werden. Ich hoffe, Sie haben viel gelernt, das von diesem Endprojekt in unserem stolz darauf. Und kann es entweder lassen und sein wie, okay, ich weiß, wie man das macht und das hat Spaß gemacht, oder Sie können anfangen, es anzupassen und Ihre eigenen Dinge hinzuzufügen, Ihre eigenen Funktionen gehen auf den Markt und, und machen diese Jungs nicht wie die Schaufensterpuppe Mann oder so etwas. So ja. Dieses Projekt ist eine Auster, also können Sie es entweder als etwas wie okay verwenden, ich weiß, wie man das macht und das war cool. Oder du kannst EINE hinzufügen lassen. Und wenn du es weiter hinzufügst, würde ich gerne sehen, was du daraus erschaffst. Es wird großartig sein. Wie immer, haben Sie Fragen an mich? Schreib es einfach in der Diskussion auf oder erschieße mir eine E-Mail oder was auch immer. Vielen Dank, Jungs, dass Sie das von Anfang bis Ende gesehen haben. Es bedeutet mir wirklich viel. Und ich werde Sie im nächsten Video Schrägstrich Klasse Schrägstrich sehen. Ich weiß es nicht mal. In Ordnung. Gut.