So fügst du Steam-Multiplayer hinzu – Unreal Engine Blueprint | Pixel Helmet | Skillshare
Suchen

Velocidad de reproducción


1.0x


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

Cómo agregar multijugador en Steam – Unreal Engine Blueprint

teacher avatar Pixel Helmet, Game Developer & Publisher

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.

      Introducción

      0:55

    • 2.

      1.01 VS, . Núcleo NET, . NET Framework y DirectX

      2:32

    • 3.

      1.02 Convertir el proyecto a C++

      2:47

    • 4.

      1.03 Añade el complemento para sesiones avanzadas de Steam

      1:22

    • 5.

      1.04 Construcción en Visual Studio

      2:40

    • 6.

      1.05 Habilitación del complemento para sesiones avanzadas de Steam

      0:48

    • 7.

      1.06 Edición del archivo DefaultEngine.ini

      3:01

    • 8.

      1.07 Crea el mapa del menú principal

      1:03

    • 9.

      1.08 Modo de juego del menú principal y controlador de jugadores

      2:13

    • 10.

      2.01 Introducción a los planos de widgets

      4:51

    • 11.

      2.02 Importación de una fuente personalizada

      2:52

    • 12.

      2.03 Diseño del menú principal

      18:57

    • 13.

      2.04 Animación de la interfaz de usuario con nombre del jugador

      4:15

    • 14.

      2.05 Crea la enumeración

      2:37

    • 15.

      2.06 Función de mostrar y ocultar los widgets

      10:36

    • 16.

      2.07 Comunicación con planos - Casting

      3:59

    • 17.

      2.08 Comunicación con planos - Interfaces

      7:32

    • 18.

      2.09 Programación del menú principal

      3:12

    • 19.

      2.10 Programación del nombre en Steam

      3:10

    • 20.

      2.11 Diseño del fondo del menú principal

      7:25

    • 21.

      2.12 Adición de Button SFX

      3:14

    • 22.

      3.01 Creación del widget para crear el servidor

      3:11

    • 23.

      3.02 Diseño del widget para crear un servidor

      26:09

    • 24.

      3.03 Cómo obtener el nombre del servidor y el mapa seleccionado

      11:13

    • 25.

      3.04 Cómo jugar a las tragamonedas, el idioma y la privacidad

      7:23

    • 26.

      3.05 Programación del Button trasero

      3:10

    • 27.

      3.06 Crea una sesión avanzada

      8:43

    • 28.

      3.07 Programación del servidor Button

      2:37

    • 29.

      3.08 Adición de animación de la interfaz de usuario de Create Server

      4:37

    • 30.

      4.01 Creación del widget del navegador para servidores

      2:25

    • 31.

      4.02 Diseño del widget del navegador para servidores

      13:05

    • 32.

      4.03 Diseño del widget de la tarjeta de servidor

      18:24

    • 33.

      4.04 Cómo agregar el servidor a la lista

      7:47

    • 34.

      4.05 Cómo agregar un indicador de servidores refrescantes

      7:28

    • 35.

      4.06 Función de resultado de sesiones

      4:52

    • 36.

      4.07 Filtrado para el idioma del servidor

      8:08

    • 37.

      4.08 Filtrado solo en servidores LAN

      6:04

    • 38.

      4.09 Cómo ocultar los servidores vacíos

      1:25

    • 39.

      4.10 Filtrado para el nombre del servidor

      6:47

    • 40.

      4.11 Cómo obtener la configuración adicional para la tarjeta de servidor

      3:40

    • 41.

      4.12 Actualización de la información de la tarjeta de servidor

      8:40

    • 42.

      4.13 Cómo unirse a la sesión

      0:50

    • 43.

      4.14 Navegador de servidores Back Button

      4:15

    • 44.

      4.15 Prueba del resultado final

      6:42

    • 45.

      4.16 Empaquetado del proyecto

      7:43

  • --
  • Nivel principiante
  • Nivel intermedio
  • Nivel avanzado
  • Todos los niveles

Generado por la comunidad

El nivel se determina según la opinión de la mayoría de los estudiantes que han dejado reseñas en esta clase. La recomendación del profesor o de la profesora se muestra hasta que se recopilen al menos 5 reseñas de estudiantes.

36

Estudiantes

--

Proyecto

Über diesen Kurs

¡Aprende cómo agregar el multijugador en Steam a cualquier juego!

¿Quieres agregar el modo multijugador en Steam a tus proyectos de juego, pero no sabes cómo empezar? Nuestro curso te guía a través del proceso paso a paso, comenzando con la instalación del plugin de Sesiones avanzadas de Steam y terminando con el proyecto de juego para que tus amigos y familiares lo prueben. Nuestro curso en profundidad garantiza que tendrás todo el conocimiento que necesitas para agregar con éxito el multijugador de Steam a cualquiera de tus proyectos de juego.

Para principiantes completos y aspirantes a desarrolladores de juegos

Tanto si eres un principiante como si eres un desarrollador de juegos experimentado, este curso completo te guiará paso a paso sobre cómo agregar Steam Multiplayer a tu proyecto. No necesitas ningún conocimiento previo para empezar. Este curso no solo demuestra cómo integrar Steam en tu juego, sino que también te enseña cómo utilizar Unreal Engine 5 en general, incluido el lenguaje de programación visual Blueprint.

Practica con Unreal Engine 5 y Steam: ¡aprende haciendo!

Aprende cómo implementar Steam en Unreal Engine 5 con estos tutoriales en video fáciles de seguir. Comenzarás con los conceptos básicos del complemento de sesiones avanzadas de Steam y avanzarás hacia temas más avanzados, como la creación del navegador de servidores, el menú de host y los filtros de servidor. Este es el curso más completo disponible sobre cómo usar Steam con Unreal Engine 5, y proporciona instrucciones detalladas y una experiencia fácil de usar.

En este curso, aprenderás lo siguiente:

  • Instala el plugin de sesiones avanzadas de Steam
  • Crea el menú principal para juegos en línea
  • Crea el menú "Crear servidor" para alojar servidores en línea
  • Crea el navegador de servidores y muestra los servidores en línea
  • Añade una opción de filtro de servidor para filtrar el idioma, el nombre del servidor, la LAN y más.
  • Cómo crear, buscar y unirse a servidores de juegos en línea.
  • Cómo empaquetar el proyecto para que amigos y familiares jueguen juntos.

¿Qué me hace estar calificado para enseñarte?

Mi nombre es Moustafa Nafei, y soy el director y desarrollador de Farmtale en Steam, hecho solo con Blueprints. Con años de experiencia en el desarrollo de juegos y la enseñanza con 30.000 estudiantes en todas las plataformas, te mostraré las mejores prácticas para lograr un rendimiento optimizado y listo para el juego.

Únete a una comunidad de apoyo con desarrolladores de ideas afines.

Colabora, comparte ideas y obtén inspiración de otros estudiantes a medida que emprenden este viaje juntos.

¡Nos vemos en la lección 1!

Conoce a tu profesor(a)

Teacher Profile Image

Pixel Helmet

Game Developer & Publisher

Profesor(a)

Pixel Helmet is a video game developer and publisher based in Denmark. We have recently released our first game Farmtale on the Steam platform.

We decided to get on Skillshare to create high-quality courses and share our knowledge with the game development community. Learning can be tedious at times and we aim to create a fun learning experience.

We offer to create courses within Modeling, Texturing, Unreal Engine, Blueprints, C++, Game Design, and much more. If you need any help during a course, please let us know through Skillshare or connect with us on Discord, Twitter, or LinkedIn.

Ver perfil completo

Level: All Levels

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. 1.00 Einführung: In diesem Kurs lernst du, wie du hinzufügen mithilfe von Blueprints in Unreal Engine Five Steam-Multiplayer zu jedem beliebigen Spielprojekt Der Kurs behandelt alles, was Sie von Anfang bis Ende wissen müssen, einschließlich der Installation der Steam Advanced-Sitzungen Schließen Sie an, wie Sie das Hauptmenü für Online-Spiele erstellen. So erstellen Sie das Create Sera-Menü , um Server online zu hosten So erstellen Sie den Serverbrowser und zeigen Online-Server So fügen Sie eine Servofilteroption hinzu, um nach Sprache, Servoname, Land und mehr zu filtern. So erstellst du Online-Spieleserver, suchst sie und trittst ihnen bei. Und schließlich, wie man das Projekt so zusammenpackt , dass Freunde und Familie zusammen spielen können. Am Ende dieses Kurses werden Sie die Fähigkeiten und das Selbstvertrauen erwerben, um Steam nahtlos in jedes Ihrer Unreal Engine Five-Projekte zu integrieren Ihrer Unreal Engine Five-Projekte Und denken Sie daran, dass ich hier sein werde , um Sie während Ihrer gesamten Lernreise zu unterstützen während Ihrer gesamten Lernreise und ich freue mich darauf , Sie bald zu sehen 2. 1.01 VS, . NET Core, . NET Framework und DirectX: Bevor wir beginnen, müssen Sie ein paar Dinge herunterladen, damit es funktioniert Das erste, was Sie herunterladen müssen, ist etwas namens Dotnet Core Wenn Sie das in Google schreiben und danach suchen, können Sie von Microsoft die erste Website mit der Aufschrift „Net herunterladen“ sehen die erste Website mit der Aufschrift „Net herunterladen Hier hast du eine Schaltfläche für diese, DoesDK, du musst die neueste herunterladen, die du auf deinem Bildschirm siehst Vielleicht schaust du dir das in Zukunft an, egal, du musst nur das neueste herunterladen Wenn Sie jetzt Core gemacht haben, müssen Sie auch das.net-Framework herunterladen . Wenn Sie darauf klicken und einfach erneut die neueste Version herunterladen, die Sie auf Ihrem Bildschirm sehen Fahren Sie fort und laden Sie das Net Framework herunter. Dann müssen Sie Direct X herunterladen also Direct X herunter, wählen Sie die Sprache aus und klicken Sie auf Herunterladen. Das Letzte, was Sie herunterladen müssen, ist Visual Studio 2022. Mach weiter und klicke darauf. Für Visual Studio müssen Sie nur die Community 2022 auswählen. Und mach weiter und lade das auch herunter. Für Visual Studio 2022 müssen Sie nun einige spezifische Dinge installieren. Es ist sehr wichtig, dass Sie hier darauf achten , dass Sie für mein Installationsprogramm auf Ändern klicken, damit Sie sehen können, was ich installiert habe, und Sie können dieselben Dinge hier installieren. Ich möchte, dass du installierst das.net Desktop Development heißt Laden Sie die Version mit dem Namen Desktop Development with Plus Plus Universelle Windows-Plattformentwicklung, mobile Entwicklung mit Plus Plus. Auch die Spieleentwicklung mit Plus Plus. Das Letzte, ich glaube nicht, dass du es brauchst, aber ich habe es. Linux- und Embedded-Entwicklung mit C Plus Plus. Achten Sie auch bei der einzelnen Komponente darauf. Und es ist besser, wenn ich auf diesen Sap klicke damit du ihn sehen kannst, und ich gehe nach unten. Wir haben das Windows SDK. Ich habe das Windows Ten SDK. Es ist sehr wichtig, das auch herunterzuladen. Sie können sogar dieselbe Version wie ich herunterladen , wenn Sie sie auf meinem Bildschirm sehen können. Sie können auch das Windows 11 SDK herunterladen. Es ist sehr wichtig, zwei SDKs zu haben. Dann fahren Sie einfach fort und installieren Sie ein Visual Studio 2022. Lassen Sie uns das schließen und zu mir zurückkehren , sobald Sie damit fertig sind. 3. 1.02 Das Projekt nach C++ umwandeln: Lassen Sie uns weitermachen und die Engine starten In diesem Kurs verwende ich die neueste Engine, 5.3. Wenn Sie sich diesen Kurs ansehen und eine neue Version haben, spielt das keine Rolle Es ist immer noch derselbe Prozess. Sie können es sich also auch ansehen. Ich werde gerade Unreal Engine 5.3 starten . In diesem Fenster kannst du entweder ein neues Projekt erstellen, indem du auf Spiele klickst , und du kannst eine Vorlage auswählen, mit der du arbeiten möchtest Jetzt habe ich schon ein Projekt. Ich gehe zu meinen letzten Projekten und hier kann ich sie sehen. Ich kann mein aktuelles Projekt, an dem ich arbeiten möchte, nicht wirklich sehen . Ich werde auf Durchsuchen klicken. Der, an dem ich arbeiten werde, heißt Counterstrike. Ich werde dieses Projekt hier auswählen und auf Öffnen klicken. Da mein Projekt mit Unreal Engine 5.2 und nicht mit 5.3 erstellt wurde , klicke ich einfach auf Kopie öffnen , damit meine alte Kopie nicht gelöscht wird meine alte Kopie nicht gelöscht nur für den Fall, dass etwas schief geht Auch für diesen Kurs verwende ich das Counterstrike-Projekt und es ist ein Kurs , den ich veröffentlicht habe Wenn Sie an diesem Kurs teilnehmen möchten, können Sie natürlich auf die Website Game Instruct.com gehen . Dort können Sie den Kurs belegen Ich habe auch viele andere Kurse. Ich habe einen Asset-Marktplatz, auf dem du spielfertige Assets kaufen kannst. Ich habe Privatunterricht und so weiter. Du kannst weitermachen und das besuchen. Lass mich das einfach schließen. Jetzt wurde mein Projekt hier geöffnet, ich werde die Skalierbarkeit auf Epic einstellen. Das kann ich auch in den Einstellungen hier oben machen. Skalierbarkeit, ich mache das normalerweise auf Epic. Jetzt sind wir bereit , damit zu arbeiten. In dieser Lektion werden wir das Projekt auf C plus plus konvertieren. Obwohl wir mit Blueprint arbeiten, werden wir nicht mit C Plus Plus arbeiten, sondern wir müssen es in ein C Plus Plus-Projekt konvertieren , bevor das Steam-Plugin funktionieren kann Lass uns weitermachen und das ganz einfach machen. Lass uns auf klicken. Bevor ich das mache, lass mich einfach zu Tools und dann zu Bug gehen. Und wir reflektieren einfach, ich gehe zur Benutzeroberfläche, weil ich von einem Vier-K-Monitor aufnehme und es auf der Aufnahme vielleicht klein aussieht. Klicken wir nun auf Tools. Fahren Sie fort und klicken Sie auf neue C plus Plus-Datei dann auf Weiter. Klicken Sie einfach auf Klasse erstellen. Es ist nicht wirklich wichtig, ihm einen Namen zu geben, jetzt wird das Projekt in ein C-Plus-Projekt umgewandelt . Wenn das fertig ist, handelt es sich technisch gesehen um ein Projekt. Jetzt mach einfach weiter und klicke hier auf Okay. Und Sie werden gefragt, ob Sie den Code bearbeiten möchten. Fahren Sie nun fort und klicken Sie auf Nein. Jetzt sind wir bereit. Lassen Sie uns dieses Projekt abschließen und mit der nächsten Lektion fortfahren. 4. 1.03 Steam-Plugin für Fortgeschrittene Sitzungen hinzufügen: Lassen Sie uns nun das Steam-Sitzungs-Plug-In hinzufügen. Dazu möchte ich, dass du zu Google gehst und nach Si Steam suchst. Wenn du danach suchst, siehst du den ersten auf Github namens Sense Steam, und dieser Typ hat den Stecker hier. Mach weiter und klicke hier oben auf den Code und lade ihn herunter. Jetzt habe ich diese Datei bereits heruntergeladen und kann sie hier sehen, der Steam-Master. Ich werde meine Datei öffnen. Öffne hier, klicke auf Logins. Öffne die erweiterten Steam-Sitzungen. Stecken Sie ein. Dies sind die beiden Dateien, mit denen Sie erweiterte Sitzungen und die erweiterten Steam-Sitzungen erstellt haben. Lassen Sie mich einfach weitermachen und den Browser minimieren. Sie können weitermachen und Ihre Projektdatei finden , mit der Sie arbeiten. Das ist wieder das Counter-Strike-Projekt , an dem ich hier arbeite Ich möchte, dass Sie mit der rechten Maustaste klicken, einen neuen Ordner erstellen und ihn Plug-ins nennen Öffnen Sie den Plugins-Ordner. Ich möchte, dass du die erweiterten Sessions hierher ziehst, und auch die Advanced Steam-Sessions. Sie haben diese beiden Ordner im Plugins-Ordner. Das ist alles, was wir tun mussten, jetzt haben wir das Plug-In in unserem Projekt. 5. 1.04 Erstellen in Visual Studio: Bevor wir fortfahren und das Projekt öffnen können, müssen wir Visual Studio einbauen Bevor wir das tun, löschen wir außerdem einige Ordner, damit wir keine Fehler bekommen. Wenn Sie den VS-Ordner haben, wählen Sie diesen aus und wählen Sie den abgeleiteten Datencache-Ordner aus. Wenn es Ordner gibt, die Sie nicht haben, ist das in Ordnung, wir werden diese trotzdem löschen. Fahren Sie fort und wählen Sie auch den Zwischenordner aus. Der Ordner VS Config und auch diese LN-Datei wurden gespeichert. Löschen Sie nicht die Projektdatei, es ist Ihr Projekt, sondern dieses Das ist L und Datei und Löschen auf deiner Tastatur und es wird all diese löschen. Dies sind die Ordner , die uns übrig bleiben. Wenn Sie einen Ordner namens Binaries haben, können Sie diesen Ordner auch löschen Wenn Sie ihn nicht haben, ist das in Ordnung. Jetzt müssen wir schreiben, auf die Projektdatei klicken, auf die Projektdatei klicken, weitermachen und auf Mehr anzeigen klicken. Wir müssen auf die Visual Studio-Projektdateien generieren klicken . Wenn Sie das tun, wird es hier generiert. Deshalb war es so wichtig, das Visual Studio.Core.NET-Framework herunterzuladen Visual Studio.Core.NET-Framework Das liegt daran, dass wir diese SLN-Datei generieren müssen. Falls Sie dabei einige Epochen bekommen, lesen Sie bitte nach, wann die Datei generiert wird Es wird dir eine Ära geben. Wenn ja, und es wird dir beschreiben, warum es eine Ära gibt. Versuche es zu lesen, schau, ob du es googeln kannst und repariere es. Wenn du das nicht kannst, kannst du mir natürlich auch schreiben, ich helfe dir weiter. Wir haben eine tolle Community hier auf Discord, also kannst du natürlich diesen Discord-Link verwenden, um uns beizutreten Wir sind eine Menge Leute, die hier sitzen und sich gegenseitig helfen. Wir sind momentan etwa 1.000 oder 2000. Lassen Sie uns weitermachen und die SLN-Datei öffnen. Wenn ich also auf diese Datei doppelklicke , öffnet sich ein Visual Studio Und wenn es ein Visual Studio öffnet, klicken Sie auf den Ordner Spiele und klicken Sie mit der rechten Maustaste auf Ihr Spiel, und Sie können auf Build klicken. Jetzt werden wir ein Projekt erstellen. Es kann einige Zeit dauern, manchmal dauert es 5 Minuten, manchmal dauert es zehn, manchmal 1 Minute. Wir müssen nur warten, bis es gebaut ist. Sie können hier sehen, dass drei von 17 stehen. Ich werde das Video einfach pausieren bis es fertig gebaut ist. Jetzt ist der Bau abgeschlossen. Es ist wichtig zu sehen, dass es erfolgreich war und Sie hier unten keine Fehler haben. Das ist erfolgreich. Schließen wir es und fahren wir mit der nächsten Lektion fort. 6. 1.05 Steam-Plugin für Fortgeschrittene Sessions aktivieren: Jetzt sind wir bereit, das Projekt erneut zu öffnen. Lassen Sie uns Ihre Projektdatei öffnen. Innerhalb des Projekts müssen wir sicherstellen, dass das Steam-Plugin korrekt installiert ist Klicken Sie stattdessen auf Fenster oder Bearbeiten und klicken Sie hier auf Plugins. Lass uns auf das Advanced Sessions Plug-in klicken , das du hier siehst. Wir sehen, dass sowohl die erweiterten Sitzungen als auch die erweiterten Steam-Sitzungen aktiviert sind. Ich möchte auch, dass du runtergehst und auf die Online-Plattform klickst . Und wenn Sie nach unten scrollen, stellen Sie sicher, dass auch das Online-Subsystem aktiviert ist Jetzt können wir sehen, dass all dies aktiviert ist. Ich kann mein Projekt jetzt wieder schließen und mit der nächsten Lektion fortfahren. 7. 1.06 Bearbeiten der Datei DefaultEngine.ini: Als letztes, bevor alles funktionieren sollte, müssen wir etwas Code in die Standard-Engine-Datei einfügen die Standard-Engine-Datei Wenn Sie einfach zu Google gehen und nach etwas wie dem Steam-Online-Subsystem oder dem Online-Subsystem Unreal Engine suchen etwas wie dem Steam-Online-Subsystem , sehen Sie dies Unreal Engine namens Wenn du es hier öffnest , haben sie Code , haben sie Code , Scrollen Sie nach unten, Sie haben hier etwas in der fertigen Standard-Engine mit den Einstellungen Ich kopiere das alles. Du musst diesen Code nicht wirklich verstehen. Klicken Sie einfach mit der rechten Maustaste auf Kopieren. Und dann möchte ich, dass Sie hier zu Ihrem Projektordner zurückkehren . Ich möchte, dass du die Konfigurationsdatei öffnest und dann die Default Engine öffnest. Und mach weiter und öffne das. Scrollen Sie jetzt hier nach unten und klicken Sie unten auf Strg V, um das einzufügen. Das einzig Wichtige hier ist momentan diese Steam App Developer ID. Diese 480 ist nun eine Test-ID , mit der Sie Steam grundsätzlich implementieren können ohne Ihr Spiel auf Steam hochzuladen Steam hat für uns eine Test-App-ID erstellt, die wir während der Entwicklung verwenden können Wenn du deinen Steam oder dein Spiel jedoch bereits auf Steam hochgeladen hast , musst du diese 480-App-ID in deine eigene Spiel-App-ID ändern . Also hier bin ich bei Partner dot Steam Games.com eingeloggt . Auch habe ich einen Kurs über diese Seite Wenn du auf Game instruct.com gehst, wenn du lernen willst , wie du dein Spiel auf Steam hochlädst, habe ich das, aber ich möchte dir nur zeigen, dass du hier deine App-ID sehen kannst Mach einfach weiter und nimm diese Nummer, falls du sie auf Steam hochgeladen hast, und füge sie hier hinzu, dann funktioniert sie in deinem eigenen Spiel Aber im Moment müssen wir es nicht wirklich auf Steam hochladen, wenn du noch nicht bereit bist. Diese Idee von 480 wird also gut funktionieren. Denken Sie daran, fortzufahren und auf Speichern zu klicken . Es ist also gespeichert. Lass es uns schließen. Und jetzt öffnen wir das Projekt. Also werde ich hier noch einmal nachschauen. Wenn wir im Projekt sind, müssen wir sicherstellen , dass Steam läuft. Du musst es als eigenständiges Spiel ausführen. Wenn du das nicht tust, wird es nicht funktionieren. Außerdem musst du Steam ausführen. Stellen Sie sicher, dass Steam auf Ihrem Computer läuft. Ich überprüfe nur meins, das ist es nicht. Also werde ich Steam öffnen und mich auch in dein Konto einloggen, um sicherzustellen, dass Steam läuft. Bevor du das tust, bin ich bei Steam eingesperrt. Ich werde hier klicken und auf Standalone-Spiel klicken, und es wird das Spiel öffnen, wenn es das Spiel öffnet. Du kannst hier unten rechts sehen, dass Steam läuft. Und so wissen wir, dass Steam implementiert wurde und das Plugin funktioniert. Jetzt sind wir bereit, mit der nächsten Lektion fortzufahren. 8. 1.07 Erstellen der Hauptmenükarte: Lassen Sie uns zunächst Hauptmenü-Map erstellen Ich habe bereits einen Ordner namens Maps. Sie können weitermachen und ihn erstellen. Sie können jederzeit hier mit der rechten Maustaste klicken, einen neuen Ordner erstellen und ihn hier Maps nennen. Klicken wir mit der rechten Maustaste auf „Neues Level erstellen“. Ich gebe ihm einfach das Präfix Map und nenne es Hauptmenü. Mach weiter und doppelklicke darauf. Fahren Sie fort und speichern Sie die Auswahl. Jetzt befinden wir uns in der Hauptmenükarte. Im Moment ist nichts da, aber wir möchten auf Bearbeiten klicken und auf Projekteinstellungen und hier auf Karten und Modi klicken. Wir wollen die Startkarte des Editors so ändern, dass sie zum Hauptmenü und auch zu den Standardeinstellungen des Spiels Ändere es zum Hauptmenü. Jedes Mal, wenn der Spieler das Spiel startet, erscheint er jetzt im Hauptmenü Und das wollen wir auch. Lass uns weitermachen und das schließen. Speichern Sie alles, und fahren wir mit der nächsten Lektion fort. 9. 1.08 Spielmodus im Hauptmenü und Spieler-Controller: Bevor wir beginnen können, müssen wir einen Spieler-Controller und einen Spielmodus erstellen Lass uns das machen. Ich habe bereits einen Ordner namens Blueprints Jetzt musst du nicht mehr wirklich auf all das achten Das ist aus meinem Spiel. Wenn du neu hier bist, achte einfach auf die neuen Dinge, die wir kreieren. Und wenn du ein leeres Projekt hast, das für all das nicht wirklich wichtig ist, lass uns mit der rechten Maustaste klicken und einen neuen Ordner erstellen. Ich nenne es Hauptmenü. Wir werden hier drinnen arbeiten. Klicken wir mit der rechten Maustaste und gehen wir zum Blueprint-Kurs. Hier drinnen wollen wir einen Player-Controller erstellen . Hier ist Create oder das Menü, der UI-Bereich und so weiter. Also lass uns weitermachen und das erstellen. Und ich werde es EC für Player-Controller als Präfix nennen . Und dann nenne ich es Hauptmenü. Klicken wir erneut mit der rechten Maustaste. Erstellen Sie eine Blueprint-Klasse. Hier können wir den Spielmodus erstellen. Und nennen wir ihn GM-Spielemodus als Präfix und nennen ihn Hauptmenü. Jetzt haben wir die, öffne den Spielmodus. Hier müssen wir dem Spieler den Controller zuweisen. Wenn Sie hier zu den Klassenstandardwerten für die Player-Controller-Klasse wechseln , klicken wir hier und ändern sie den Player-Controller , den wir erstellt haben Fahren Sie fort und klicken Sie auf Kompilieren, und lassen Sie uns das Ganze schließen. Projekteinstellungen überarbeiten und bearbeiten. Gehe zurück zu Karten und Modi. Hier müssen wir auch den Standard-Spielmodus hier in unser Hauptmenü ändern . Jetzt öffnen wir das Hauptmenü, den Spielmodus. Immer wenn wir das Spiel öffnen und auf den kleinen Pfeil hier unten klicken, stellen Sie sicher , dass die Place Controller-Klasse unser PC-Hauptmenü ist , das wir erstellt haben. Lass es uns schließen. Und als letztes müssen wir auch die Welteinstellungen überprüfen. Sie haben die Welt nicht geöffnet. Sie können hier oben jederzeit auf Fenster klicken und die Welteinstellungen öffnen. Aber hier drinnen im Spielmodus überschreiben. Stellen Sie sicher, dass Sie auch Ihr GM-Hauptmenü ausgewählt haben. Also mach weiter und klicke auf Datei und Alles speichern. Und jetzt sind der Spielmodus und Spielercontroller implementiert. 10. 2.01 Einführung in Widget-Blueprints: Wir sind jetzt bereit, das Hauptmenü zu gestalten. Aber bevor wir das tun, werfen wir einen Blick auf die Widget-Blueprints Wenn Sie nun bereits wissen, was ein Widget-Blueprint ist und wie Sie darin navigieren können, können Sie mit der nächsten Lektion Aber wenn Sie neu hier sind, machen wir hier im UI-Ordner weiter Wenn Sie noch keinen in Ihrem Projekt haben , klicken Sie einfach mit der rechten Maustaste hier im Inhaltsordner und erstellen Sie einen neuen Ordner namens UI. Es ist immer schön , organisiert zu bleiben. Lass uns in diesen Ordner gehen. Nochmals, mach dir nichts aus dieser ganzen Benutzeroberfläche. Das ist aus meinem Counterstrike-Projekt , das wir bereits in meinem anderen Kurs gemacht haben Aber lass uns hier mit der rechten Maustaste klicken und einen neuen Ordner erstellen. Nennen wir es Hauptmenü. Wir werden einfach hier drinnen arbeiten. Lassen Sie uns jetzt mit der rechten Maustaste klicken und eine neue Benutzeroberfläche erstellen und einen umfassenden Entwurf Mach es hier. Eigentlich kann man es WB, Hauptmenü nennen Ich werde es später erstellen. Im Moment zeige ich Ihnen nur, was ein Widget-Blueprint ist Lass es uns öffnen. Hier siehst du ein Diagramm und du kannst die rechte Maustaste gedrückt halten , um hier zu navigieren. Links haben Sie eine Palette, und hier haben Sie die Schaltflächen, Sie haben den Text und so weiter. Sie haben also ein paar Elemente, mit denen Sie die Benutzeroberfläche gestalten können. Hier unten in der Hierarchie können Sie sehen, was Sie zu Ihrer Benutzeroberfläche hinzugefügt haben. Sie können zum Beispiel auf dieses Bild klicken, anklicken und es hierher ziehen. Hier kannst du das Bild sehen, das weiß ist , weil wir nichts drauf haben. Sie können aber auch sehen, dass es der Hierarchie hier unten hinzugefügt wurde . Wenn wir eine Benutzeroberfläche erstellen, beginnen wir normalerweise immer mit einer Leinwand. Wenn Sie nach einer Leinwand suchen, klicken Sie darauf und ziehen Sie sie hierher. Und jetzt hast du diese Leinwand hier auf der Leinwand. Sie können jetzt auf das Bild klicken und es ziehen. Sie können den Text anklicken und ihn hierher ziehen. Oder Sie können ihn auch hier auf die Leinwand klicken und nach unten ziehen . Dadurch wird es auch hinzugefügt und Sie können jederzeit darauf klicken und es verschieben. Sie können darauf klicken und die Größe nach Ihren Wünschen ändern. Du kannst versuchen, hier drinnen zu üben. Es ist immer nett , wenn du zum Beispiel den Fortschrittsteil noch nicht gesehen hast, ihn auch hineinziehen kannst. Sie können die Größe ändern, wenn Sie möchten, Sie können hier im Detailbereich darauf klicken Hier sehen Sie Details zu den Elementen, auf die Sie klicken Wenn ich zum Beispiel auf den Fortschrittsbalken klicke, kann ich Elemente wie die Position in X und Y sehen. Und du kannst klicken und mit der Maus ziehen, um sie anzupassen Oder Sie können eine Zahl schreiben, zum Beispiel 1.000. Sie können die Größe in X und Y anpassen. Sie können auch mit der Prozentzahl spielen, denn denken Sie daran, dass dies ein Fortschrittsbalken ist Sie können hier klicken und riken oder eine Zahl angeben, zum Beispiel 0,2 Sie können auch hier den Stil wählen, Sie können ihn stilisieren Im Moment haben wir nicht viel, du kannst nichts hinzufügen, aber du kannst dein eigenes Hintergrundbild, dein eigenes Füllbild und so weiter hinzufügen dein eigenes Füllbild und so weiter Das Gleiche gilt für den Text. Wenn Sie auf den Text klicken, können Sie den Schrifttyp bearbeiten. Sie können die Größe des Textes bearbeiten und Sie können sogar die Farbe bearbeiten. Sie können es hier unten skizzieren oder Sie können zum Beispiel sechs schreiben. Und jetzt gibt es einen Überblick. Sie können versuchen, all das zu entwerfen oder einfach damit herumzuspielen. Sie können sehen, dass Sie ein paar Elemente haben. Zum Beispiel ein bearbeitbares Textfeld. Dies ist ein Textfeld, und Sie können ihm beispielsweise einen Standardwert geben beispielsweise einen Standardwert Und Sie können jetzt sehen, dass etwas in dieses Textfeld geschrieben ist . Sie können sehen, Sie können versuchen, mit all dem herumzuspielen. So arbeitet man in einem Widget, einem Blueprint. Und Sie können hineinzoomen Und hier draußen, hier oben links, kannst du sehen, wie stark du herausgezoomt hast, wie stark du auch hineingezoomt Eins zu eins sieht es momentan aus. Hier in der Grafik haben wir zwei Abschnitte. Wir haben den Designer , bei dem Sie die Benutzeroberfläche entwerfen. Sie haben auch das Diagramm , in dem Sie die Benutzeroberfläche programmieren. Zum Beispiel programmieren Sie. Was macht dieser Fortschrittsteil? In diesem Counter-Strike-Spiel, das wir erstellt haben, wird der Fortschrittsbalken beispielsweise verwendet, um die Gesundheit des Spielers festzulegen. Die Gesundheit sinkt, wenn du Schaden erleidest. Dies erfolgt in dem Diagramm, in dem Sie den Fortschrittsbalken codieren. Hier entwirfst du hauptsächlich. Okay, versuche hier herumzuspielen. Und das ist für Animationen hier unten. Wir werden uns später damit befassen. Im Moment klicke ich einfach mit der rechten Maustaste und verstecke diesen Tab oder schließe ihn einfach. Schließe den Tab tatsächlich. Es steht uns vorerst nicht im Weg. Ja, spiel einfach hier herum. Ich werde es vorerst einfach schließen. Und ich werde es löschen. Und lass uns mit der nächsten Lektion weitermachen. 11. 2.02 Eine benutzerdefinierte Schrift importieren: Bevor wir fortfahren, möchte ich, dass Sie einen benutzerdefinierten Fonds herunterladen , da wir hier kein Guthaben haben und ich gerne benutzerdefinierte Fonds verwende. Den, den ich benutze, habe ich schon von der Erstellung eines Strike-Courses. Ich habe den Rubic-Fonds bereits heruntergeladen, aber jetzt zeige ich Ihnen, wie Sie das machen können Wenn du nach Google-Fonds suchst, verwende ich das normalerweise gerne, du kannst auch hier danach suchen. Du kannst auch richtig coole Fonds finden. Es gibt viele davon, also kannst du versuchen, dich hier umzuschauen und ich werde einfach einen Google-Fonds verwenden. Ich denke, sie haben wirklich coole Fonds , die du hier verwenden kannst. Ich benutze Rubic. Wenn Sie dasselbe verwenden möchten, können Sie nach Rubic suchen Sie können diese Rubic-URL hier verwenden und erneut darauf klicken Sie können jeden Fonds finden, den Sie wollen. Machen Sie einfach weiter und versuchen Sie, hier in den Fonds einen Fonds zu finden. Sie können sich umschauen und sich alle ansehen. Aber für den Rubic-Fonds können Sie auf einen der Fonds klicken Sie können es sogar testen. Wenn du zum Beispiel recht hast, Hauptmenü hier unten, kannst du die Größe reduzieren. Schauen Sie sich einfach an, wie es aussehen wird und visualisieren Sie es. Wenn es dir gefällt, klicke hier auf Familie herunterladen und öffne auch diese statische Datei. Jetzt habe ich all diese Dateien, diese statische Schrift. Sie können hier weitermachen und verwenden, was Sie möchten. Normalerweise mag ich die hellen Schriften nicht weil sie in Unreal Engine zu klein aussehen in Unreal Engine zu klein und man sie im Spiel fast nicht sehen kann Normalerweise gehe ich gerne von Medium, nicht einmal von Normal, von Medium aus Und dann nehme ich die halbfett, vielleicht die extra fett, fett und schwarz, die ich verwenden würde Sie müssen sie zuerst auf Ihren Desktop extrahieren, weil es sich um eine Datei handelt Klicken Sie auf sie und ziehen Sie sie auf einen Desktop oder Ihren Download-Ordner, was auch immer Sie möchten. Zum Beispiel so in den Download-Ordner. Wann immer Sie das tun, gehen Sie hier zum Download-Ordner. Du kannst sie jetzt benutzen, sie alle nehmen und den Motor hier drinnen starten. Lass mich einfach den Motor im Motor minimieren. Wenn Sie innerhalb des UI-Ordners einen Ordner namens Funds erstellen können , klicken Sie mit der rechten Maustaste. Erstellen Sie einen neuen Ordner mit dem Namen Funds inside of funds. Klicken Sie darauf und ziehen Sie sie hierher. Immer wenn du sie hierher ziehst, wirst du gefragt, ich Geld für dich anlegen soll? Fahren Sie einfach fort und drücken Sie Ja. Wenn Sie das tun, werden Ihnen all diese Informationen angezeigt. Wenn Sie also benutzerdefinierte Fonds haben, können wir sie jetzt innerhalb der Benutzeroberfläche verwenden anstatt den langweiligen Standardfonds. Und jetzt fahren wir der nächsten Lektion fort und entwerfen das Hauptmenü. 12. 2.03 Das Hauptmenü entwerfen: In Ordnung, jetzt sind wir bereit, das Hauptmenü zu gestalten. Und bevor Sie das tun, habe ich einige Kursmaterialien für Sie beigefügt. Ich habe Ihnen einige UI-Designs gegeben. Sie können hier zum UI-Ordner wechseln. Ich habe dir Schaltflächen, Symbole und Bilder gegeben. Wenn Sie hier direkt vor dem Hauptmenü auf Ihren Ordner klicken , gehen Sie nicht in den Hauptmenüordner hier draußen, Sie können einen Ordner namens Buttons erstellen. Auch hier können Sie mit der rechten Maustaste klicken einen neuen Ordner mit dem Namen Buttons und auch Bilder erstellen. Im Moment werden wir keine Symbole verwenden, sondern nur Schaltflächen und Bilder, und diese Ordner werden in den Button-Ordner verschoben. Gehen Sie jetzt in diesen Button-Ordner. Jetzt habe ich es bereits importiert, das ist aus meinem Kurs. Aber was Sie tun können, wählen Sie den ersten aus, halten Sie die Umschalttaste gedrückt und wählen Sie den letzten aus. Sie wählen also alle aus, und dann können Sie sie anklicken und hierher ziehen Dadurch werden sie importiert. Nun, sehr wichtig, wenn Sie es in einer SIP-Datei haben, müssen Sie es zuerst extrahieren, zum Beispiel wieder auf Ihre Downloads oder Ihren Desktop. Und dann kannst du sie hierher ziehen. Tun Sie es niemals innerhalb eines SIP-Ordners, da Sie dort dieses Symbol sehen und Sie es nicht tun können. Denken Sie daran, sie zuerst zu extrahieren und dann hierher zu ziehen. Machen Sie dasselbe mit den Bildern, sammeln Sie alles und ziehen Sie es in den Bilderordner. Und das habe ich schon getan, also habe ich das alles. Lass uns weitermachen und entwerfen. Gehen wir zum Hauptmenüordner. Klicken wir mit der rechten Maustaste auf die Benutzeroberfläche und erstellen Sie hier einen Widget-Blueprint. Nennen wir es Hauptmenü. Gehen wir in das Hauptmenü Widgets. Nun, hier drinnen, bevor wir etwas tun, beginnen wir immer mit einem Canvas-Panel. Wenn wir ein Menü in Unreal Engine entwerfen, ziehen wir es nach unten in die Hierarchie, und Sie fügen ein Canvas-Panel Okay, also bevor wir hier anfangen die Bildschirmgröße sehr wichtig Klicken Sie hier, gehen Sie zu Laptops und stellen Sie es auf einen, auf einen generischen Laptop ein. Das ist wichtig , weil wir diese Benutzeroberfläche jetzt so eingerichtet haben , dass sie für einen Laptop konzipiert ist. Auf diese Weise stellen wir sicher, dass die Benutzeroberfläche nicht zu klein oder zu groß für den Laptop ist . Und wir können es auf großen Monitoren entsprechend vergrößern. Jetzt verwende ich einen Vier-K-Monitor. Es wird gut aussehen, wenn ich es für einen Laptop entworfen habe. Und dann skaliere ich es auf meinen Monitor. Wir skalieren es, wenn Sie hier unten auf diese kleine Schaltfläche klicken und dann hier drinnen können Sie sehen, wie die Benutzeroberfläche skaliert wird. Im Moment habe ich einen Vier-K-Monitor. Wenn ich also die Maus darüber halte, wird angezeigt, dass meine Benutzeroberfläche um das 1,6-fache skaliert wird . Du könntest mehr sein. Denn wenn du hier drüben auf das Bild auf der rechten Seite klickst, wird in deinem wahrscheinlich standardmäßig acht stehen. Dann kannst du sehen, ob es acht ist. Wenn ich auf diese beiden klicke, um sie an den Bildschirm anzupassen , sind es acht. Es wird etwa das 3,8-fache dessen, was ich entworfen habe, skalieren . Aber als ich damit gespielt habe, als ich mein Spiel gemacht habe, war das 3,8-fache meiner Meinung nach zu viel. Es hat meine Benutzeroberfläche skaliert und es war auf meinem 4-K-Bildschirm sehr groß, das war zu viel. Ich würde es gerne auf 2,5 in der Skala setzen Dann. Lassen Sie uns einfach von hier aus weitermachen. Jetzt kann ich sehen, dass es um das 1,6-fache skaliert wird. Lassen Sie uns das jetzt schließen. Und jetzt skaliert es richtig. Um das Hauptmenü zu gestalten, möchte ich, dass Sie so etwas erstellen. Wenn ich es öffne, möchte ich dir zeigen, was wir versuchen zu tun, damit es klar ist. Wir versuchen das mit drei Knöpfen in der Mitte und dem Namen hier oben zu machen. Fangen wir mit diesem an. Sie können sehen, dass die Schaltflächen vertikal ausgerichtet sind. Wir brauchen eine sogenannte vertikale Box. Suchen Sie nach einer vertikalen Box, und hier ist sie. Ziehe hierher. Und hier ist es. Sie fügen es hier hinzu, lassen Sie es uns in die Ansicht ziehen. Und ich habe gerade meine Benutzeroberfläche groß gemacht, sodass Sie sehen können, was ich hier mit der vertikalen Box mache Ziehe es hinein, um es jetzt in der Mitte auszurichten. Sie müssen den Ankerpunkt in die Mitte des Bildschirms ändern . Wenn Sie dann 00 in die Position y und x und y schreiben, können Sie sehen, dass es an der oberen linken Ecke ausgerichtet ist Das liegt daran, dass du jetzt mit der Ausrichtung spielen musst. Sie können sehen, wenn Sie mit der Maus klicken und sie ziehen, ist dies 0,5. Wenn sie in der Mitte im X ausgerichtet ist und eins, wenn sie sich an der rechten Seite ausrichtet , möchten wir, ist dies 0,5. Wenn sie in der Mitte im X ausgerichtet ist und eins, wenn sie sich an der rechten Seite ausrichtet, möchten wir, dass sie in der Mitte 0,5 ist. Wenn Sie möchten, dass sie in der Mitte 0,5 ist, geht sie 0 bis 1 und es ist 0,5, wenn Sie sie in der Mitte haben wollen, 0,5 mal 0,5 und die Position in X und Y ist 0,0. Jetzt ist sie in der Mitte. Wenn Sie nun eine Schaltfläche mit Text hinzufügen möchten, müssen Sie ein Overlay hinzufügen. einem Overlay können Sie den Text auf der Schaltfläche überlagern Wenn Sie nach einer Schaltfläche suchen, ziehen Sie sie in das Overlay Anschließend können Sie nach Text suchen Dann können Sie diese auch über das Overlay ziehen. Jetzt haben Sie den Text auf der Schaltfläche überlagert. Sie haben es in umgekehrter Reihenfolge. Sie können es jederzeit anklicken und übereinander ziehen. Und jetzt können Sie sehen, dass sich der Text hinter der Schaltfläche befindet. Sie können auf die Schaltfläche klicken und sie darüber platzieren. Nun zur Schaltfläche, ich möchte, dass sie den gesamten Raum hier ausfüllt. Ich möchte, dass es sowohl horizontal als auch vertikal gefüllt wird. Jetzt füllt es das gesamte Overlay aus. Nehmen wir an, Sie möchten, dass es das Ganze ausfüllt. Sie können sehen, dass dies das vertikale Feld ist. Dies ist die Größe und das Overlay, das Sie damit füllen möchten Die ganze vertikale Box. Sie können auf das Overlay und dann auf Füllen klicken. Hier drüben füllt der Button das Ganze aus. Lassen Sie uns das vorerst nur für den Button tun. Ich möchte darauf klicken und es in der Mitte der Schaltfläche horizontal und vertikal ausrichten . Jetzt ist die Schaltfläche zu groß für das vertikale Feld. Ich werde darauf klicken und die Größe vorerst so ändern, dass es ungefähr so aussieht In Ordnung, lassen Sie uns zuerst den Button entwerfen. Wenn ich auf den Button klicke, kann ich hier zum Stil wechseln. Ich kann hier den normalen Stil für die Bilder ändern. Denken Sie daran, dass wir viele Schaltflächen und Bilder importiert haben. Nun zu den Schaltflächen, Sie können entweder hier nach oben klicken und die Schaltfläche suchen und sehen, welche Sie verwenden möchten. Sie können hier unten zu Ihrem Ordner gehen, sehen, welchen Sie verwenden möchten, und dann können Sie ihn anklicken und hierher ziehen. Das ist genau das, was ich vorerst tun werde. Ich möchte diese quadratische blaue Schaltfläche verwenden, ich werde sie anklicken und sie hierher ziehen. Jetzt sieht es ein bisschen komisch aus. Das liegt daran, dass, wenn Sie hier tatsächlich auf das Quadrat doppelklicken, das habe ich in Photoshop entworfen. Es ist ein sehr kleiner Button. Sie fragen sich vielleicht, wie das hier ein großer Knopf sein soll? Das liegt daran, dass der Motor wirklich clever ist. Es braucht die Kurven, dann werden die Mittelteile hier länger und länger. Du kannst es tatsächlich zu einem Button machen. Man macht das in den Schubladen, man muss es stattdessen von einer abgerundeten Kiste zur anderen wechseln . Dann beträgt die Marge 0,5 , was hier das Maximum ist. Wenn du das tust, kannst du sehen, dass es nur die Ecken nimmt und dann die Mitte verlängert Es sieht also aus wie ein langer Knopf. Nun zur Farbe, sie ist ein bisschen anders, weil der Farbton grau ist Wenn Sie darauf klicken und den Farbton so weiß machen, hat er keinen Klicken Sie auf Okay, hier haben Sie jetzt den Button, um ihn ein bisschen größer zu machen Denken Sie auch hier daran, dass Sie, da Sie auf das Overlay und dann auf Füllen klicken, auf das vertikale Feld klicken und die Größe der Schaltfläche nach Ihren Wünschen ändern können Größe der Schaltfläche nach Ihren Wünschen ändern können Lassen Sie uns also hier weitermachen. Wenn du auf die Schaltfläche klickst, musst du auch den Status gedrückt halten und den Mauszeiger bewegen, aber um es dir einfacher zu machen, kannst du mit der rechten Maustaste klicken und den normalen Zustand kopieren Sie können mit der rechten Maustaste darauf klicken und es oben auf dem Hort einfügen. Was du auch machen kannst, ist eine Abkürzung. Wenn Sie die Umschalttaste gedrückt halten, können Sie auch die Tastenkombination sehen. Wenn du hier mit der rechten Maustaste klickst, heißt es Kopieren Shift gedrückt halten und die rechte Maustaste drücken. Drücken Sie die rechte Maustaste und dann die Umschalttaste nach links, die Umschalttaste und die linke Maustaste. So fügen Sie es ein. Nun zu dem Hort und dem Gepressten Ich möchte das Bild ändern, das Gedrückte Jetzt haben Sie den Status „Normal“, „Hover und „Gedrückt“. Okay, das war es Lassen Sie uns jetzt alles kompilieren und speichern . Mal sehen, ob wir etwas tun müssen. Auf den Text klicken. Lassen Sie uns jetzt den Text ändern. Wir laden diese Rubrik für den Text herunter, ich werde sie halbfett formatieren, vielleicht wegen der Größe Ich denke, 24 ist zu groß. Lass es mich auf etwa 18 ändern. Lassen Sie mich das kurz skizzieren. Wenn ich hier in den vorderen Gliederungseinstellungen auf die Gliederungseinstellungen klicke den vorderen Gliederungseinstellungen , setze ich die Gliederung auf zwei. Nun zur Farbe, ich klicke, damit ich sehen kann, die Konturfarbe hier unten ist. also auf die Farbe klicke, zoome ich heran, nehme ich diesen Farbwähler und wähle die dunkelste Farbe auf der Schaltfläche aus, sie hat so einen passenden Umriss Ich werde Ihnen zeigen, wie Sie der Kontur einen coolen Effekt verleihen können Kontur einen coolen Effekt verleihen Und das kannst du tun, indem du auch Schatten hinzufügst. Ich werde diese Farbe kopieren. Umschalt-Rechtsklick und dann Umschalt-Linksklick . Klicken Sie hier, um es in die Schattenfarbe einzufügen. Für die Schattenfarbe schreibe ich Null Shadow of Set in das X und zwei in das Y. Das ergibt einen ähnlichen Umfragehintergrund und es sieht so aus, als ob der Text von der Schaltfläche entfernt wurde , was meiner Meinung nach cool aussieht. Jetzt müssen wir es etwas nach oben drücken , weil es so aussieht, als ob es nicht in der Mitte der Schaltfläche ist. Wenn Sie hier klicken, gehen Sie in der Polsterung nach oben Beim Padding können Sie den Text übrigens nach links und rechts, nach oben und unten verschieben Text übrigens nach links und rechts, nach oben und Jetzt schiebe ich es von unten oder setze es auf vier, ungefähr so Ich denke, jetzt sieht es aus wie in der Mitte. Manchmal deaktiviere ich gerne die gestrichelten Linien, damit wir sehen können, wie es aussieht oben auf die gestrichelten Linien klicken Ich würde es gerne sehen. Ohne Strichlinien kann man sehen, wie es aussieht. Ich finde, das sieht toll aus. Was wir tun können, ist auf diesen Text zu klicken. Wir können es einfach Create Sera nennen. Dies ist der erste Button, den wir erstellen werden . Es ist Create Sera Was wir tun können, ist auf dieses Overlay zu klicken. Wir können auf Steuerung D klicken, um Steuerung D erneut zu duplizieren und ein anderes zu duplizieren . Lass es uns größer machen. Klicken wir auf das vertikale Feld, um es zu vergrößern. Ich muss etwas Platz zwischen den Tasten lassen. Lass uns das machen. Lass uns auf Overlay Hold Control klicken Und klicken Sie hier auf alle Overlays. Also haben wir sie alle ausgewählt. Wir können die Änderungen sofort vornehmen. Wir müssen es nicht immer wieder machen. Auch hier ist der Abstand in der Polsterung, genau das, was wir mit dem Text hier gemacht haben Geben wir es nach oben. Geben wir sechs in der Polsterung nach unten. Geben wir auch bei der Polsterung sechs. Hier drinnen ist ein bisschen Platz. Lassen Sie uns diese Größe jetzt etwas besser machen. auf das vertikale Kästchen klicke, werde ich es auf etwas Ähnliches umstellen. Was auch immer Sie sich wünschen, versuchen Sie es nach Ihren Wünschen zu machen. Hier gibt es nicht wirklich eine Regel. Und dann klicken Sie auf das vertikale Feld, und dann können Sie auch diese Richtung rezitieren Ich finde so etwas cool, dass wir jetzt auf das vertikale Feld klicken können Auch hier müssen die Positionen x und y Null sein, damit sie genau so zentriert werden können. Lassen Sie uns nun die Farbe dieser Schaltflächen ändern. Um das zuerst zu tun, ändern wir einfach den Text so, dass er „Gemeinsamer Server“ sagt, letzten Text „Beenden“. Jetzt können Sie es natürlich in derselben Farbe haben, aber ich werde Ihnen nur zeigen, wie Sie auch die Farben ändern können. Ich werde das hier ein wenig minimieren . In den Schaltflächen wähle ich wieder das Violette. Wenn ich jetzt auf diesen gemeinsamen Server-Button klicke, wenn ich auf den normalen Button klicke, komme ich hier rein. Und jetzt hast du die Farbe geändert. Denken Sie daran, das auch zu tun, wenn Sie den Mauszeiger bewegen und gedrückt Ich werde also die Umschalttaste gedrückt halten dann die linke Umschalttaste auf diese klicken Denken Sie daran, den Zustand, in dem sich der Mauszeiger befindet, und den Zustand , in dem der Mauszeiger gedrückt Für die letzte Option verwende ich die rote Taste, kopiere sie und füge sie in die anderen ändere sie in den Status Hover und in den Status Jetzt haben wir das. Lassen Sie uns auch die Gliederung ändern. Klicken Sie hier, klicken Sie auf die Konturfarbe, klicken Sie auf Farbwähler und wählen Sie die dunkelste Ich werde auf Zurück klicken, die Umschalttaste gedrückt halten, mit der rechten Maustaste klicken, die Umschalttaste gedrückt halten und mit der linken Maustaste klicken, um es einzufügen Und mache das Gleiche hier unten, klicke hier, färbe, wähle die dunkle Farbe. Und dann drücke ich die Umschalttaste mit der rechten Maustaste, Umschalt-Linksklick, um es einzufügen. Das Letzte, was wir tun müssen, ist den Namen hier oben hinzuzufügen, weil ich Willkommen sagen wollte und dann deinen Namen. Lass uns das jetzt machen. Um es hier oben zu machen, müssen wir es nicht wirklich in das vertikale Feld einfügen. Es ist ein eigenständiges Element. Hier oben möchte ich ein Bild oder einen Text über einen Hintergrund legen, einen Text über einem Bild Zuerst brauchen wir ein Overlay. Kann es in das Canvas-Panel ziehen. Mal sehen, wo es ist. Es ist hier oben. Normalerweise hier oben. Wenn wir es hinzufügen, fügen wir dem Overlay ein Bild hinzu. Und dann fügen wir etwas Text hinzu. Anstatt einen Text von hier hinzuzufügen, kann ich einfach einen von ihnen kopieren, damit wir ihn nicht erneut entwerfen müssen. Ich werde es oben auf das Overlay einfügen. Nun zum Bild, ich wollte das Ganze füllen Füllen Sie es horizontal und vertikal bis zu diesem Overlay. Lass uns auf dieses Overlay klicken. Lassen Sie uns den Ankerpunkt so ändern, dass er sich in der oberen Mitte befindet. Nochmals, wenn du 00 auf X und Y schreibst, kannst du sehen, dass es in diese Ecke geht. Du musst also wieder mit der Ausrichtung spielen. Und hier ist es 0,5. Und lass uns jetzt auf das Bild klicken. Lass uns den Pinsel des Bildes ändern, das Bild selbst. Jetzt gehe ich zu Bildern. Und ich werde dieses Panel einfach importieren, grau klicken und es wieder hierher ziehen, genau wie zuvor. Lass es uns in eine Box umwandeln. Lassen Sie uns den Rand auf 0,5 ändern Lassen Sie uns nun auf den Text klicken. Für den Text klicke ich hier. Nimm die Farbe, wähle, wähle diese Farbe aus. Lass mich einfach auf die Farbe klicken und daraus etwas Ähnliches machen. spiele ein bisschen damit herum und denke, ich werde diese Farbe hier verwenden. Sie können es kopieren, wenn Sie möchten. Ich werde das hier auch in die Schattenfarbe kopieren . Und dann lass uns jetzt rauszoomen. Lassen Sie mich einfach etwas Abstand vom Leinwand-Panel lassen , weil Sie sehen können, dass es sich hier über dem Rand befindet. Ich klicke auf das Overlay und habe ihm hier im Y Platz gegeben , nur etwas Platz Ich glaube, ich schreibe hier so etwas wie 40 auf den Rand. auf das Overlay klicken, können Sie es wieder an Ihre Wünsche anpassen, ebenso wie an den Text Ich denke, es ist zu viel auf der Oberseite denn denken Sie daran, dass wir bei den Knöpfen eine Polsterung hinzugefügt haben. Klicke darauf Ich werde so etwas wie zwei sagen. Es könnte ein bisschen Geld sein, weil Sie sehen können, ob ich tatsächlich einen langen Namen schreibe, Sie können sehen, dass er so geschrieben wird. Lass es uns tatsächlich reparieren auf den Text klicke, werde ich ihn in der Begründung mittig zentrieren. Ich klicke auch auf dieses Bild oder tatsächlich auf den Ovallay Ich werde auf Größe zum Inhalt klicken. Es hat sich herausgestellt, dass es so aussieht. Anstatt ihnen hier in der Bildgröße eine Größe zu geben, was wir tun können, da wir sie an den Inhalt anpassen, können wir hier im Padding auf den Text klicken Wenn du es genug nach links klopfst , kannst du ihm etwas Platz geben Wenn du es zum Beispiel auch mit etwa 50 nach rechts klopfst , kannst du ihm etwas Platz nach links und rechts geben. Das Gleiche gilt für die Oberseite und das Gleiche auch für die Unterseite. Selbst wenn Sie einen langen Text schreiben oder etwas mehr hineinpassen, können Sie sehen, dass er sich an die Größe des Textes Wir kriegen es nicht hin, nach links und rechts auszuweichen. Ich werde stattdessen 40 schreiben , ich denke, das ist zu viel Bei 50 für diesen schreibe ich hier 22 nach oben und 21 nach unten. Ich finde, das sieht toll aus. So sieht es aus und was es aussagen könnte. Zum Beispiel hallo rein. Jetzt programmieren wir das, weil dieser Name hier zum Beispiel angezeigt wird, je nachdem, wie der Name auf Steam lautet. Für diesen werde ich einfach Hallo sagen, Steam. Und wir können es später ändern und sehen, was darin steht. Gehen wir raus und kompilieren und speichern wir alles. Und jetzt sind wir mit der Benutzeroberfläche fertig. Fast das Letzte, was ich Ihnen sagen möchte , ist, wenn Sie hier auf den Text klicken und dann zu Sichtbarkeit gehen, um zu sehen, was es gerade ist , wenn Sie versuchen, auf die Schaltfläche hier zu klicken, blockiert der Text Ihre Maus und Sie können die Schaltfläche nicht anklicken. Das will ich nicht. Lass uns diesen Text auswählen. Halten Sie die Steuerung gedrückt. Klicken Sie auch auf die anderen Texte, alle für die Sichtbarkeit. Ändern Sie es so, dass es nicht auf Testbar steht. Das bedeutet, dass die Maus den Text ignorieren wird. Und Sie können tatsächlich die Schaltfläche über diesem Text und auch auf die Schaltfläche über diesem Text klicken Das ist das, was wir wollen. Okay, das war es. Mach weiter und kompiliere und speichere alles. Und jetzt lassen Sie uns es schließen und weitermachen. 13. 2.04 UI-Animation des Spielernamens: Lassen Sie uns jetzt weitermachen und mit Animationen arbeiten. Wenn du das, was mir ein neues gemacht hat, wieder hier öffnest , wieder hier , möchte ich diesen Namensteil animieren Wo ich möchte, dass diese Benutzeroberfläche langsam nach unten und oben bewegt wird, ist es das Overlay , das wir animieren müssen Wo wir das hier in der Position Y sehen können . Ich wollte so etwas hier machen, und wir müssen Ich werde es hier in Y wieder auf 40 setzen. Öffnen wir den Animations-Tab Und du kannst es hier unten machen. Wenn du darauf klickst, klicke ich auf Layout, sodass ich es hier ständig sehen kann. Ich werde für die Animation auf das Plus klicken. Nennen wir es Spielername. Lass uns darauf klicken. Jetzt musst du auf das Overlay klicken Lass mich es einfach umbenennen, damit du es sehen kannst. Ich werde es in V für Overlay umbenennen und es Spielername nennen Und mach weiter und kompiliere jetzt dafür hier, klicke auf das Overlay Für den Spielernamen klicken Sie hier auf den Titel und dann können Sie ihn sehen, wann immer Sie ihn hier ausgewählt haben. Klicken Sie darauf, klicken Sie auf das Plus und wählen Sie dann Transformieren Bei der Transformation können Sie im Grunde die Position, die Drehung, den Maßstab usw. bearbeiten . Und wir wollen die Übersetzung bearbeiten, ihre Position in X und Y, okay, hier in der Grafik, sagen wir es mal, das sind Sekunden. Wenn ich es hier zum Beispiel für 1,5 Sekunden setze , kann ich hier damit spielen, es vielleicht nach unten ziehen. Ich denke, 15 sind genug. Sie können jetzt auf Null sehen, dass es so ist. Wenn du es auf 1,5 Sekunden ziehst, wird es hier unten sein. Ich will, dass es wieder hochgeht. Nach 1,5 Sekunden möchte ich, dass es wieder Null ist. Wenn ich jetzt auf Space View klicke, die Animation, hier ist sie. Wenn ich erneut auf Space klicke, kannst du sie dir erneut ansehen. Wir lassen es einfach in eine Endlosschleife laufen. Du brauchst nur einen Frame wie diesen und wir lassen ihn für immer in einer Endlosschleife laufen. Okay? Wenn Sie keine flüssige Animation haben möchten, können Sie jederzeit hierher kommen, alles mit der rechten Maustaste auswählen und es linear gestalten. Wenn Sie das tun, werden die Punkte hier nicht geglättet. Es bewegt sich linear wie folgt. Sie sehen, es glättet sich nicht , wenn es auf und ab geht. Wenn Sie glatt sein möchten, klicken Sie mit der rechten Maustaste und wählen Sie kubisches Auto. Das Ergebnis wird geglättet und ist Ich mache einfach weiter und wir sind eigentlich fertig. Wenn ich zur Grafik gehe, hier ist jetzt die Codierung. Lass uns diesen löschen und diesen löschen. Lass uns alles löschen, ich kann dir zeigen, wie man es macht. Wenn du mit der rechten Maustaste hier in die Grafik klickst und nach Construct suchst. Event Construct ist einfach das, was passieren sollte, wenn ich hier oben auf Play klicke. Wenn ich das mache, ist das ein Ereignis im Blueprint und Sie benötigen Ereignisse, um Code auszuführen Lass uns die Animation abspielen. Sie können die Animation hier sehen. Name des Spielers, den wir erstellt haben klicken und ihn hierher ziehen. Ziehe jetzt von hier und spiele mit der rechten Maustaste. Und Sie können diese Funktion namens Lay Animation Select hier angeschlossen sehen . Nun die Anzahl der Schleifen, ich werde sie auf Null setzen und das bedeutet, dass sie unendlich oft q wiederholt und dann kompiliert. Anstatt auf Als eigenständiges Spiel spielen zu klicken, wähle ich „ Neues Editorfenster anzeigen“ , weil es sich hier viel schneller öffnen lässt. Wir können die Benutzeroberfläche natürlich noch nicht sehen, aber die Animation funktioniert. Ich kann Ihnen sagen, dass Sie es jedoch noch nicht sehen können, weil wir die Benutzeroberfläche, das Hauptmenü, nicht zum Bildschirm hinzugefügt haben, weshalb wir es nicht sehen können. Und daran werden wir in den nächsten Lektionen arbeiten . Lassen Sie uns tatsächlich weitermachen und das tun. 14. 2.05 Erstellen der Enumeration: Zunächst möchte ich, dass Sie etwas erstellen, das als Aufzählung bezeichnet wird Wir können das später verwenden, um zu programmieren wie wir die Benutzeroberfläche im Viewboard anzeigen oder anzeigen Gehen wir hier zu den Bauplänen . Ich möchte, dass du mit der rechten Maustaste klickst und einen neuen Ordner namens Enums Ich habe bereits einen aus der Programmierung des Kurses in diesem Ordner Achte nicht auf all das. Wir brauchen es nicht wirklich für diesen Kurs. Klicken wir mit der rechten Maustaste auf Neue Blueprint-Aufzählung erstellen . Fahren Sie fort und wählen Sie eine aus. Nennen wir es, ich nenne es so etwas wie Hauptmenü-Widgets. Was für eine Aufzählung ist. Wenn Sie sie öffnen, ist es im Grunde nur eine Liste von Elementen, die Sie der Liste hinzufügen können, indem Sie hier nach oben klicken Und du kannst hinzufügen, was du willst. Wenn ich ein paar Mal klicke und zum Beispiel Elemente hinzufüge , kann es eine Liste mit allem sein. Aufzählungen sind nur Listen. Es kann eine Liste mit Lebensmitteln, eine Liste von Punktetypen in Ihrem Spiel oder eine Liste von Waffentypen Liste In diesem Fall verwenden wir es für eine Liste der Widgets, die Sie in Ihrem Hauptmenü haben. Zum Beispiel das Hauptmenü selbst. Und dann habe ich das Create Sera-Menü. Und dann habe ich den Serva-Browser in dem ich die Server sehen kann Ich glaube nicht, dass wir mehr haben, aber wenn du ein größeres Spiel hast, hast du das Einstellungsmenü, du hast das Geld Also, wenn Sie Mikrotransaktionen, Geldgeschäfte und so weiter haben. Aber das haben wir momentan nicht wirklich. Ich habe nur das Hauptmenü, Server erstellen und Serva-Browser Speichern wir diese Liste hier. Jetzt ist sie fertig. Du kannst dir auch die anderen aus meinem Spiel ansehen. Zum Beispiel den Waffentyp Ich habe Waffentypen unbewaffnete Pistole und Gewehr Auch hier kann es eine Liste von allem sein, was Ihnen einfällt. Die Aufzählung ist im Grunde nur eine Liste von Bewegungsstaaten. Hier habe ich zum Beispiel eine Liste meiner Bewegungszustände im Spiel Ich kann rennen, gehen und ducken und so weiter. Und in diesem Fall versuchen wir hier auch, mein Spiel Widgets zu machen auch, mein Spiel Widgets In meinem Spiel habe ich die Haupt-Benutzeroberfläche, die Benutzeroberfläche für die Teamauswahl, mein Kreuz. In unserem Fall verwenden wir es für das Hauptmenü. Wir haben das Hauptmenü Create Server und den Serverbrowser. Jetzt, wo wir das fertig haben, wir es in den nächsten Lektionen verwenden. 15. 2.06 Widget-Funktion anzeigen und ausblenden: Okay, dieser wird etwas komplexer sein, aber ich werde Ihnen die beste Methode zeigen, um die Benutzeroberfläche innerhalb einer aber ich werde Ihnen die beste Methode zeigen, um die anfälligen Engine ein- und auszublenden, damit Sie sie in Ihrem gesamten Projekt verwenden können Auch hier wird es etwas komplexer sein, es zu verstehen, wenn Sie völlig neu sind Aber pass einfach auf. Versuche es dir hier anzusehen und ich bin mir sicher, dass du es auch lernen kannst. Gehen wir zu den Bauplänen. Gehen wir jetzt zum Hauptmenüordner hier drinnen. Denken Sie daran, dass wir den Modus, den Play-Controller früher erstellt haben und normalerweise für die Benutzeroberfläche, die wir innerhalb des Player-Controllers erstellt haben . Aus diesem Grund haben wir ihn erstellt. Lass uns den Player-Controller öffnen. Und hier öffnen wir den vollständigen Blueprint-Editor im Player-Controller Lassen Sie uns einfach alles im Diagramm und im Ereignisdiagramm löschen im Diagramm und im Ereignisdiagramm Lass uns jetzt anfangen. Ich möchte, dass du ein neues benutzerdefiniertes Ereignis mit dem Namen Widgets einblenden, ausblenden schreibst, anklickst und erstellst ein neues benutzerdefiniertes Ereignis mit dem Namen Widgets einblenden, ausblenden schreibst, anklickst und . Dieses Ereignis wird unser Widget ein- und ausblenden. Jetzt brauchen wir das Widget hier in der Eingabe, ich werde eine Variable hinzufügen, und das ist die Aufzählung, die wir zuvor erstellt haben Wie ich es nun im Enums-Ordner genannt habe, habe ich es Hauptmenü-Widgets genannt Hier im Variablentyp können Sie nach Hauptmenü-Widgets suchen, wie auch immer Sie sie nennen, gehen und sie auswählen Ich nenne es einfach Widget. Im Grunde möchte ich dir zeigen, welche Funktion wir grundsätzlich verwenden wollen. Es ist besser, es von Anfang an zu verstehen. Lass uns hier mit der rechten Maustaste klicken und nach etwas suchen, das Create heißt. Widget ist die Funktion , die wir verwenden werden. Wenn du hier klickst und zum Beispiel das Hauptmenü-Widget auswählst, das wir erstellt haben. Wir versuchen, dieses Hauptmenü-Widget zu erstellen und es dem Bildschirm hinzuzufügen. Das ist einfach das, was wir jetzt versuchen. Wir machen das auf eine clevere Art und Weise, die dynamisch auf alle zukünftigen Benutzeroberflächen skaliert werden kann , die Sie erstellen Das ist eine sehr clevere Funktion hier unten, wir wollen das Widget ein- und ausblenden Fügen wir eine weitere Variable hinzu. Fügen wir ein Goldbarren hinzu, das ist nur die Variable, die entweder wahr oder falsch ist Hier, nennen wir es Show. Wenn du dieses Ereignis nennst, wenn ich mit Fug und Recht sagen kann, Widget einblenden. Und ich nenne dieses Ereignis hier. Hier kannst du sehen, wie es aussieht , wenn ich es woanders verwende. Jetzt kann ich überprüfen, welches Widget ich verwenden möchte, zum Beispiel das Create Serva Dann kann ich wählen, ob ich es zeigen möchte. Wenn nicht, möchte ich es schließen. Aus diesem Grund heißt es Widget einblenden. Ich zeige es, wenn ich hier ankreuze, und ich verstecke es, wenn ich hier nicht ankreuze. Jetzt können wir wählen, welchen wir beeinflussen wollen. Möchten Sie zum Beispiel das Hauptmenü anzeigen? Oder möchten Sie das Hauptmenü schließen? So verwenden wir es hier oben. Lass uns hier ausbrechen und uns verzweigen. Wenn Ho wahr ist, wollen wir etwas tun. Wenn how falsch ist, wollen wir etwas anderes tun. Ich möchte hier zwei Funktionen erstellen. Lass uns für diese Funktion auf das Plus klicken. Dies sind die benutzerdefinierten Funktionen, die wir erstellen werden. Die erste wird aufgerufen, ich schreibe sie gerne als Präfix für meine Funktionen. Nennen wir dieses eine Widget. Lassen Sie uns ein anderes namens Hide Widget erstellen. Gehen wir zurück zum Event-Graph und ziehen sie hier rein. Widget anzeigen und Widget ausblenden. Welches Widget werden wir nun zeigen? Dieses, das wir später einstecken , wenn wir die Funktion aufrufen. Wir benötigen hier jedoch eine Eingabe, damit wir erkennen können, dass es sich um dieses Widget hier handelt. Lass uns auf das erste Show-Widget klicken. Lassen Sie uns eine Eingabe hinzufügen. Lassen Sie uns diesen wieder zum Hauptmenü-Widget ändern. Das ist die Aufzählung. Wählen wir es aus und nennen es Widget. Das Gleiche gilt für das Widget zum Ausblenden. Welches Widget möchtest du verstecken? Es ist dieser. Ich klicke hier, mache eine Eingabe und nenne es dann Widget. Jetzt können wir darauf klicken und es in die von uns erstellten Eingaben ziehen . Jetzt geht es hier rein und wir können etwas damit machen. Das ist im Grunde der Flow. Der Flow befindet sich irgendwo im Code, wo wir das Widget ein - oder ausblenden können. Nehmen wir zum Beispiel an, wir möchten später, dass das Hauptmenü ausgeblendet wird. Wir können schreiben, klicken und sagen „Widget einblenden“. Du kannst diese Veranstaltung hier aufrufen. Dann können wir für das Hauptmenü sagen, ich möchte Hallo sagen. So sieht es aus, weil ich das nicht angekreuzt habe Es wird sagen, dass das falsch ist. Wenn es falsch ist, wird das Widget ausgeblendet. Über welches Widget sprechen wir? Wir sprechen über das Hauptmenü. Weil du es so gesagt hast, das Hauptmenü wird hier durchgehen. Ich werde hier durchgehen, innerhalb dieser Funktion. Und jetzt können wir hier etwas Code für das Show-Widget eingeben. Ich möchte hier eine Pause einlegen und sagen, Enumeration einschalten. Was für ein Schalter die Aufzählung ist, Sie können etwas tun, je nachdem , welche Auswahl Sie innerhalb dieser Aufzählung getroffen haben Wenn Sie zum Beispiel hier das Hauptmenü auswählen, befindet es sich im Show-Widget Spielen Sie den Code für das Hauptmenü und es wird sie alle hier unten ignorieren. Nehmen wir an, für das Hauptmenü habe ich hier das Richtige angekreuzt. Das heißt, ich möchte das Hauptmenü anzeigen. Wir müssen wieder, dieses Widget verwenden. Das versuchen wir zu verwenden. Lass es uns hier oben löschen. Gehen wir zum Show-Widget. Und hier für das Hauptmenü kann ich per Drag&Drop Widget erstellen sagen. Lass es uns auswählen. Welches Widget möchte ich erstellen? Das Hauptmenü haben wir erstellt, dann kann ich einfach mit der rechten Maustaste darauf klicken und es zu einer Variablen heraufstufen. Also kann ich es hier speichern und es Hauptmenü nennen. Obwohl wir die Variable erstellt haben, sie immer noch nicht auf dem Bildschirm angezeigt. Das liegt daran, dass wir von hier aus ziehen und „Zum Viewport hinzufügen“ sagen müssen Wir werden es zum Viewport hinzufügen, und jetzt sollte es funktionieren Wenn ich kompiliere und auf Play klicke, kannst du sehen, dass es immer noch nicht funktioniert Das liegt daran, dass, wenn Sie laut Blueprint bereits wissen, dass wir dieses Ereignis aufrufen müssen, es nicht von alleine ablaufen wird Die Engine weiß nicht, dass Sie dieses Event durchführen möchten. Was wir tun werden, ist das Event oder sogar das Konstruieren. Jetzt sind wir im Play-Controller. Es heißt das Event spielen. Dies ist ein Ereignis, das sagt, was passieren sollte. Wenn ich anfange, das Spiel zu spielen, möchte ich den Hauptmenü-Drachen von hier aus einblenden und hier das Ereignis „Widget einblenden“ aufrufen. Und ich werde das Hauptmenü wählen. Und ich möchte das Hauptmenü anzeigen. Was es tun wird, ist, dass es hier durchgehen wird. Das Widget ist im Hauptmenü, es wird hier eingefügt und es ist so eingestellt , dass es „Wahr“ anzeigt. Es wird das Widget zeigen, die Auswahl hier war das Hauptmenü. Es wird all das erstellen und zum Viewport hinzufügen Wenn Sie jetzt auf Abspielen klicken, können Sie sehen, dass es dem Viewport hinzugefügt wurde Sie können auch sehen, dass die Animation für den Namen funktioniert und alles gut aussieht Sie können mit der Maus über die Schaltflächen fahren, Sie können sie anklicken, um zu sehen, ob Sie es richtig gemacht haben, und alles ist nett Das war deine erste Benutzeroberfläche, die du hinzugefügt hast. Und wirklich nett, du hast viel erreicht, denn das war eigentlich der schwierige Teil. Jetzt ist der letzte Teil Widget ausblenden. Lassen Sie uns von hier aus noch einmal darauf eingehen und sagen, Enumeration einschalten Immer wenn wir hier ausblenden statt Anzeigen wählen, dann möchte ich beim Ausblenden diese Variable, die ich für das Hauptmenü erstellt habe Ich klicke mit der rechten Maustaste und wandle das in ein validiertes GET um. Damit stellen wir sicher , dass diese Variable gültig ist, bevor wir etwas tun, bevor wir sie vom Bildschirm entfernen. Weil es keinen Sinn macht, dies vom Bildschirm zu entfernen , wenn es nicht gültig ist. Weil das nicht der Fall ist, nehmen wir das und sagen „Aus dem Elternteil entfernen“. So entfernen wir es aus dem Viewport. Wann immer diese Variable gültig ist, möchten wir sie vom Bildschirm entfernen Wir wollen dasselbe auch im Show-Widget tun, anstatt es ständig zu erstellen. Das wird ein Fehler sein, denn jedes Mal, wenn ich zum Erstellungsserver gehe und zum Hauptmenü zurückkehre, wird das Hauptmenü tatsächlich erneut erstellt. Und ich möchte das nicht die ganze Zeit machen. Ich nehme diese Variable, die ich hier erstellt habe. Ich werde klicken und das ein validiertes GET umwandeln. Dann werde ich es hier verbinden. Wenn es gültig ist, möchte ich es nicht erstellen. Wenn es nicht gültig ist, möchte ich dieses Widget erstellen , da es noch nicht erstellt wurde. Wenn es gültig ist, möchte ich es nur zum Viewport hinzufügen. Das ist viel besser zu tun. Wir prüfen, ob das gültig ist. Ist dies nicht der Fall, erstellen Sie es und fügen Sie es dann dem Viewport hinzu Wenn es bereits gültig ist, fahren Sie einfach fort und fügen Sie es dem Viewport Lassen Sie uns alles kompilieren und speichern, und jetzt sind wir mit dieser komplexen Funktion und diesem Ereignis fertig dieser komplexen Funktion und diesem Ereignis Jetzt werde ich es nur sehr, sehr schnell erklären. Wenn wir zum Beispiel Create Serva auswählen. Wenn wir Show wählen, werden wir hier Serva ausgewählt haben. Und es wird heißen, dass Show wahr ist. Also wird es diese Funktion hier oben spielen. Und wir wissen bereits, dass es sich bei der Auswahl um Gate Serva handelt. Es wird also den Code aus Create Serva abspielen und wir werden später dasselbe erstellen Sie können es selbst erstellen, wenn Sie möchten. Das ist eigentlich dieselbe Methode wie diese. Und denken Sie daran, es auch im Hyde hinzuzufügen, aber wir werden es in der späteren Lektion tun Lassen Sie uns vorerst kompilieren, alles speichern und weitermachen Jetzt wählen wir einfach wieder das Hauptmenü aus. Damit es abgespielt wird, können wir sicherstellen, dass alles funktioniert. Und lass uns mit der nächsten Lektion weitermachen. 16. 2.07 Blueprint-Kommunikation - Casting: In Ordnung, lassen Sie uns jetzt weitermachen. Lassen Sie uns die Benutzeroberfläche öffnen, mit der wir zuvor gearbeitet haben. Und es war die Benutzeroberfläche des Hauptmenüs hier drin. Gehen wir zur Grafik. Was ich jetzt tun möchte, ist, dass ich hier im Designer jedes Mal, wenn ich die Taste für Create Sera drücke, das Create Sera Widget öffnen möchte, um dies zu tun Zuerst, hier oben in der Schaltfläche, nennen wir sie zum Beispiel Button-Server, wir wissen, womit wir arbeiten Setzen wir es auf variabel. Wenn es hier in der Grafik nicht variabel ist, können Sie es nicht sehen und Sie können keinen Code damit machen . Wenn Sie es auf variabel setzen und zum Diagramm gehen, können Sie sehen, jetzt können Sie die Schaltfläche sehen. Sie können das Ereignis hier auf angeklickt anklicken. Was soll passieren , wenn du auf den Button klickst ? Das wollen wir. Wir wollen das Widget zeigen , das wir noch nicht erstellt haben, aber es ist vorerst nicht wirklich wichtig. Gehen wir zurück zur Grafik. Jetzt möchte ich mein Create Sera Widget zeigen. Denken Sie daran, dass wir gerade in der letzten Lektion den Player-Controller im Hauptmenü erstellt Wir haben dieses Widget zum Einblenden erstellt Ich muss diese Funktion hier verwenden, dieses Event hier. Ich muss es vom Hauptmenü aus aufrufen. Wenn ich auf die Schaltfläche Server erstellen drücke, möchte ich das Widget anzeigen. Jetzt befinden wir uns in einer sogenannten Blueprint-Kommunikation Weil jetzt der Blueprint hier, das Hauptmenü, mit dem Player-Controller kommuniziert, kommunizieren zwei Blueprints miteinander Dazu müssen wir etwas namens Casting des Player-Controllers verwenden Casting des Player-Controllers Was ich zuerst sagen muss, ist, dass ich Click schreiben und Get Player Controller sagen muss . Dann kann ich diese Funktion hier auswählen und dann von hier aus ziehen. Jetzt ist dies der Standard-Play-Controller in der Naral-Engine. Jetzt muss ich ihm sagen, dass ich speziell meinen benutzerdefinierten Play-Controller verwenden möchte , und das kostet Zwei heißt, zwei werfen und dann schreibe ich den Namen des Play-Controllers. PC-Hauptmenü. Dies ist der, den wir ihm jetzt im Grunde gesagt Holen Sie sich den Standard-Play-Controller, dann möchte ich speziell meinen benutzerdefinierten Play-Controller verwenden. Wenn wir jetzt hier von diesem Pin aus casten, kann ich alles verwenden, was sich im Play-Controller befindet. Wenn ich zum Beispiel eine neue Variable erstelle und sie Hallo nenne, nehmen wir an, es ist eine Variable vom Transformationstyp und ich kompiliere. Wenn ich jetzt hier reingehe und ziehe und Hallo sage. Jetzt kann ich diese Transformationsvariable sehen. Ich kann alles verwenden, was sich im Player-Controller befindet. Lassen Sie mich diese Variable vorerst einfach löschen. Ich kann dieses Widget zum Anzeigen und Ausblenden verwenden, das ich von hier ziehen und Widget anzeigen und ausblenden sagen kann . Und jetzt kann ich es verwenden, um den Erstellungsserver so anzuzeigen. Jetzt gibt es ein Problem mit dieser Methode. Die Besetzung, wenn Sie schon wissen, hatte das Casting Referenzen und Unreal Engine Und das bedeutet, dass Unreal Engine alle harten Referenzen laden muss alle harten Referenzen laden wenn sie das Spiel öffnet Und aus diesem Grund dauert es manchmal in Spielen, wenn es zum Beispiel Spielen, wenn es zum Beispiel in der Naral Engine erstellt wurde, sagen wir 10 Sekunden, 15 Sekunden, bis das Hauptmenü geöffnet ist 15 Sekunden, bis das Hauptmenü geöffnet Das liegt daran, dass es alle Hardreferenzen laden muss , bevor es das Hauptmenü laden kann Wir versuchen, Castings so weit wie möglich zu vermeiden. Es gibt Zeiten, in denen wir Casting verwenden müssen, aber oft können wir es vermeiden. Und in diesem Fall können wir es auch vermeiden. Wir können vermeiden, dass es sich um sogenannte Blueprint-Schnittstellen handelte sogenannte Blueprint-Schnittstellen Lassen Sie uns in der nächsten Lektion weitermachen und ansehen, was eine Blueprint-Schnittstelle 17. 2.08 Blueprint-Kommunikation - Schnittstellen: Um das Hosten zu vermeiden und die versteckte Referenzierung zu vermeiden, sollten wir zunächst eine Blueprint-Schnittstelle erstellen Lassen Sie uns das wieder im Blueprint-Ordner schließen, klicken wir mit der rechten Maustaste auf Neuen Ordner erstellen und nennen Ich habe es hier bereits zu einem Schnittstellenordner gemacht, weil ich es in meinem Counterstrike-Projekt verwendet es in meinem Counterstrike-Projekt habe und ich bereits ein paar davon erstellt Klicken wir mit der rechten Maustaste hier hinein und gehen wir zu Blueprint und erstellen ein Blueprint-Interface für dieses Ich nenne es einfach, nennen wir es , wie auch immer wir uns beziehen wollen. Wir versuchen, auf die Spielersteuerung zu verweisen , weil wir das Ereignis innerhalb des Player-Controllers verwenden wollen . Lassen Sie mich es einfach Hauptmenü-Controller nennen. Lassen Sie uns die Blueprint-Oberfläche öffnen. Die Funktion, die wir verwenden wollen. In einer Blueprint-Oberfläche können Sie jetzt nicht wirklich viel tun Sie können diese Funktion nicht verschieben, Sie können von hier aus nicht direkt weiterleiten, Sie können innerhalb von hier nichts tun Das Einzige, was Sie tun können, ist eine neue Funktion für die neue Funktion zu erstellen . Nehmen wir an, es steuert die Referenz. Das ist im Grunde das , was Sie versuchen zu tun. nun hier in der Ausgabe Lassen Sie uns nun hier in der Ausgabe weitermachen und eine Variable erstellen. Und der Variablentyp hier ist das , worauf Sie verweisen möchten. Ich versuche, auf den Player-Controller zu verweisen. Ich werde nach PC suchen. Für Player Controller habe ich es Main Menu Play Control genannt. In diesem C-Hauptmenü wählen Sie Objektreferenz. Mach weiter und nenne es hier. Lass uns kompilieren. Und jetzt sind wir hier drinnen fertig. Einfach. Lass es uns schließen. Gehen wir zurück zu den Bauplänen. Öffne den Hauptmenüordner und öffne den Player-Controller im Hauptmenü Jetzt müssen wir die Oberfläche hinzufügen, die wir gerade erstellt haben. Gehen wir zu den Klasseneinstellungen. Gehen wir zu den implementierten Schnittstellen. Lassen Sie mich nach dem Player-Controller für das Hauptmenü suchen , den ich gerade erstellt habe. Und mach weiter und füge es hinzu. Achten Sie jetzt darauf, wenn Sie es hinzufügen Hier wird eine neue Leiste angezeigt. Wenn ich es hinzufüge, können Sie sehen, dass diese Schnittstellenleiste angezeigt wird. Und ich kann die Player-Controller-Funktion öffnen. Das ist die Funktion, die wir gerade erstellt haben. Jetzt müssen Sie definieren, was diese Variable ist , die Sie erstellt haben. Was wir tun können, ist, mit der Maus zu ziehen und selbst zu sagen. Und fahren Sie fort und wählen Sie diese Selbstreferenz aus. Was das bedeutet, Spieler-Kontrollvariable , die Sie erstellt haben. Du musst es definieren. Denn wenn du Alt gedrückt hältst und hier klickst, um die Verbindung zu trennen. Wenn du es nicht definierst, gibt dir die ehrenwerte Engine einen Fehler und sie wird dir sagen, ich weiß nicht, was du mit dieser leeren Player-Controller-Variablen meinst dieser leeren Player-Controller-Variablen Der Grund, warum wir „Selbstreferenz“ gesagt haben , ist, dass „Selbst“ den Plan bedeutet in dem Sie sich gerade befinden Denken Sie daran, dass wir uns gerade im Hauptmenü des Player-Controllers Wir wollen damit sagen, dass diese Player-Controller-Variable unser Haupt-Player-Controller ist. Lass uns jetzt kompilieren. Ich werde dir das Ganze am Ende erklären. Lass uns einfach weitermachen. Was wir jetzt tun können, ist, dass wir das minimieren können. Gehen Sie zur Benutzeroberfläche, gehen Sie zurück zum Hauptmenü. Lassen Sie uns das Diagramm erneut öffnen. Anstatt zu casten, löschen wir das und holen uns jetzt den Play-Controller, genau wie zuvor. Anstatt zu sagen, dass es zwei kostet, können wir jetzt die Play-Controller-Referenz sagen. So haben wir es genannt. Jetzt dieser. Lass dich nicht verwirren. Das ist von der Counter-Strike-Karte des Hauptspiels. Das ist das, was wir geschaffen haben, die Menü-Controller-Schnittstelle Sie können auch sehen, dass es sich um eine Schnittstellenfunktion handelt, da am Ende Nachricht steht und Sie darauf klicken können. Und das ist es auch, was dieses Symbol bedeutet. Es bedeutet, dass es von einer Blueprint-Schnittstelle stammt. Und mach weiter und verbinde es hier. Und jetzt können wir es tatsächlich einfach hier verbinden. Oder wenn du es löschen und es erneut machen möchtest, kannst du von hier aus ziehen und „Widget anzeigen“ sagen, und du kannst rausgehen und es so auswählen. Und jetzt kannst du sehen, dass du das Casting vermeidest und du vermeidest, Verweise zu verstecken. Nur um es ein bisschen besser zu machen, klicke ich auf Strg X, um das hier herauszuschneiden, und füge es dem Event-Konstrukt hinzu Wenn ich das wegschiebe, halte ich die Alt-Taste gedrückt und klicke hier, um die Steuerung V zu trennen und das Ganze einzufügen. Mach weiter und verbinde es. Klicken Sie hier mit der rechten Maustaste, machen Sie aus diesem Play-Controller eine Variable und nennen Sie ihn Play-Controller. Mach weiter und verbinde es wieder hier, die Animation. Bei diesem Play-Controller machen wir ihn viel sauberer, indem wir einfach diese Play-Controller-Variable verwenden. Von hier aus können wir einfach „Widget einblenden“ sagen. Und wir können diese Funktion verwenden, anstatt das alles die ganze Zeit in jeder einzelnen Instanz hier unten zu tun . Und nehmen wir jetzt einfach die Variable und wir können das Ereignis viel sauberer nennen. Jetzt sind wir damit fertig, ich werde Ihnen den gesamten Prozess erklären , bevor wir fortfahren. Wenn es ein bisschen schwer zu verstehen war, ich weiß, dass die Benutzeroberfläche ein schwieriges Thema für Anfänger ist Lassen Sie uns einen kurzen Blick darauf werfen. Was wir getan haben, war im Grunde genommen zum Blueprint-Ordner zu gehen. Wir haben einen Interface-Ordner erstellt und unsere Hauptmenü-Oberfläche erstellt, indem wir mit der rechten Maustaste auf Blueprint, Blueprint-Oberfläche innerhalb dieser Blueprint-Oberfläche und Player-Controller-Referenz . Wir versuchen, hier die Player-Controller-Referenz für das Hauptmenü zu hier die Player-Controller-Referenz für das Weil das Event, das wir verwenden müssen, hier drin ist. Wir müssen darauf verweisen. Ich hier in der Blueprint-Oberfläche habe ich das für die Ausgabe erstellt Sie müssen eine Variable erstellen. Und der Variablentyp ist das , worauf Sie verweisen möchten. Wir versuchen, auf einen Player-Controller zu verweisen. Denken Sie daran, das PC-Hauptmenü auszuwählen. So habe ich meinen Player Controller genannt. Jetzt musst du diese Schnittstelle zum Player Controller hinzufügen . Ich klicke darauf, du gehst zu Einstellungen, ich füge mein Interface hinzu. Diese Registerkarte wird angezeigt. Dies ist die Funktion, die Sie hier erstellt haben. Innerhalb der Schnittstelle. Du gehst hier rein und dann musst du den Splat-Controller definieren Denken Sie daran, dass Sie diese Variable hier unten erstellt haben. Sie müssen sie definieren, denn wenn ich die Verbindung jetzt trenne und versuche, sie zu verwenden , erhalte ich eine Fehlermeldung. Und es wird sagen, dass kein Zugriff möglich ist. Access non bedeutet, dass diese Variable leer ist und ich nicht weiß, was ich damit anfangen soll. Das ist im Grunde eine echte Engine, die dir sagt , dass du die Selbstreferenz nehmen musst, weil wir ihr jetzt sagen, dass diese Player-Controller-Referenz Player-Controller ist, in dem wir uns gerade befinden. Das ist es, was „Selbst“ bedeutet, wenn wir das tun. Jetzt können wir zur Benutzeroberfläche des Hauptmenüs gehen. Wir können einen Verweis auf den Player-Controller von Ting haben, den Standard-Play-Controller. Und dann sagen wir, dass wir unseren eigenen Player-Controller verwenden wollen , nämlich diesen. Jetzt haben wir es hier und wir haben es zu einer Variablen hochgestuft. Jetzt können wir die Variable verwenden, um dieses Ereignis hier im Event-Graph vom Player-Controller aus aufzurufen dieses Ereignis hier im . Und genau das machen wir hier. Lassen Sie uns in der nächsten Lektion das Hauptmenü programmieren. 18. 2.09 Das Hauptmenü programmieren: In Ordnung, willkommen zurück. Jetzt sind wir bereit, das Hauptmenü zu programmieren. Immer wenn wir auf die Schaltfläche Create Sera klicken, möchten wir das Hauptmenü ausblenden Das ist richtig, das Hauptmenü. Dann wollen wir die Create Sera UI zeigen. Ich werde das von hier nach unten ziehen. Zeige Hide Widget noch einmal an, mach weiter und verbinde es. Dann möchte ich den Create Server anzeigen. Lass uns darauf doppelklicken, einfach so. Und was Sie tun können, ist, sie auszuwählen und Q auf Ihrer Tastatur zu drücken. Das wird die Dinge klären. Und jetzt wird hier auf dem Create-Server wirklich nichts passieren Denken Sie nämlich daran, dass Sie im Player-Controller auf die von Ihnen erstellte Funktion zum Anzeigen von Widgets klicken. Wir haben hier immer noch nichts für den Create Server und Show Server Browser gemacht . Es wird jedoch das Hauptmenü ausblenden , damit wir wissen, dass es funktioniert. Wenn es das tut, war das für den Create-Server. Lass uns auf Play klicken. Du siehst, ich kann nicht drücken, meine Maus ist verschwunden, wenn ich im Spiel geklickt habe Gehen wir zum Controller und gehen wir zu den Klassenstandards. Lass uns auf diesen klicken, der Mauszeiger anzeigen heißt. Es ist die ganze Zeit aktiv. Lass uns kompilieren. Lass uns auf Play klicken. Jetzt kann ich meine Maus die ganze Zeit sehen. Ich klicke auf Create Serva, du kannst sehen, dass mein Hauptmenü verschwindet Und ich zeige tatsächlich den Serva-Browser oder Create Serva, den wir noch nicht erstellt haben Jetzt funktioniert das. Lass uns weitermachen. Gehen wir zur nächsten Schaltfläche. Für den nächsten Button nenne ich ihn Button Join Serva und schicke ihn an eine Variable, damit ich damit programmieren kann Gehen wir zum Diagramm, klicken Sie auf die Schaltfläche, klicken Sie auf die Schaltfläche, auf die geklickt wurde Lassen Sie uns das alles einfach kopieren, damit wir es für den ersten nicht noch einmal schreiben müssen für den ersten nicht noch einmal Verstecken Sie erneut das Hauptmenü, zeigen Sie aber den Sera-Browser Dies ist der gemeinsame Server für den letzten Klicken wir auf die Schaltfläche Es macht weiter und macht es variabel. Jetzt in der Grafik klicken wir auf „Hier klicken“. Zum Beenden haben wir eine einfache Funktion namens Spiel beenden und auswählen Das war ein bestimmter Spieler. Ich werde nur Player-Controller sagen. Wählen Sie Player-Controller aus. Und das ist der Spieler, den wir beenden und kompilieren wollen. Lass uns jetzt auf Play klicken. Und das ist es. Immer wenn wir auf „Spiel beenden“ klicken, wenn ich auf „Serva beitreten“ klicke, wird der Serva-Browser aufgerufen , den wir noch nicht erstellt Alles ist korrekt. Jetzt können Sie sie zusammenfügen, damit sie besser aussehen. Sie können auch einige davon auswählen. Klicken Sie auf Ihrer Tastatur auf C , um einen Kommentar zu erstellen. Du kannst zum Beispiel sagen: Joinva Logic. Sie können versuchen, Kommentare abzugeben. Sie können sogar die Farbe des Kommentars ändern , was auch immer Sie möchten. Versuche so organisiert wie möglich zu bleiben. Das mache ich später. Also werde ich sie vorerst einfach zusammenstellen und alles speichern. Und lass uns mit dem nächsten weitermachen. 19. 2.10 Den Steam-Namen programmieren: Lassen Sie uns jetzt weitermachen und sicherstellen , dass der Name auch funktioniert Denn hier im Hauptmenü haben wir dieses hinzugefügt. Hallo Steam. Aber das Spiel muss wissen, wie du auf Steam heißt. Also lass uns hierher zurückkehren. Gehe zur Benutzeroberfläche. Öffnen Sie noch einmal die Benutzeroberfläche des Hauptmenüs hier. Lass uns auf diesen Text klicken. Ich nenne es einfach den Namen der Textebene. Wir können es auf eine Variable setzen, damit wir hier im Diagramm damit codieren können. Was wir tun wollen, ist wir es so schnell wie möglich machen, nachdem wir diese Animation abgespielt haben oder bevor wir die Animation abspielen. Hier nach der Player-Controller-Referenz. Lass uns auf Alt klicken und hier klicken. Wir trennen die Verbindung. Was wir tun wollen, ist diesen Spielernamen hineinzuziehen und Text setzen zu sagen. Das ist im Grunde das, was wir versuchen zu tun. Lassen Sie uns die Funktion auswählen, den Text festlegen und eine Verbindung herstellen. Anstatt einfach den Namen zu blockieren und ich zeige es dir, bevor wir etwas anderes machen, lassen Sie uns mit der rechten Maustaste klicken und den Controller holen und den Player-Controller holen. Dann kannst du von hier ziehen und sagen, dass „Spielername abrufen diesen benutzen kann. Und es ist aus den fortgeschrittenen Sessions, wie du siehst, bekommst einen Namen und du kannst ihn im Grunde einfach hier verbinden. Immer wenn du auf Play klickst, kannst du jetzt sehen, dass es mir den Namen gibt, diesen Namen hier. Und es gibt keine Animation, weil ich vergessen habe, sie hier zu verbinden. Also lass uns noch einmal auf Play klicken. Der Name ist korrekt. Das ist mein Desktop , weil ich ihn hier durch diesen laufen lasse. Aber wenn ich es wieder als eigenständiges Spiel starte, wird es etwas länger dauern, bis ein eigenständiges Spiel geöffnet ist. Aus diesem Grund spiele ich momentan normalerweise im anderen Modus. Aber jetzt kannst du sehen, wenn ich es öffne , in meinem Team kannst du sehen, dass Steam läuft. Da steht, dass ich Jinks heiße. Und das liegt daran, dass ich bei Steam so heiße. Jetzt weiß es tatsächlich , wie ich heiße. Lassen Sie mich hier wieder zum Kuchen übergehen. Es ist viel schneller zu öffnen. Man sieht, da steht nur mein Name und nicht Hallo. Wenn Sie statischen Text mit dynamischem Text mischen möchten, müssen Sie etwas verwenden, das als Formattext bezeichnet wird. Lassen Sie uns von hier aus zuschlagen und sagen, hier ausgewählter Formattext. Wählen Sie dann aus , was Sie schreiben möchten. Ich möchte Hallo und dann meinen Namen hier schreiben, ich möchte Hallo schreiben. Mein Name ist dynamisch. Was Sie tun, ist, für dynamischen Text eine geschweifte Klammer zu setzen, nennen wir es einfach Play einen Namen Und dann haben Sie eine geschlossene geschweifte Klammer. Du öffnest es und schließt es. Wenn Sie das tun, erhalten Sie hier eine Eingabe für eine Variable. Was Sie tun können, lassen Sie uns diesen als Zeichenfolge löschen. Also können wir das jetzt nehmen und es hier einstecken. Jetzt wird es funktionieren. Und lassen wir es einfach so besser aussehen. Wenn du auf Play klickst. Jetzt kannst du hier sehen, es heißt Hallo und dann dein Name hier drüben. Jetzt funktioniert das auch und wir können jetzt mit der nächsten Lektion weitermachen. 20. 2.11 Den Hintergrund des Hauptmenüs entwerfen: Was ich in dieser Lektion tun möchte, einen Hintergrund für das Hauptmenü zu entwerfen Denn wie Sie hier sehen können, ist es im Hintergrund dunkel, was in Ordnung ist. Du kannst es so haben. Aber ich möchte jetzt einen Hintergrund hinzufügen , wenn du das nicht tun willst, mach einfach weiter und die Lektion ist nicht wichtig. Aber wenn Sie lernen möchten, wie Sie auch einen Hintergrund für Ihr Hauptmenü erstellen , können Sie das tun. Ich werde es jetzt für drei D machen. Das ist viel einfacher für diejenigen, die meinen Kurs auf Game instruct.com besucht haben . Dieser Kurs hier, Counterstrike-Kurs Ich werde einfach die Hauptkarte verwenden, die wir in diesem Kurs erstellt haben Dies ist der Ego-Shooter-Kurs , der nur mit Blueprint erstellt wurde Es hat auch viel Spaß gemacht , es zu tun. Aber hauptsächlich werde ich das alles kopieren. Und ich werde es hier als Hauptmenü verwenden. Wenn du diesen Kurs gemacht hast, möchte ich, dass du einfach hier klickst , Strg A, um alles auszuwählen. Drücken Sie C, um zu kopieren. Dann gehen wir zurück zum Hauptmenü. Klicken Sie hier und drücken Sie V, um alles einzufügen. Lass uns Dinge löschen, die wir nicht wirklich brauchen. Wir brauchen nicht all diese Waffen. Also lass uns weitermachen und es wird es ein bisschen größer machen. Lassen Sie uns vorerst den Waffenordner auswählen. Ich denke, wir können den Ordner nicht löschen, wir müssen alles darin auswählen. Wähle diese alte Schicht aus. Klicken Sie auf den letzten, löschen Sie, und ich werde auch den Ordner löschen die Zuschauerkamera löschen Und ich werde alle Spawnpunkte löschen , wir brauchen sie nicht Lösche auch den Ordner und schau , ob wir ihn brauchen Der Sound ist in Ordnung. Der Sound ist in Ordnung. Okay, das alles haben wir jetzt. Das Reflexions-Capture werde ich tatsächlich auch löschen. Es gibt mir nicht die Nachricht, dass ich die Sphärenreflexionserfassung neu erstellen muss . Ich werde das auch löschen. Ich brauche es nicht wirklich. Jetzt speichern wir alles. Okay, das ist jetzt die Hauptkarte. Wenn wir auf Play klicken, sieht das etwas interessanter aus. Jetzt kannst du sehen, wie es sich ändert wo auch immer ich mit der Kamera bin. Lassen Sie uns tatsächlich eine Kamera hinzufügen. Ich werde hier vielleicht so eine Kamera hinzufügen, also sieht es ein bisschen interessant aus. Ich möchte, dass du hier oben klickst. Klicken Sie hier auf Kamera erstellen und wählen Sie die Kinokamera Klicken wir nun mit der rechten Maustaste auf die Kinokamera. Tippen Sie hier oben im Outliner auf und wählen Sie dann Augenlid Jetzt sind wir in der Kamera. Wenn ich mich jetzt bewege, bewege ich tatsächlich die Kamera. Aber ich möchte, dass du es hier mit der Kinokamera machst usw., ich möchte, dass du den Film wieder änderst Ich werde es auf SLA umstellen, ich werde die Objektiveinstellungen auf 50 Millimeter umstellen Das gibt uns quasi einen verschwommenen Hintergrund. Lass uns hier einen Charakter hinzufügen. Ich werde einfach meinen Charakter verwenden, den wir hatten, bevor wir hier Animationen gemacht haben. Denk dran, wenn du den Kurs gemacht hast, suche ich einfach nach einer ungenutzten Animation. Übrigens können Sie alles hinzufügen, was Sie wollen. Ansicht. Hier ist es nicht wirklich wichtig, es ist nur der Hintergrund. Nun zur Skala, sie war 1,6 weil die Zeichen etwas zu klein waren. Hier können wir die Ansicht ändern, vielleicht in etwa so. Ich habe hier etwas im Vordergrund, etwas Interessantes. Ich werde hier die Kamerageschwindigkeit verringern. Ich werde mich nicht so schnell bewegen und werde mich einfach anpassen. Normalerweise klicke ich jetzt auf Fenster und Aussichtspunkt und öffne hier einen zweiten Viewport Auf meinem zweiten Monitor kann ich mein Ohr tatsächlich verschieben und drehen, ohne die Kamera zu beeinträchtigen Ich möchte, dass du hier zuerst der Kamera versuchst, eine schöne Aussicht zu finden, die dir gefällt. Klicken Sie auf 11, um das Darstellungsfenster auf eine schöne Ansicht zu maximieren. Ich werde das einfach wegziehen. Versuche, einen schönen Blick auf die Kamera zu finden. Wann immer Sie das tun, fahren Sie fort und klicken Sie hier mit der rechten Maustaste auf die Kamera. Lassen Sie uns hier die Bewegung transformieren und dann sperren. Jetzt können Sie die Kamera nicht versehentlich bewegen, da sie jetzt auch für die Kamera gesperrt ist. Ich werde die Einschränkung des Seitenverhältnisses entfernen, hier ist sie. So sieht es jetzt aus, sieht toll aus. Nun, was ich von der zweiten Seite aus tun möchte, du kannst diesen Typen jetzt jederzeit hierher ziehen und ihn so drehen Vielleicht, was auch immer du denkst, es sieht gut für dich aus. Ich denke, so etwas ist gut für mich. Ich habe die Bewegung hier angepasst, die Position und die Drehung und so weiter. Ich habe die Linseneinstellung auf 85 Millimeter geändert , damit ich mehr Unschärfe habe Um es zu fokussieren, musst du hier zu den Fokuseinstellungen gehen und dann auf Draw Debo Focus Plane klicken Dann ändere einfach die Zahl und senke sie, bis du eine lila Ebene wie diese siehst Und dann stelle einfach sicher, dass es um den Charakter geht oder was auch immer du versuchst, dich zu konzentrieren. Wann immer es um etwas geht, weißt du, es ist nicht verschwommen Ich werde jetzt die Debug-Ebene entfernen, und so sieht sie aus Wenn ich jetzt zufrieden bin, werde ich diese Kamera verlassen, indem ich hier oben klicke Hör auf, den Schauspieler zu steuern, ich bin draußen Nun, da der Hintergrund erstellt wurde, wollen wir weitermachen und sicherstellen, dass wir in dieser Ansicht erscheinen Lass mich einfach hier raufgehen. Der Level-Blueprint. Und was der Level-Blueprint ist, ist nur Code speziell für dieses Es wird nicht auf andere Ebenen hier drinnen übertragen. Ich möchte, dass du Kamera hier im Outliner auswählst Und dann möchte ich, dass du mit der rechten Maustaste klickst, weitermachst und einen Verweis auf diese Kamera erstellst Ich möchte, dass Sie mit der rechten Maustaste klicken und nach Ansichtszielen suchen . Sie können das einfach entfernen. Wir müssen dieses Tool namens Set Target with Blend verwenden. Mach weiter und wähle diesen aus. Lass uns weitermachen und es jetzt für das Ziel verbinden. Sagen wir es Controller. Lass uns runter gehen. Und der Grund, warum ich das alles jetzt habe , ist, dass ich das entferne. Wenn ich es einfach noch einmal nehme, denken Sie daran, es erneut anzukreuzen, Sie erhalten nur die relevanten Funktionen. Wählen Sie diese aus. Holen Sie sich noch einmal den Play Controller. Übrigens, vorher konnten wir das nicht finden weil du es tatsächlich musst, du musst sagen, hol dir den Controller. Dann kannst du aus diesem Fenster ziehen und „Ziel für Ansicht festlegen“ mit Blend sagen. Und dann kannst du es sehen, ohne das zu tun. Wenn du es tust, ohne aus diesem zu greifen, musst du das kontextsensitive hier entfernen Das neue Blickziel ist unsere Kamera. Es sollte einfach gut funktionieren. Ich klicke einfach auf Jetzt abspielen und habe meine Ansicht einfach an einer zufälligen Stelle. Ich klicke auf Abspielen. Sie können sehen, dass wir uns jetzt in diesem Hintergrund befinden. In der nächsten Lektion werden wir Ihnen zeigen, wie Sie diesen Schaltflächen Sounds hinzufügen können. 21. 2.12 Button SFX hinzufügen: In dieser Lektion werde ich Ihnen schnell beibringen, wie Sie Button-Klicks usw. erstellen Wir haben also Sounds für Ihre Buttons. Lass uns im Inhaltsordner weitermachen. Lassen Sie uns mit der rechten Maustaste klicken und weitermachen und einen neuen Ordner erstellen. Ich habe das schon gemacht. Ich habe einen Ordner namens Audio. Mach einfach weiter und mach einen hier drinnen. Sie können einen Ordner mit dem Namen Soundeffekte erstellen. Jetzt habe ich schon viele davon weil ich dieses Spiel erstellt habe. Aber lass es mich einfach hier draußen für dich machen, damit ich es sehen kann. Was ich nun für Sie in diesen Ordner mit den Kursmaterialien aufgenommen habe , sind Soundeffekte. Machen Sie weiter und öffnen Sie es und Sie werden einige Soundeffekte für Schaltflächen sehen. Mach weiter und zieh sie hierher , raub sie aus. Und dann siehst du, dass diese erstellt wurden. Ich möchte, dass Sie mit der rechten Maustaste auf die Schaltfläche klicken, zum Beispiel mit der Maus darüber fahren, und dann können Sie eine Warteschlange erstellen. Machen Sie dasselbe für den Tastendruck, klicken Sie mit der rechten Maustaste und erstellen Sie eine Warteschlange. Du kannst es nennen, wie du willst. Normalerweise rufe ich sie am Anfang wegen des Klangs an. Außerdem werde ich diesen am Anfang wegen des Sounds anrufen . Hier ist er. Wenn Sie jetzt auf Play klicken, können Sie sie hören. Wenn Sie den Ton reduzieren möchten, können Sie jederzeit hier klicken und darauf doppelklicken. Und dann können Sie im Lautstärkemultiplikator den Ton reduzieren, wenn zu hoch ist. Die habe ich schon gemacht. Ich werde sie löschen, weil ich sie schon hier drin habe , The Button Hoover, und der Sound ist 0,15 für Für den Tastendruck habe ich 0,4 gewählt. Ein Modulator sorgt dafür, dass Ein Modulator sorgt dafür das Klicken nicht jedes Mal gleich klingt Wenn du einen machen willst, wenn ich diesen hier einfach lösche, so sieht es für dich Du kannst jederzeit ziehen und nach dem Modulator suchen und ihn auswählen und ihn dann hier verbinden Und jetzt hast du einen. Was ich normalerweise in den Tonhöhen Minimum und Maximum mache, ich schreibe 0,91 0,1 und du kannst es ausprobieren Wenn du jetzt auf Play klickst, sollte es anders klingen Jedes Mal, wenn Sie auf Play klicken, hören wir es uns an. Sie klingen nicht ganz gleich. Ich denke, es verleiht dem Ganzen einen einzigartigen Effekt. Lass uns alles speichern. Und was Sie jetzt tun können, ist, dass Sie alles schließen können. Sie können zu Ihrer Benutzeroberfläche zurückkehren und Ihr Hauptmenü öffnen. Lass uns hier auf eine der Schaltflächen klicken. Und geh hier runter. Sie können das gedrückte Geräusch sehen. Fahren Sie fort und wählen Sie Ihren Sound aus. Ich werde einfach nach dem Button suchen. Hier ist der Button. Dieser ist der gedrückte Tastendruck und der andere ist der Hover der Taste Dieser funktioniert. Wenn Sie jetzt mehrere Schaltflächen gleichzeitig ändern möchten, können Sie jederzeit auf eine klicken. Halten Sie die Taste gedrückt und wählen Sie auch die zweite Taste aus. Auf diese Weise können Sie es immer schneller machen. Der erste wird gedrückt und der zweite bewegt den Mauszeiger. Klicken Sie auf Kompilieren Wenn ich jetzt auf Play klicke, kannst du sehen, dass sie Sound haben. Und wenn ich auf einen von ihnen klicke, haben sie auch einen Ton. Alles funktioniert perfekt. Und lass uns weitermachen. 22. 3.01 Erstellen des Server-Widgets erstellen: Jetzt sind wir bereit, das Create Serva Widget zu erstellen. Lassen Sie uns hier in der Benutzeroberfläche weitermachen, das Hauptmenü öffnen und mit der rechten Maustaste klicken, zur Benutzeroberfläche wechseln und einen Widget-Blueprint erstellen Für diesen werden wir ihn nun Create Serva nennen. Im Moment müssen wir hier drinnen wirklich nichts tun Aber denk dran, wir müssen uns die Baupläne ansehen. Öffne das Hauptmenü und gehe zur Playout-Steuerung für das Hauptmenü Denn wenn Sie sich erinnern, haben wir hier das Widget zum Einblenden erstellt. Im Show-Widget. Lass uns hier reingehen. Jetzt kannst du es, genau wie im Hauptmenü, für Create Serva selbst machen , wenn du etwas Übung brauchst Wenn du dich nicht erinnern kannst, lass uns weitermachen und es gemeinsam machen. Klicken wir hier mit der rechten Maustaste. Sie erstellen Widgets. Fahren Sie fort und wählen Sie aus. Wählen wir unser Create Serva Widget aus, das wir gerade erstellt haben. Klicken Sie mit der rechten Maustaste Machen Sie daraus eine Variable und nennen Sie sie create sera. Lassen Sie uns von hier aus zuschlagen und sagen „ Zur Ansicht hinzufügen “, einfach so Jetzt, genau wie zuvor, nehme ich diese Variable, klicke mit der rechten Maustaste und konvertiere sie in ein validiertes GET, weil wir nicht wirklich jedes Mal neu erstellen müssen, wenn wir create sera widgit öffnen. Wir wollen es einfach immer dann erstellen, wenn es beim ersten Mal nicht gültig ist, wenn Sie es zum ersten Mal öffnen, Sie es zum zweiten Mal öffnen, wird es Wir wollen es nur zum Viewpoardt hinzufügen, bevor daran denken, es mit den Create-Sera hier zu verbinden und einfach etwas Platz dafür zu schaffen . Jetzt sind wir bereit, zur Hyde-Widgit-Funktion zu wechseln. Mach weiter und öffne das. Ziehen Sie das Create Sera Widget hierher. Klicken Sie mit der rechten Maustaste, konvertieren Sie zu validieren und stellen Sie die Verbindung her. Denken Sie noch einmal daran, dass das Entfernen aus dem übergeordneten Element bedeutet, dass Sie es aus dem Darstellungsfenster entfernen Einfach auf diese Weise von den Eltern entfernen. Setz sie zusammen, mach hier etwas Platz. Es ist immer nett, organisiert zu sein. Mach weiter und speichere alles. Jetzt sollte es funktionieren. Wenn du auf Play und dann Create Serve klickst , passiert nichts. Das liegt daran, dass unser Widget leer ist. Stellen wir außerdem sicher, dass wir es richtig codiert haben. Wenn ich hier zum Hauptmenü gehe, möchte ich mich nur daran erinnern, ob ich es tatsächlich richtig gemacht habe. Du kannst im Grunde einfach auf den Button klicken. Sie können nach unten scrollen und hier darauf klicken , was wir zuvor erstellt haben. Klicken Sie auf diese Schaltfläche. Wir klicken auf das Hauptmenü und zeigen die Create-Sera. Es sollte funktionieren. Wenn ich jetzt die Create Sera öffne, müssen wir hier nur etwas hinzufügen , damit wir sehen können, ob es funktioniert Wenn ich einfach nach einem Bild suche und es hineinziehe, ändern wir einfach den Farbton auf etwas Besseres für die Augen, damit wir nicht geblendet werden Verfassen Sie das. Wenn ich jetzt auf Play klicke und es ausprobiere. Klicke nun auf Create Sera. Ich bekomme dieses Widget und es funktioniert tatsächlich. Wir gehen hier rein. Jetzt klicken wir hier darauf. Lass uns das Bild löschen. Kompilieren Sie vorerst alles, speichern Sie es. Fahren wir mit der nächsten Lektion fort, in der wir dieses Widget entworfen haben. 23. 3.02 Das Create Server-Widget entwerfen: In Ordnung, willkommen zurück hier. In dieser Lektion werden wir das Widget „Server erstellen“ entwerfen. Nun, das wird lang werden, vielleicht bleiben Sie einfach konzentriert, bleiben Sie interessiert. Hoffentlich kann ich manchmal sehr einschüchternd sein. Lass uns einfach weitermachen und es tun. Das, was ich entwerfen will, ich will dir nur zeigen, was wir machen werden, weil es immer schön ist zu sehen, was wir machen werden. Es ist diese Benutzeroberfläche hier, Server erstellen. Wir haben den Servernamen, wir haben die Map, Anzahl der Slots für den Server, die Sprache für den Server. Zum Beispiel, wenn es Englisch, Deutsch und so weiter ist. Die Privatsphäre, wenn es sich um einen öffentlichen Server oder einen Landserver handelt. Und dann haben wir die Schaltfläche Erstellen und die Schaltfläche Zurück. Das versuchen wir zu tun. Es ist immer schön, das zu sehen, denn bevor Sie mit dem Design beginnen , sollten Sie sich immer vorstellen, was Sie tun möchten. Und es ist viel einfacher, horizontale Boxen, vertikale Boxen usw. zu verwenden . Lassen Sie uns einfach weitermachen und es uns anhand der Bildschirmgröße ansehen. Ich möchte nur sichergehen, dass ich es für generische Laptops entwerfe . Lassen Sie uns jetzt das Erste noch einmal kompilieren, für die Benutzeroberfläche müssen wir daran denken, ein Canvas-Panel hinzuzufügen , bevor wir etwas tun. Da ich einen Hintergrund habe und einige Dinge darüber hinaus habe, möchte ich anfangen. Fangen wir zuerst mit einer vertikalen Box an, denn das ist im Grunde das, was sie ist. Fangen wir zunächst mit einem Overlay an. Ein Overlay ist im Grunde etwas, das übereinander Zuerst möchte ich ein Hintergrundbild. Lass uns weitermachen und das in das Overlay ziehen. Jetzt können Sie sehen, dass das Bild nur hier ist. Also klicke ich auf das Overlay und fülle dieses Overlay hier aus. Auch für das Bild fülle ich es horizontal und vertikal Genau so für das Bild. Lass uns das hier sehen. Gehen wir zur Benutzeroberfläche und gehen wir zu den Bildern, die wir importiert haben. Ich denke, ich werde dieses Panel hier verwenden. Ich kann dieses blaue Panel einfach hierher ziehen , genau wie zuvor. Ich werde das in ein Feld ändern und das auf einen Rand von 0,5 ändern , damit es jetzt nicht so verschwommen ist Es sieht schon viel besser aus. Ich werde mir vorerst keine Sorgen über die Größe machen, es ist nicht wirklich wichtig. Aber ich werde es in der Mitte verankern. Klicken Sie auf das vertikale Feld und verankern Sie es in der Mitte mit einer Ausrichtung von 0,50 0,5. Es befindet sich also in der Mitte Merken Sie sich auch die Position 00 in X und Y, sodass sie perfekt in der Mitte liegt Lass uns hier weitermachen. Jetzt haben wir dieses Overlay. , dass wir im Overlay Denken Sie daran, dass wir im Overlay all diese Elemente hier haben All diese Elemente sind vertikal ausgerichtet. Lassen Sie uns weitermachen und diesem Overlay ein vertikales Feld hinzufügen diesem Overlay ein vertikales Feld Jetzt haben wir in diesem Overlay, in dem Overlay ein Wie Sie hier sehen können, ist es sehr klein. Was ich tun möchte, um es nicht zu klein zu machen, ist, dass wir es wieder horizontal und vertikal ausrichten. Es füllt das Ganze aus. Ich will es nur von den Rändern wegdrücken. Was ich tun werde, ist, Ihnen etwas Abstand zu geben , denn wenn wir jetzt zum Beispiel etwas Text hinzufügen, können Sie sehen, wenn ich Text zum vertikalen Feld hinzufüge, wird er hier zum Rand hinzugefügt Und ich möchte nicht, dass ich auf das vertikale Feld klicke, ich gehe hier nach links Vielleicht gib es so etwas wie 50, so etwas. Nach oben gebe ich ihm 35 Pixel. 50 Einheiten nach hier und 35 nach unten. So etwas wie das hier. Es ist hier in der Mitte , wenn ich Elemente hinzufüge. Nun zu diesem Text klicke ich darauf und richte ihn horizontal in der Mitte aus. Außerdem werde ich hier unten zur Begründung den Wert auf die Mitte setzen. Für diesen werde ich nur sagen: Create Servo. Lassen Sie uns tatsächlich weitermachen und aus dem Hauptmenü kopieren, weil wir nicht wirklich alles von Grund auf neu erstellen müssen . Ich kopiere das tatsächlich aus dem Hauptmenü, Steuerung C, und dann Steuerung V über diesem vertikalen Feld. Ich werde diesen hier löschen. Ich werde es in der Größe 22 machen , sodass es viel größer ist und ungefähr so aussieht, ungefähr so aussieht, weil es ein Titel ist. Was den Schatten angeht, ich denke, er ist in Ordnung. Alles sieht gut aus. Lassen Sie uns jetzt weitermachen und weitermachen. Jetzt brauchen wir einen Text und ein Eingabefeld, damit wir den Seronamen erneut schreiben können Ich werde hier klicken und das kopieren und oben in das vertikale Feld einfügen Ich werde auf diesen Text klicken Für die Größe dieses werde ich ihn 18 machen. Ich werde den Schatten von Set eins statt von Set zwei machen. Fügen wir ein Leerzeichen hinzu, sodass wir zwischen diesen beiden ein Leerzeichen haben. Suchen Sie nach einem Abstandhalter, ziehen Sie ihn und bearbeiten Sie ihn zwischen diesen beiden Texten Für das Leerzeichen im Y. Ich werde einfach 25 schreiben, damit wir hier etwas Platz haben jetzt auf diesen Text klicken, möchte ich, dass Sie ihn stattdessen links ausrichten. Nochmals die Begründung. Stell sicher, dass es übrig ist. Stellen Sie sicher, dass es in der Mitte ist. Lassen Sie uns nun weitermachen und ein Eingabefeld hinzufügen. Wenn Sie nach Text suchen, sehen Sie dieses Textfeld. Lassen Sie uns weitermachen und es dem vertikalen Feld hinzufügen . Es ist hier unten. Nun zu diesem, ich werde darauf klicken. Lassen Sie uns weitermachen und es entwerfen. Hintergrundbild normal. Lassen Sie uns jetzt hier in die Benutzeroberfläche gehen und sehen, was wir dafür verwenden können. Wenn ich zu Bildern gehe, denke ich, dass ich diese eine blaue Eingabeleiste in den Bildern verwenden werde . Für diesen. gehe zu Create Sera hier drüben, Ich gehe zu Create Sera hier drüben, klicke und ziehe es hierher für den Rand, für das Feld, ich werde 0,5 sagen, genau wie zuvor Ich werde dieses Hintergrundbild kopieren. Halten Sie die Umschalttaste gedrückt, klicken Sie mit der rechten und dann bei gedrückter Umschalttaste mit der linken Maustaste auf beide. Lass uns weitermachen und die Zehn ändern ist in Ordnung. Lassen Sie uns diesen tatsächlich ändern. Wenn Sie möchten, dass der Mauszeiger eine andere Farbe hat, können Sie diese eine Eingabeleiste immer im Fokus platzieren Sie können diesen fokussierten Modus verwenden , den ich erstellt habe. Immer wenn Sie mit der Maus darüber fahren, sollte es etwas bewirken Wenn ich auf Plate Create klicke und es ausprobiere, kannst du sehen, dass es die Farbe ändert, sodass du einen gewissen Effekt hast Wenn du darauf klickst, ist es fokussiert. Es sieht so aus, oder? Sieht schon gut aus. Lassen Sie uns weitermachen und es etwas aufpolstern weil es viel zu klein ist Und außerdem geben wir ihm hier oben einen Text, damit wir sehen können wie es auch mit dem Text aussieht Ich kann zum Beispiel sagen, mein Server, jetzt sieht es so aus. Offensichtlich sieht es nicht allzu gut aus. Wir müssen es ändern. Lassen Sie uns den Text tatsächlich ändern. Bevor wir das stilisieren, gehe ich für dieses Bild nach vorne Ich werde Rubic Medium für die Textgröße verwenden. Ich denke, 16 sollte für die Textfarbe in Ordnung sein. Ich werde dieses Erbe entfernen und es hier einfach so weiß machen hier einfach so weiß Ich glaube nicht, dass wir noch mehr Dinge tun müssen. Lass uns die Polsterung hier oben ändern. Was die Polsterung angeht, ist es wieder links, rechts, von oben , ich werde 20 mal Ich denke, ich werde 20 mal 20 mal 20 für links und rechts hinzufügen 20 für links und rechts Ich füge etwas weniger hinzu, vielleicht 16 mal 16. Es sieht ungefähr so aus wie dieses hier, man kann es immer kleiner machen. Loggen Sie sich ein, was auch immer Sie wollen. Aber ich finde, das sieht schon gut aus. Lass es uns einfach im Spiel ausprobieren und sehen, wie es aussieht. Wenn ich hier klicke, kann ich Looking Good schreiben. Und wenn ich einen langen Text schreibe, sieht er so aus. Sieht schon toll aus. Geben wir ihm etwas Platz von hier oben. Die Polsterung ist eigentlich schon vier an der Unterseite. Sagen wir einfach fünf. Ich möchte ihm nur noch eine Polsterung geben, damit wir etwas Abstand zwischen diesen beiden haben Jetzt sind wir bereit, die nächste zu machen, nämlich die Karte. Lass uns weitermachen und diesen Text einfach hier kopieren. Steuerung C, Steuerung V auf dem vertikalen Feld. Ich nenne das eine Karte. Fügen wir noch einmal einen Abstandshalter zwischen diesen beiden hinzu. Ich werde D steuern, um diesen Spacer zu duplizieren. Ziehen Sie es nach unten über diesen Text. Wir haben hier oben etwas Platz. Ich werde es einfach weniger machen. Ich werde stattdessen 20 draus machen. Jetzt kommt der schwierigere Teil, denn jetzt werden wir ein Kombinationsfeld verwenden, das ist ein Drop-down-Menü. Aber es ist etwas schwieriger , diesen zu stilisieren. Lass uns einfach weitermachen und das machen, aber es wird ein bisschen schwieriger sein als die Tasten und die Eingabe Für diesen müssen wir ihm nun einige Standardoptionen für die Karten geben . Du kannst tun, was du willst. Ich füge nur ein paar Counter-Strike-Maps hinzu. Wir haben zwei Wir haben eine Karte namens Inferno, wir haben eine Karte namens Mirage und wir haben eine Karte namens Office. Ich habe diese beiden Und dann müssen Sie ihm eine ausgewählte Option geben. Standard, ausgewählt. Lass uns Inferno machen Das ist der Auserwählte. Jetzt musst du auf Kompilieren klicken bevor dir etwas angezeigt wird. Denken Sie daran, auf das Padding zu drücken und zu kompilieren. Ich weiß es noch nicht, denn lassen Sie uns diesen Stil annehmen und ihn zuerst stilisieren, bevor wir etwas Polsterung im Stil der Kombinationsschaltflächen vornehmen, dann normal Fangen wir mit diesem an. Sie können sehen dass es hier viele Optionen gibt. Es ist ein bisschen komplexer. Fangen wir hier mit dem normalen an. Lass uns hier runter zu Buttons gehen. Und ich werde diesen verwenden, der Button Square Blue heißt. Es ist immer schön, ein Quadrat dafür zu verwenden , weil es einen Hintergrund gibt, den man nicht entfernen kann. Wenn er abgerundet ist , weil ein kleiner Hintergrund erscheint, es für Sie viel einfacher, einen quadratischen Hintergrund zu verwenden. Lass uns weitermachen und das tun. Lass uns das hier reinziehen. Lassen Sie uns das hier in der Zeichnung machen, da ich es wie zuvor als Feld mit einem Rand von 0,5 festlegen werde . Der Farbton ist weiß. Wir verwenden jetzt unseren eigenen normalen Button und suchen nach der Polsterung Lassen Sie uns den Inhalt etwas auffüllen. Ich denke, ich mache das für links und rechts, vielleicht mache ich es sechs mal sechs Lassen Sie uns kompilieren und sehen, wie es oben und unten aussieht wie es oben und unten Lassen Sie uns 16 mal 16 versuchen und sehen , wie es aussieht. So sieht es aus. Jetzt muss ich es auf der Unterseite etwas mehr geben , weil es so aussieht es dadurch mehr nach unten gedrückt wird. Ich werde auch etwas von der Oberseite entfernen, statt vielleicht 16, vielleicht. Ich werde hier 12 schreiben. Haufen. Ich finde, das sieht gut aus. Nun, was wir hier tun können, lassen Sie uns den Text stilisieren, damit wir sehen können, wie er aussieht Bevor wir das tun, lassen Sie uns das tatsächlich kopieren. Kopieren wir das normal auf den Hoverd. Em hat gedrückt. Lass uns hier klicken. Nun zur Hoverd Empress, wir haben nicht wirklich, ich habe nicht mehr Knöpfe Lassen Sie uns hier einfach den gleichen für alle verwenden den gleichen für alle Lassen Sie uns nun zum Spaß weitermachen und den Fonds wechseln. Bevor wir irgendwas tun, der Fonds ist hier unten. Lass uns das ändern. Ich werde es genauso wie zuvor ändern. Zu rubic medium. Die Größe ist 16 und die Farbe ist weiß. So. Möglicherweise benötigen wir etwas mehr Polsterung, weil es zu eng ist. Aber lassen Sie uns zunächst diesen Pfeil ändern. Wenn ich nach unten gehe und den Pfeil finde, das ist die Menüfüllung, Sie können sehen, dass es etwas verwirrender Um dieses Bild mit dem Abwärtspfeil zu ändern, klicken Sie darauf. Lass es uns jetzt ändern. Ich habe schon einen auf den Bildern. Wir haben hier einen Pfeil, also kannst du ihn anklicken und hineinziehen, er passt zu der Farbe für diesen Pfeil. Ich werde auf die Bildgröße klicken und sie ein bisschen vergrößern. Ich werde es 14 mal 14 machen und kompilieren. Ich werde es hier auch ein bisschen pdding geben, weil es links und rechts zu nah ist Ich werde es 12 mal 12 für oben und unten geben. Lass uns dir etwas geben, wenn vier mal vier ist. Lass uns kompilieren. So sieht es aus und sieht viel besser aus als zuvor. Jetzt müssen wir nur noch das Menü selbst ändern, denn Sie können sehen, dass Sie fünf Mal auf Play klicken und dann auf dieses Menü klicken. Wir haben einen dunklen Hintergrund und der Text ist auch falsch. Es ist auch dunkel. Lass uns weitermachen und das ändern. Klicke darauf. Nun zum dunklen Text. Gehen wir zurück und finden heraus, wo er sich befindet. Es ist Teil des Maybe Item-Stils, Item-Stils. Wenn Sie hier reingehen, machen wir es größer, damit ich sehen kann , was da steht. Wir haben den geraden Hintergrundpinsel und wir haben den Hintergrundpinsel für die übergeordnete Zeile und den Hintergrundpinsel für ungerade Zeilen. Lass uns weitermachen und sie anklicken. Das Oddro, zum Beispiel, ich möchte, dass du stattdessen die Zeichnung als Feld änderst, dann 0,5 am Rand Der Farbton hier ist nicht weiß, sondern du kannst ihn sehen, als ich das gemacht habe Wenn ich jetzt auf Play klicke, wird der Hintergrund weiß Für diesen, für den seltsamen. Anstatt Weiß zu machen, klicken wir darauf. Klicken Sie auf den Farbwähler und wählen Sie den Hintergrund für den Rand selbst aus , um ihn mit derselben Farbe Wenn ich auf Jetzt abspielen klicke, siehst du es unten. Es wird hier dieselbe Farbe verwenden , was wir wollen. Mach dir keine Gedanken darüber, wie es bisher aussieht, das werden wir jetzt ändern. Ich möchte diese Einstellung nur kopieren und sie wie folgt in den gleichmäßigen Zeilenpinsel und Zeilenpinsel für den übergeordneten Hintergrund den Zeilenpinsel für den übergeordneten Hintergrund einfügen. Lass uns auf Play klicken. Schau, wie es jetzt aussieht. Es sieht viel besser aus als zuvor. Lassen Sie uns nun die Textfarbe für die ausgewählte Farbe hinzufügen oder auf Weiß ändern . Ich werde auch die Farbe Weiß ändern, weil wir hier die gewählte Farbe durch die Farben sehen werden. Sie können sehen, dass das Ausgewählte blau ist wie folgt. Ich möchte das hier in diese Farbe ändern. Ich denke, es passt viel besser zum aktiven Schwebepinsel Ich werde die Farbe hier unten auswählen. Eigentlich werde ich einfach , nein, nicht diese Farbe wählen, weil es die Farbe hier ist. Ich möchte hier klicken und den Farbwähler auswählen Und wähle diese Farbe hier unten aus. Es ist die dunkle Farbe, dieselbe Farbe für den aktiven Pinsel. Ich werde diesen Farbton kopieren und hier einfügen. Ich klicke auf Abspielen. So sieht es aus, sieht viel besser aus. Ich werde diese orangefarbene Linie entfernen, die hier oben verläuft. Für diese Linie werde ich einfach dieselbe Farbe wie hier unten verwenden . Okay, gut. Jetzt sieht es ein bisschen besser aus, aber wie Sie sehen können, sieht es eigentlich nicht besonders gut aus. Als ob das Quadrat sehr komisch aussieht. Lass uns weitermachen und das reparieren. So wie wir das beheben, wenn wir hier raufgehen und etwas haben, das man Menudo-Pinsel nennt Wenn du auf dieses Video klickst, weiß ich, dass dieses Video zu lang wird Aber ich möchte das hier einfach richtig machen. Im Met-Pinsel musst du ihn ändern. Gehen wir einfach zurück zu den Schaltflächen und ändern sie auf die, die wir zuvor verwendet haben. Mach weiter und ziehe es jetzt rein. Den Rand für diesen gebe ich 0,5 und auch für die Menüeinteilung hier nach links gebe ich 12, dann 28 nach oben. Nun, ich habe es schon einmal getestet und ich finde, es sah gut aus. 12 nach links und rechts und 28. 32 hier. Ich kann einfach kompilieren und du kannst sehen, wie es aussieht. Wenn ich jetzt auf Play klicke, kannst du sehen, wie es aussieht. Jetzt haben wir es so getätschelt, jetzt sehen wir es so wie hier. Nun, was die Hover-Farbe angeht, ich denke, ich werde die Hovafarbe ändern, wie ich hier sehen kann, weil ich nicht möchte, dass sie dunkel ist Es sieht viel besser aus als zuvor. Lassen Sie uns weitermachen und die Farbe des Hovers korrigieren. Wenn ich hier runter gehe, lass uns tatsächlich die Farbe Daca verwenden. Ich denke, das wird besser aussehen. Ich kopiere es von hier oben. Hier haben wir es für die Marge verwendet. Lassen Sie uns vorerst einfach die Farbe kopieren. Ich brauche eigentlich nichts anderes für den Hovert. Ich werde es hier einfügen. Dieser auch. Ich werde zu Feld 0.5 wechseln, um den Farbton einzufügen, und auch für die gerade Zeile Ich werde es hier einfügen, kompilieren, auf Abspielen klicken Nun, so sieht es aus. Ich finde, es sieht viel besser aus. Jetzt, hier in der Überschrift der Menüzeile, gebe ich es hier nach links, 12,12 nach rechts, vier nach oben und unten Und ich werde kompilieren und auf Play klicken. Dadurch wird ein gewisser Abstand zwischen diesen Elementen geschaffen. Jetzt geben wir in der Auffüllung der Menüzeile den Elementen etwas Platz Sie können also sehen, dass sie etwas weiter voneinander entfernt sind weiter voneinander entfernt Ich denke, wir sind fertig. Aber bevor wir das tun, möchte ich diesem Text hier etwas mehr Raum geben . Statt 612 gebe ich hier vielleicht plus vier unten, plus vier oben Gehen wir mal kompilieren und schauen, wie es aussieht. Einfach so, tatsächlich kompilieren ein B plus vier wieder und plus vier wieder nach links und rechts. Ich gebe noch ein bisschen mehr. Versuchen wir es hier mit plus vier plus vier. Kompilieren sieht es so aus. Ich denke, es sieht ein bisschen besser aus. Lass uns ein bisschen mehr geben. Geben wir es 12 mal 12. Kompilieren, okay? Ich finde, das sieht viel besser aus. Lass uns weitermachen und mit diesem arbeiten. Lass uns auf Play klicken und sicherstellen , dass wir keine Box mit dieser Box von einer anderen haben . Jetzt sieht alles gut aus. Okay, das werden wir jetzt verwenden. Wir brauchen eine für die Karten, das ist viel einfacher, weil wir jetzt wie zuvor kopieren und einfügen werden. Denken Sie daran, dass wir die in einem horizontalen Feld haben. Lassen Sie uns weitermachen und nach Horizontal suchen. Fahren Sie fort und fügen Sie es in das vertikale Feld ein. Statt dieser Horizontalen ziehe ich jetzt rein, wir müssen diese beiden hineinziehen. Aber bevor wir das tun können, packen wir sie einfach in eine vertikale Box. Wir bringen ihre vertikale Ausrichtung hier nicht durcheinander. Lass uns weitermachen und hier klicken. Ziehe es in das vertikale Feld. Für dieses vertikale Feld klicke ich auf Strg D. Wir duplizieren es, da wir den gesamten Bereich ausfüllen wollten, klicken wir auf das erste. Lassen Sie uns tatsächlich auf das horizontale Feld klicken. Stellen Sie sicher, dass es so ist. Für das vertikale Feld klicken Sie auf Füllen. Für das vertikale Feld zwei klicken Sie ebenfalls auf Füllen. Lassen Sie uns diesen Abstandhalter duplizieren und ihn dazwischen einfügen. Lass mich einfach einen in das Y schreiben, aber in das X müssen wir ihm etwas Platz geben Was das X angeht, gebe ich ihm einfach ein Leerzeichen von 25. Lassen Sie uns diesen Text in Slots ändern. Anzahl der Steckplätze für den Server hier drüben. Geben wir ihm einige Standardoptionen. Sagen wir zwei Spieler, vier Spieler, acht Spieler. Vielleicht 16 Spieler. Lass uns noch eins drauflegen. Sagen wir 32 Spieler. Jetzt wäre die gewählte Standardoption vielleicht vier Spieler und kompilieren. Und du wirst es hier sehen. Lassen Sie uns jetzt weitermachen und dieses horizontale Feld duplizieren, indem wir auf Strg D klicken, um es erneut zu duplizieren Ich werde einen Abstandhalter zwischen ihnen hinzufügen und diesen Abstandhalter duplizieren Füge es hier unten hinzu. Beim nächsten Mal werden wir Sprache sagen. Für den letzten werden wir Datenschutz sagen. Nun, was die Sprache angeht, wählen Sie einfach, was Sie wollen. Zum Beispiel wäre Englisch die wichtigste. Außerdem werde ich für die ausgewählte Option Englisch sagen. Dies ist die Standardoption. Der zweite könnte deutsch sein, der dritte könnte chinesisch sein. Der letzte könnte so etwas wie Französisch sein. Sie können ihm immer so viele Sprachen geben, wie Sie möchten, aber das ist vorerst in Ordnung. Aus Datenschutzgründen möchte ich nur zwei Optionen. Ich möchte öffentlich oder wenn es sich um einen Landserver handelt , kompilieren Sie. Und natürlich müssen wir eine Standardoption auswählen , die öffentlich ist. Ich werde diese Optionen entfernen, die wir nicht benötigen. Mach weiter und kompiliere. Hier sieht es toll aus. Lass uns auf Play klicken. Testen Sie es einfach, um zu sehen, ob alles so ist, wie es soll. Alles sieht gut aus. Nun zum letzten Teil, den Schaltflächen Lassen Sie uns weitermachen und ihn aus dem Hauptmenü duplizieren. Ich werde einen von ihnen duplizieren. Zum Beispiel dupliziert dieser das Overlay-Steuerelement C und geht zum Create-Server Und wieder werde ich im vertikalen Feld Steuerelement V noch einmal V steuern, weil wir zwei Tasten benötigen Und wenn wir auf das vertikale Feld klicken, vergrößern wir es, damit wir sehen können, was wir tun. Wenn Sie auf das vertikale Feld klicken, das erste, sieht es ein bisschen komisch aus, wie Sie hier sehen können. Nun zur Polsterung, ich sage einfach Null, das Overlay Und beim zweiten Overlay-Padding sage ich Null. Sie können sehen, dass sie übereinander liegen . Das liegt daran, dass ich das zweite Overlay tatsächlich in das erste Overlay eingefügt das zweite Overlay tatsächlich in das erste Overlay Ich werde es in das vertikale Feld ziehen, und jetzt liegen sie übereinander Der Grund, warum diese Taste andere Taste gedrückt hält, liegt darin , dass es sich bei der ersten um eine Füllung handelt, der zweiten Überlagerung nicht um eine Füllung Lass uns weitermachen und auf Füllen klicken. Sie füllen also so viel Raum wie gleichmäßig aus. Fügen wir nun auch einen Abstandhalter zwischen ihnen hinzu. Aber bevor wir das tun, fügen wir hier oben einen Abstandshalter hinzu und duplizieren Zusätzlich zu diesen beiden Überlagerungen haben wir hier etwas Platz für Ich wähle einfach beide hier oben für die Polsterung nach oben und unten aus Lassen Sie uns hier tatsächlich eine Sechs geben und kompilieren. Lassen Sie uns den Text für den ersten ändern, wir sagen Create Serva Für den zweiten werden wir zurück sagen, weil wir eine Schaltfläche benötigen, um zum Hauptmenü zurückzukehren. Für diesen werde ich die Farbe wieder auf T square blaugrün ändern Du kannst das jederzeit kopieren. Fügen Sie es hier und hier ein. Und dann kannst du den ersten auf Hoard und den zweiten auf Prestres ändern Hoard und den zweiten auf Prestres Jetzt das zweite für die Rückseite, ich werde das in ein graues Quadrat, Grau, Copy-Paste auf allen so ändern Grau, Copy-Paste auf allen Ich muss diesen für den normalen kopieren, ich weiß nicht, warum ich nicht aktualisiert habe. Lass uns das kompilieren. Lassen Sie uns den zweiten so ändern, wie einer dieser gedrückt wird und dieser Howard. Okay. Nochmals, ändern Sie auch hier die Farben, die Konturfarbe. Klicke darauf. Kolik. Ich wähle die dunkelste Konturfarbe Klicke darauf. Kopieren Sie Pasted erneut in die Schattenfarbe Zurück hier, klicken Sie darauf. Klicken Sie auf Farbauswahl, wählen Sie die dunkelste Farbe Mohnblume, die Farbe, und fügen Sie sie ebenfalls in den Schatten Jetzt sieht es gut aus. Jetzt können Sie versuchen, die Größe des vertikalen Felds nach Ihren Wünschen zu ändern. Da Sie sehen können, wenn Sie die Größe des vertikalen Felds ändern, Sie auch die Größe Größe einfach so an, wie Sie der Meinung sind, dass die Schaltflächen gut aussehen Und ich denke so , dann kannst du Größe auch in diese Richtung ändern, was auch immer du denkst , dass es gut aussieht Ich nehme einfach so etwas. Hier geben wir auch einige zu diesen Drop-down-Menüs. Okay, Sie können auf das vertikale Feld klicken und es zentrieren, Y0x und Y Null positionieren Sie können weitermachen und auf Kompilieren klicken. Klicken Sie nun auf die erste Schaltfläche und stellen Sie sicher, dass Sie auch einige Sounds gedrückt haben , Sound Overt Sound und die andere ebenfalls Denken Sie daran, bei beiden Texten darauf zu achten, dass die Sichtbarkeit nicht als testbar bezeichnet wird, damit sie unsere Mausklicks nicht blockiert Ich glaube, wir haben nichts vergessen. Lass uns alles speichern. Klicken Sie auf Abspielen. Lass es uns testen. Jetzt bin ich hier. Ich kann meinen Benutzernamen schreiben. Ich kann sie hier anklicken, was auch immer. Hinterer Server hier. Ich sehe, dass der Backpress nicht funktioniert. Um das Problem zu beheben, klicken Sie hier. Und ich kann sehen, dass es da ist. Aber vielleicht ist etwas schief gelaufen, als ich einfach hierher gewechselt habe. Vielleicht stimmt etwas mit dem Button selbst nicht. Wie bei der Kunst selbst denke ich, dass etwas mit der Kunst selbst nicht stimmt und nicht wirklich mit dieser, dass wir alles richtig gemacht haben. Okay, lass uns jetzt alles speichern. Fahren wir mit der nächsten Lektion fort, in der wir mit der Programmierung dieses großartigen Server-Widgets beginnen. 24. 3.03 Den Servernamen und die ausgewählte Karte erhalten: nun zu diesem Menü, das wir erstellt haben, Lassen Sie uns nun zu diesem Menü, das wir erstellt haben, weitermachen und mit der Codierung beginnen Als Erstes möchte ich den Servernamen abrufen , den wir hier erstellen. Lass uns zuerst auf dieses Eingabefeld klicken. Wir müssen ihm hier einen Text geben, weil wir ihn in der Grafik nicht wirklich verwenden können. Wir fügen es hier nicht als Variable hinzu, sondern setzen es auf ist variabel. Gib ihr hier einfach einen Namen. Ich nenne es Eingabe für ein Eingabefeld, ich nenne es Servername und kompiliere es. Jetzt kannst du es in der Grafik sehen. Ich werde sie hier einfach alle löschen, indem ich auf das Eingabefeld klicke. Und dann können Sie hier klicken, um ein Ereignis am Text zu ändern. Das ist das, was auch immer der Spieler hier eingibt. Ich nehme das einfach und sage zur Saite. Mach weiter und wähle es aus. Wenn Sie nun nicht wissen, was eine Zeichenfolge und ein Text ist, handelt es sich im Grunde genommen um Textvariablen. Wenn ich auf Plus klicke, auf die Variable hier und wähle den Typ der Zeichenfolge aus, erstelle ich eine neue und wähle die Art des Textes aus. Sie können hier sehen, ob ich eine Zeichenfolge kompiliere, es ist nur ein Text genau hier. Die Textvariable ist auch ein Satz. Hier kann ich beides als Text schreiben. Was ist wirklich der Unterschied? Der Unterschied besteht darin, dass ein Text in andere Sprachen übersetzt werden kann . Wenn du zum Beispiel dein Spiel ins Deutsche oder in eine beliebige Sprache übersetzen möchtest, Japanisch, Russisch, was auch immer du willst, musst du eine Textvariable verwenden. Wenn du eine Zeichenfolge verwendest, kannst du dein Spiel nicht übersetzen. Eine Zeichenfolge benötigt jedoch weniger Speicher. Es ist immer besser , eine Zeichenfolge zu verwenden, wenn der Text, den Sie schreiben, nicht übersetzt werden soll . Hier nur eine Beschreibung. Aber wenn du mehr darüber wissen willst, geh einfach wieder zu Game instruct.com. Ich habe eine Menge Kurse zu diesem Thema, die du dir für diesen ansehen kannst Ziehen wir zuerst von hier oder klicken wir einfach mit der rechten Maustaste und machen daraus eine Variable Ich nenne es Servername. Was auch immer der Spieler hier schreibt, ich werde es in diese Variable einfügen. Wir speichern diese Informationen. Der Grund, warum ich zuerst eine Zeichenfolge daraus gemacht habe und nicht einfach mit der rechten Maustaste hier klicken und daraus eine Variable gemacht habe, ist, dass man eine Zeichenfolge viel mehr ändern kann. Wenn Sie von hier aus die rechte Zeichenfolge ziehen, können Sie sehen, dass Sie den Text teilen können. Sie können überprüfen, ob es mit etwas anfängt. Du kannst einfach eine Menge damit machen. Du kannst es kürzen, es groß oder klein schreiben. In Zukunft werden wir überprüfen , ob der Spieler quadratische Wörter in den Servernamen schreibt. Und wir können dem Spieler immer sagen, du keinen Server erstellen kannst, wenn du dieses Wort in deinen Servernamen geschrieben hast. Wir verhindern zum Beispiel, dass Spieler das Wort oder etwas Schlimmes schreiben . Und das können wir tatsächlich tun, indem wir eine Zeichenfolge verwenden und das überprüfen. Außerdem können wir überprüfen, ob der Player tatsächlich etwas geschrieben hat und es nicht leer ist. Denn wenn es leer ist, sollten sie nicht in der Lage sein, den Serva zu erstellen Wir überprüfen das gerade mit diesem Lass uns jetzt einfach weitermachen. Als Nächstes werden wir hier nach der Karte suchen, was auch immer sie ausgewählt haben, wenn wir darauf klicken. Ich nenne es CB für Combobox. Nennen wir das einfach Map oder Game Map. Wie auch immer Sie es nennen möchten, es ist variabel. Lass es uns hierher bringen. Nimm es nicht raus. Klicken Sie tatsächlich darauf und klicken Sie auf Auswahl ändern. Für diese Variable ist dies nun das ausgewählte Element , das sie ausgewählt haben. Auch hier können sie all diese Artikel auswählen , die Sie hier aufgelistet haben. Was ich nun tun möchte, nur um es ein bisschen besser zu machen, ich möchte die Spielkarten in einer Aufzählung haben Denken Sie noch einmal daran, dass eine Aufzählung überall da ist , wo Sie diesen Text oder diese Liste hier erstellt haben Lassen Sie uns also weitermachen und eine neue Liste erstellen. Gehen wir zurück zu den Bauplänen. Lassen Sie uns den Enos-Ordner öffnen. Denken Sie daran, wir haben eine Widget-Liste für das Hauptmenü erstellt. Auch hier ist eine Aufzählung nur eine Liste. Gehen wir zu den Entwürfen, erstellen wir eine Aufzählung. Lasst uns das Spielkarten nennen. Ich werde nur alle Spielkarten auflisten, die wir spielen können. Ich klicke ein paar Mal hier hoch. erste war nur zwei, der zweite war Inferno, der dritte war Mirage und der letzte ist Office Okay, geh raus und speichere diese Aufzählung. Nun, was wir hier drinnen machen können, ist, dass wir von hier ziehen und die Zeichenfolge einschalten sagen können hier ziehen und die Zeichenfolge einschalten sagen Zeichenfolge einschaltest, können wir im Grunde sagen, welcher Code abgespielt werden soll , wenn du einfach auf Plus klickst. Lass es uns einfach machen. Du kannst es also sehen, wenn ich hier ein paar Pins hinzufüge, zum Beispiel drei davon. Ich klicke hier oben für den ersten Ich werde hier die Kartennamen Two, Inferno und Mirage schreiben , wenn ich es richtig schreiben kann Das letzte ist Büro. Wir haben jetzt diese Karten. Je nachdem, was Switch ist, genau wie das, was ich dir hier schon gesagt habe, haben wir es tatsächlich innerhalb des Showverstecks gemacht. Wenn ich zurückgehe, haben wir es hier gemacht, die Aufzählung eingeschaltet. Diesmal schalten wir eine Zeichenfolge ein. Wenn der Spieler zwei ausgewählt hat und du sie genau so schreiben musst sie genau so schreiben musst , wie du sie hier geschrieben hast, damit er sie erkennt. Wenn der Spieler zum Beispiel Inferno auswählt, spielt er diesen Code einfach hier ab. Was wir tun werden, ist die Aufzählungsauswahl festzulegen Was das Einstellen der Map angeht, ist es besser, es innerhalb der Spielinstanz zu machen und nicht hier, weil wir sie verwenden müssen, um den Server zu erstellen Lass uns hierher zurückkehren. Lass uns mit der Spielinstanz arbeiten und uns ansehen, was sie hier ist. Klicken wir mit der rechten Maustaste in den Blueprint-Ordner. Gehe zur Blueprint-Klasse. Es gibt hier nicht wirklich so etwas wie eine Spielinstanz. Du musst auf alle Klassen klicken und nach der Spielinstanz suchen. Nun, was eine Spielinstanz ist, es ist eine Instanz, die die ganze Zeit im Spiel läuft. Wenn du der Sera beitrittst, wenn du die Serva herunterfährst, wenn du dich im Hauptmenü befindest oder wenn du im Spiel bist, läuft sie immer Es wird nie etwas heruntergefahren oder gelöscht. Immer wenn dein Spiel läuft, läuft es die ganze Zeit und du kannst nur eine Spielinstanz im Spiel haben Was wir hier machen, ist in der Spielinstanz, normalerweise machst du den Code für die Erstellung einer Serva Auf diese Weise stellst du sicher, dass du nicht alle Informationen löschst wenn du die Lobby erstellst Lobby wechselst oder die Lobby verlässt und so weiter Wir stellen also sicher, dass die Informationen korrekt und ohne Unterbrechung wiedergegeben werden, denn auch hier wird die Spielinstanz niemals heruntergefahren. Lass uns weitermachen und eine erstellen. Gehen wir und klicken es hier an, wählen, nennen wir es zum Beispiel GI, ich nenne es den Namen des Spiels, nämlich Counter Strike. Im Grunde haben wir nur eine Spielinstanz. Das ganze Spiel, das wir entwickelt haben, hat es nicht von hier aus geöffnet. Was ich tun möchte, ist vorerst einfach eine Variable zu erstellen. Ich nenne es „ Ausgewählte Spielkarte“. Ich werde es später für meine Map verwenden , also mach dir darüber keine Gedanken. Aber für den Variablentyp möchte ich Spielkarten auswählen, die Aufzählung, die wir erstellt haben. Fahren Sie fort und kompilieren Sie jetzt, Fahren Sie fort und kompilieren Sie jetzt was wir hier auf dem Erstellungsserver tun können Lassen Sie uns einfach einen Verweis auf den Spielmodus oder die Spielinstanz abrufen , weil wir die Variable hier benötigen Denken Sie daran, dass wir wie zuvor eine Blueprint-Schnittstelle erstellen müssen, wir wie zuvor eine Blueprint-Schnittstelle erstellen müssen um die Referenz erneut zu erhalten Für die Blueprint-Schnittstelle können Sie versuchen, es zum Üben selbst zu machen Wenn Sie sich nicht erinnern, machen wir weiter und machen es ganz schnell Klicken Sie hier mit der rechten Maustaste, erstellen Sie einen Entwurf, eine Entwurfsoberfläche. Nennen wir es Spielinstanz, weil wir versuchen, uns darauf zu beziehen. Nennen wir diese Funktion Get Game Instance Reference. Lassen Sie uns hier eine Eingabe oder eine Ausgabe hinzufügen und nach dem suchen , worauf wir verweisen möchten. Ich versuche, auf meine Spielinstanz zu verweisen. Nennen wir es Spielinstanz und kompilieren wir es. Gehen wir nun zurück zu den letzten Einstellungen der Spielinstanz. Lassen Sie uns weitermachen und diese Schnittstelle hinzufügen, die wir gerade erstellt haben und die als Game Instance Compile bezeichnet wird. Und jetzt siehst du die Funktion, die du gerade erstellt hast. Genau wie zuvor. Wir müssen diese Variable definieren. Da wir uns in der Spielinstanz befinden, werde ich self als Referenz schreiben, damit es weiß, dass es sich bei dieser Variablen um diese Spielinstanz handelt, und kompilieren. Gehen wir jetzt zurück zum Create Serva. Jetzt können wir es benutzen Lassen Sie uns diese Variable einfach im Begin, Play-Event erstellen . Lass uns hier mit der rechten Maustaste klicken. Da wir uns in der Benutzeroberfläche befinden, heißt es nicht Begin Play, Event Construct. Lass uns gehen und es anklicken. Jetzt muss ich Get Game-Instanz sagen, und es ist dieser unter Game Instance. Jetzt haben wir die Standard-Spielinstanz, aber ich muss ihr sagen, dass wir unsere eigene Spielinstanz verwenden müssen. Jetzt können wir diese verwenden. Holen Sie sich die Referenz zur Spielinstanz, die wir gerade hier erstellt haben. Ziemlich verbunden. Klicken wir nun mit der rechten Maustaste auf diese S-Variable bewerben. Und ich werde diese variable Spielinstanz einfach aufrufen. Aber jetzt haben wir die Spielinstanzvariable. Was wir hier unten tun können, wir können diese Spielinstanz nehmen und von hier aus direkt weiterleiten. Und jetzt können wir diese ausgewählte Gamemap-Variable auswählen , die wir erstellt haben. Ich will es eigentlich nicht bekommen. Ich möchte es einstellen. Ich möchte von hier aus Regie führen und sagen, dass Sie die ausgewählte Spielkarte hier einstellen . Wenn es jetzt Staub zwei ist, setzen wir es auf Staub zwei. Ich werde das hier nur ein paar Mal kopieren , damit ich es benutzen kann. Du kannst das mit diesen verbinden. Sie haben Ziele für das Inferno. Wir ändern es in Inferno, Mirage, wir werden es in Mirage umwandeln, und für das Office werden wir es auf Office ahead umstellen und sie nach oben Je nachdem, welche Option sie im Drop-down-Menü auswählen, wird die Variable, die aus der Spielinstanz stammt, entweder auf zwei gesetzt Spielinstanz : Inferno, Und dann können wir es später verwenden wenn wir das Spiel hosten oder erstellen Wir haben diese Informationen hier drin. Lass uns weitermachen und alles speichern. Gehen wir zum nächsten über. 25. 3.04 Slots, Sprache und Privatsphäre: Lass uns jetzt weitermachen und weitermachen. Kehren wir zu dem großartigen Server-Widget zurück, das sich hier befindet. Ich gehe noch einmal zur Grafik. Jetzt wollen wir die Anzahl der Slots ermitteln. Gehen wir zurück zur Grafik. Und hier ist die Anzahl der Slots im Grunde genommen dieselbe. Sie lassen uns es umbenennen und es B Combobox nennen, genau wie wir es für die anderen getan haben. Für diesen werde ich es Anzahl der Steckplätze nennen. Benennen Sie auch die anderen um , nachdem wir sie bearbeitet haben. Die nächste Sprache ist B-Sprache oder Servo-Sprache. Sie können sie auch aufrufen, damit wir wissen, was sie ist. Die letzte ist CB Privacy. Jetzt lassen wir sie alle auswählen, sie variabel machen, sodass wir sie jetzt im Diagramm sehen können . Lass uns weitermachen. Lassen Sie uns zuerst auf die Anzahl der Steckplätze klicken. Klicken Sie erneut auf dieses Ereignis. Jetzt werde ich das ausgewählte Element in eine Ganzzahl umwandeln, bei der es sich um einen numerischen Wert handelt. Text in numerischen Wert. Mit dieser Ganzzahl schreibe ich nun Click Promoted eine Variable und nenne sie Anzahl an Slots. Also mach weiter und verbinde diesen. Und übrigens, bevor ich es vergesse, lass mich einfach zum Widget gehen. Denken Sie noch einmal nach, vergrößern Sie die Benutzeroberfläche. Es ist ein bisschen einfacher für dich zu sehen. Nun haben wir diese Integer-Variable hier in die Variable „Anzahl der Slots“ umgewandelt. Und das ist einfach, es ist hier. Gehen wir jetzt zur Sprache über. Auf die Sprache klicken, nach unten gehen, auf Auswahl klicken, geändert. Nun die Sprache, in die ich gerade gehen werde, genau hier, diese Sprache zu einer Variablen heraufstufen und sie Serva-Sprache nennen Das war es für die Sprache. Das letzte ist jetzt die Privatsphäre. Durch Klicken auf Datenschutz wurde erneut die Auswahl geändert. Nun zum Datenschutz, es kann entweder sein, dass der Spieler angegeben hat, dass es sich um einen öffentlichen Server oder um einen Landserver handelt. Da wir also nur zwei Optionen haben, werde ich eine Bullion-Variable namens use line erstellen Wie Sie normalerweise bei Goldbarren sehen, habe ich im Vordergrund hinzugefügt, weil Sie sehen können, dass Sie das B nicht sehen können, wenn Sie es herausziehen . Das ist nützlich, wenn Sie hier oben suchen Wenn Sie einfach B schreiben, werden alle Goldbarren angezeigt. Für diesen Verwendungszweck kommt es nun darauf an, was der Spieler ausgewählt hat Ziehen wir aus dieser Zeile und sagen wir hier „Saite einschalten und jetzt „Saite einschalten“. Denken Sie jetzt daran, dass Sie für die Zeichenfolge entweder public oder len wählen können . Ich lasse das Ohr an zwei Pins anklicken, einer mit dem Namen public und einer mit dem Namen Len. Lassen Sie uns nun zwei davon heraussuchen. Wenn es als öffentlich ausgewählt wird, wird dieses falsch sein weil wir len nicht verwenden wollen. Wenn len ausgewählt ist, setzen wir diese Variable auf true. Wir können diesen später verwenden. Jetzt sind wir technisch fertig. Aber was wir jetzt tun können, denn es wird Geld geben , wenn wir das nicht tun Und wie Sie hier sehen können, wenn ich auf Play klicke und wenn ich eine Serva erstelle und ich hier nichts auswähle, werden diese niemals gesetzt Wenn ich auf Play klicke, erstelle ich Serva. Ich mache einfach weiter und klicke auf Create Serva. Wenn ich das mache, ohne Werte zu ändern, denken Sie daran, dass wir diese Variablen nur setzen wenn sie bei einer Änderung der Auswahl geändert werden Wenn der Spieler nichts ändert, sind all diese Variablen leer. Lassen Sie uns also weitermachen und einen Standardwert festlegen , damit wir das Spiel nicht überholen. Das Erste, was ich tun möchte, also lasst uns zurückgehen und jetzt nach dem Servonym suchen Später werden wir es ein bisschen besser machen. Im Moment kann es leer sein, es spielt keine Rolle. Die nächste ist die Karte. Lassen Sie uns den Standardwert für die Karte festlegen. Nehmen wir diese Spielkarte genau hier, sagen wir „Ausgewählte Option abrufen“. Von hier aus möchte ich die Spielkarte so einrichten, möchte ich die Spielkarte so einrichten wie wir es hier unten gemacht haben, falls wir sie finden können. Bei diesem hier legen wir die Spielkarte davon abhängig fest. Anstatt das alles zu kopieren, kannst du sehen, ob wir das alles kopieren und einfügen, es sieht nicht wirklich gut aus. Was wir tun können, ist einfach auf Steuerung Z zu klicken. Was wir tun können, wenn es einen Code gibt, den du in andere Teile der Engine oder deines Spiels kopieren und einfügen musst , dann ist es besser, sie mit der rechten Maustaste anzuklicken und sie zu einer Funktion zusammenzuklappen. Nennen wir diese Funktion Set Selected map hier unten im Variablennamen. Wir können sie so ausgewählt nennen. Jetzt können wir es hier verwenden. Ziehen Sie die Funktion heraus, die wir gemacht haben, gehen Sie los und verbinden Sie sie. Und verbinde diesen. Es ist viel einfacher zu benutzen, wenn Sie die Funktion doppelt kombinieren, Sie können sie nur ein bisschen besser aussehen lassen Verlassen Sie die Funktion hier und kehren Sie zum Hauptdiagramm zurück. Ich denke, das ist viel besser. Als Nächstes müssen wir den Standard für die Anzahl der Slots für diese Variable festlegen Slots für diese Variable wir hier unten erstellt haben. Lass uns hier rauf gehen. Nimm die Anzahl der Steckplätze und wähle die gewählte Option aus. Jetzt können wir diese Anzahl an Steckplätzen nehmen. Wir können es einstellen und einfach hierher ziehen. Und es konvertiert diese Zeichenfolge automatisch in eine Ganzzahl für Sie. Jetzt wurde dies ebenfalls standardmäßig eingestellt. Das nächste, was wir einstellen wollen, ist die Sprache, wie wir sie hier haben. Lassen Sie uns wieder die Serversprache abrufen, wählen Sie die Option aus. Nehmen wir diese Serversprache und stellen wir sie einfach so ein. Das nächste, was wir jetzt haben, ist die Privatsphäre. Nun zu diesem Thema müssen wir es hier nicht wirklich einrichten , weil es standardmäßig falsch ist, was bedeutet, dass es standardmäßig öffentlich ist. Wir müssen nicht wirklich hierher kommen und das hier so einstellen , weil es standardmäßig bereits falsch ist, wir müssen hier nichts tun. Was den Servernamen betrifft, so ist er standardmäßig ebenfalls leer. Lass mich einfach hier klicken und diese Sera entfernen. Hier ist es leer und wird erneut kompiliert. Der Server ist standardmäßig leer. Wir müssen es nicht wirklich hier oben im Event-Konstrukt haben . Jetzt kann ich sehen, dass ich einen Fehler gemacht habe, weil sie eigentlich hier oben sein müssen. Stattdessen werde ich sie hier kopieren und einfügen. Und das ist, dass mein Fehler hier unten der richtige ist. Weil sie mit dem Event-Konstrukt beginnen müssen, das im Grunde das Startspiel für die Benutzeroberfläche ist. Und einfach so, jetzt haben wir sie alle. Sie können versuchen, sie zusammenzusetzen. Es ist nicht so chaotisch, jetzt sollte alles in Ordnung sein Jetzt sind wir mit allem hier fertig. Lassen Sie uns kompilieren und zur nächsten Lektion übergehen. 26. 3.05 Den Zurück-Button programmieren: Schauen wir uns nun die Zurück-Schaltfläche an. Gehen wir rüber zum Designer. Klicken Sie darauf, gehen Sie runter und hier, klicken Sie jetzt. Bevor ich das mache, lass mich den Namen ändern , damit ich weiß, was ich hier mache. Das ist der Zurück-Knopf. Und dann klicken Sie auf das Klickereignis. Wenn wir darauf klicken, werde ich es wie zuvor minimieren. Ich gehe runter zur Benutzeroberfläche, gehe zum Hauptmenü, öffne das Hauptmenü. Und ich werde einfach das kopieren, was wir zuvor gemacht haben. Ich werde es hier einfügen. Jetzt wird es für den Player-Controller grau sein , weil wir die Kontrolllinien für den Spieler von hier aus noch nicht definiert haben. Lass uns das tatsächlich hier oben nach der Spielinstanz machen. Ich werde das alles einfach so in die alte Version verschieben und hier klicken, um die Verbindung zu trennen. Ich klicke mit der rechten Maustaste und stelle den Player-Controller ein, um es auszuwählen. Und ziehe und sage Player-Controller-Referenz abrufen. Und es ist das von der Hauptmenüoberfläche, die wir erstellt haben. Geh und wähle diesen einen Gott aus und verbinde ihn. Klicken wir jetzt mit der rechten Maustaste und machen daraus eine Variable namens Player-Controller. Jetzt können wir den Rest der Dinge verbinden. Jetzt haben wir die Player-Controller-Variable. Und Sie können jetzt sehen, dass es normal ist , weil wir es jetzt definiert haben. Wenn wir auf Zurück klicken, möchte ich die Option Create Sera Don't Show schließen Dann möchte ich das Hauptmenü so anzeigen. Klicke auf Play, jetzt Create Sera. Ich gehe zurück, du kannst sehen, dass es jetzt einwandfrei funktioniert. Jetzt haben wir hier eine Kiste. Ich kann sehen, dass dort Access steht. versuche, die Eigenschaftenspiel-Instanz zu lesen, wenn ich hier klicke. Lass uns das zusammen debuggen Jetzt haben wir dieses Problem. Es heißt Access None. Wenn kein Zugriff angezeigt wird, bedeutet das, dass keine Informationen abgerufen werden. Wovon bezieht es keine Informationen? Aus der Spielinstanz? Von diesem. Es heißt, dieser ist leer, was seltsam ist, weil wir ihn bereits definiert haben. Das ist auf dem Create-Server. Wenn ich zum Event-Konstrukt zurückkehre, können Sie sehen, dass die Spielinstanz bereits definiert wurde. Vielleicht habe ich eine Selbstreferenz vergessen. Wenn ich zur Spielinstanz zurückkehre, wenn ich das alles schließe, gehe ich zurück zu den Blueprints, der Spielinstanz Hier werfe ich einen Blick auf die Interfaces. Die Selbstreferenz haben wir aber schon gemacht. Nun, die letzte Sache, die Ära, könnte von hier kommen, weil ich vergessen habe , sie im Projektumfeld zu ändern. Wenn ich auf Bearbeiten gehe, gehe ich zu den Projekteinstellungen, statt hier, gehe ich zu Karten und Modi. Hier ist es. Ich habe vergessen, es in der Instanzklasse des Spiels zu ändern. Die Spielinstanz, die wir verwenden möchten, ist unsere eigene und nicht die Standard-Unreal Engine-Instanz Ich kontere Strike, dann kann ich versuchen, es jetzt zu spielen und zu sehen, ob ich eine Ära zurückkriege und so weiter Ich kann es jetzt schließen und habe keine Fehler. Alles funktioniert gut. Lass uns zur nächsten Lektion übergehen. 27. 3.06 Erstelle eine fortgeschrittene Sitzung: Es ist jetzt an der Zeit, mit den Create Advanced-Sitzungen zu arbeiten. Gehen wir nun in dieser Lektion zur Spielinstanz. Hier wollen wir die Sitzung erstellen. Was wir verwenden möchten, ist mit der rechten Maustaste zu klicken und nach Erweiterte Sitzung erstellen zu suchen. Dieser vom Steam-Plug-In, es ist dieser. Das mag zunächst verwirrend aussehen , weil es so viele Dinge gibt, aber es ist wirklich einfach zu bedienen. Lassen Sie uns versuchen, es hier zusammen zu verwenden. Zuerst möchte ich mit der rechten Maustaste klicken und ein neues benutzerdefiniertes Ereignis erstellen. Für dieses benutzerdefinierte Ereignis werde ich es Serva nennen Das ist der Zweck dieser Veranstaltung. Lass uns weitermachen und diesen damit verbinden. Nun zum Play-Controller, ich ziehe und sage Controller holen. Und wir werden diesen einfach für die zusätzlichen Einstellungen verwenden . Zusätzliche Einstellungen speichern einfach einige Einstellungen für uns, die wir später verwenden können, wann immer wir den Serva im Servo-Browser anzeigen möchten den Serva im Servo-Browser anzeigen Wenn ich von hier wegziehe und sage, du kannst Make Array sehen, was bedeutet das, dass du Dinge kaputt Wenn ich zum Beispiel „Get Act Transform“ sage und das einfach entferne und hier klicke, kannst du sehen, dass ich von hier aus ziehen kann und ich sage „Transformation brechen“. Ich kann es in eine Position, Drehung und Skalierung aufteilen. Das ist eine Transformation. Sie können auch sehen, dass, wenn ich auf etwas in meiner Welt klicke und mir die Transformation ansehe, sie aus einem Ort, einer Drehung und einem Maßstab besteht. Ich kann von hier aus ziehen und Pause sagen. Und ich kann das in die Transformation zerlegen, in die drei Werte oder umgekehrt. Wenn ich diesen Weg gehe und nicht diesen Weg. Wenn ich diesen Weg gehe, kann ich nicht Pause sagen, weil ich nicht breche. Im Grunde mache ich ein Array, das haben wir in diesem Fall gemacht. Lassen Sie mich einfach mit der rechten Maustaste klicken und das Ganze wieder kontextsensitiv einstellen, sodass ich nur relevante Funktionen erhalte, wenn ich suche. Wenn wir nun das Array erstellen, können wir es ziehen und dann erneut erstellen Ich möchte hier eine wörtliche Zeichenfolge für die Sitzungseigenschaft erstellen eine wörtliche Zeichenfolge für die Sitzungseigenschaft Weil ich den Servernamen speichern möchte, egal was der Spieler schreibt Ich möchte das speichern, weil ich es später verwenden muss, um die Seren mit dem richtigen Servernamen anzuzeigen Für den Schlüssel werde ich Servername sagen. Nun zum echten Servernamen Hier tippt der Spieler. Ich möchte hier keinen Wert angeben, da dies der Spieler ist , der den Wert festlegt. Ich ziehe es einfach in das Event hier hinein, sodass es automatisch eine Variable für mich erstellt. Ich werde es Servername nennen. In Ordnung, jetzt haben wir das erledigt. Als Nächstes möchte ich auch die Anzahl der Spieler speichern. Wenn Sie vergessen haben, was Sie tun müssen, können Sie jederzeit zum Menü UI Made zurückkehren und den Create-Server öffnen. Hier können Sie sich ansehen, welche Werte Sie benötigen. Die nächste Sache ist zum Beispiel die Anzahl der Spieler. Jetzt brauchen wir nicht wirklich ein Plug-In, weil die Karte, denken Sie daran, dass wir auf dem Erstellungsserver gemacht haben, wenn ich zur Funktion „ Ausgewählte Karte festlegen“ gehe, wir einfach diese ausgewählte Spielkarten-Aufzählungsvariable, wann immer der Spieler die Karte auswählt, haben wir diesen Wert tatsächlich hier in der ausgewählten Spielkarte Anstatt das hier einzubinden, können wir diese Informationen für später speichern , wenn wir diesen Server erstellen Lassen Sie uns einfach damit prahlen und wieder make literal string sagen make literal string Mach weiter und wähle diesen aus. Ziehen wir das hier hinein und es konvertiert Ihre Aufzählung automatisch in eine Zeichenfolge Ich werde diese eine Servermap einfach so nennen. Jetzt haben wir auch diese Informationen. Als Nächstes geht es um die Anzahl der Spieler, die sich verbinden können. Und ich werde das hier reinziehen und ich nenne es Anzahl solcher Slots. Das nächste ist die verwendete Leitung. Ich werde das hier reinziehen. Wir können es einfach Nutzland nennen. Das ist in Ordnung. Mal sehen, was wir vergessen haben. Wenn ich zurück zum Create-Server gehe, haben wir die Map, wir haben die Slots. Im Moment fehlt uns die Sprache. Für die Sprache. Das möchte ich auch speichern. Wenn ich einen Pin erstelle, ziehe ich ihn von hier und mache wieder wörtlich eine Zeichenfolge Ich nenne das, lassen Sie mich stattdessen einfach das Plaque-Steuerelement hierher ziehen Für dieses werde ich es Serva Language nennen. Auch bei der Sprache wählt der Spieler sie aus. Ich schließe es einfach hier an und ziehe es über die verwendete Zeile und nenne es kompilierte Serva-Sprache Jetzt speichern wir auch die Sprache, die Privatsphäre, die wir haben, weil wir diese gebrauchte Zeile haben Wir haben nicht wirklich mehr Informationen, falls du das jetzt willst. Sie können die Dinge einfach ein bisschen sauberer aussehen lassen indem Sie hier auf diese Zeilen klicken. Sie können zum Beispiel auf diese klicken. Drücken Sie Que auf Ihrer Tastatur, um sie gerade zu halten und so weiter. Also werde ich einfach ein bisschen besser aussehen. Damit ist alles in Ordnung. Fertig. Jetzt haben wir im Grunde den ganzen Teil hier abgeschlossen. Die anderen Dinge sind in Ordnung, wir können natürlich int zulassen. Sie können auch wieder eine Option dafür haben, wenn Sie möchten. Sie können jederzeit zusätzliche Optionen hinzufügen , ob Sie Einladungen zulassen möchten oder nicht. Sie können ein Kontrollkästchen aktivieren, wenn Sie zusätzliche Einstellungen wünschen. Sie können sie jederzeit hier anschließen und den Spieler ebenfalls entscheiden lassen. Aber jetzt, wo wir den Server hier drüben erstellt haben, wollen wir nur die Sera erstellen Wir wollen der Karte beitreten, die ich von hier herziehe. Und sagen wir, öffnen Sie Ebene für Objektreferenz. Jetzt können Sie auswählen, welche Ebene Sie öffnen müssen. Jetzt habe ich nicht mehr so viele Ebenen, also verwende ich einfach meine Hauptkarte als Standardebene. Denken Sie daran, dass der Spieler Spielkarten ausgewählt Wir müssen auswählen, auf welcher Spielkarte wir spawnen möchten Lassen Sie uns diese ausgewählte Spielkarte ziehen und von hier ziehen und sagen, Spielkarte einschalten hier. Dann kannst du es einfach hier einstecken. Jetzt können wir für die beiden die Karte öffnen, das Inferno Wir können die Inferno-Karte öffnen und so weiter. Nun, ich habe nicht so viele Karten in meinem Projekt. Ich werde dieses Mal einfach kopieren und einfügen und vielleicht dieselbe Karte öffnen. Und ich kann einfach eine Nachricht auf den Bildschirm drucken und sehen, ob ich die richtige Karte geöffnet habe. Jetzt möchte ich Ihnen eine Möglichkeit zeigen, wie Sie diesen Code optimieren können , damit Sie es nicht auf diese Weise tun müssen. Ich werde all diese löschen. Und was Sie tun können, ist, einen ausgewählten Knoten zu verwenden. Wenn Sie von hier aus ziehen und nach Select suchen, fahren Sie fort und wählen Sie den entsprechenden Auswahlknoten hier im Index aus. Fahren Sie fort und ziehen Sie Ihre Aufzählung hierher nach unten. Jetzt sagt es Ihnen, wenn ich all das hier mit dem Erfolg verbinde, denken Sie daran, dass Sie das bei Erfolg verbinden müssen und nicht diesen Weil wir der Sera immer dann beitreten wollen, wenn sie die Servera erfolgreich erstellt Jetzt wird es die Karte auswählen, je nachdem, welche Option hier in der ausgewählten Spielkarte ausgewählt ist Wenn sie auf Inferno gesetzt ist, wird sie diesen Inferno-Wert wählen und wir müssen ihr sagen, welche Karte für die Inferno-Karte verwendet werden soll Ich werde einfach die Karte Main für alle auswählen. Außerdem können Sie, wenn Sie möchten, einfach zufällige Karten auswählen. Ich kann einfach diese Showcase-Map öffnen und diese Waffen-Schaukarte öffnen. Lassen Sie uns diese zufälligen Karten, die ich habe, tatsächlich öffnen. Auch das Showcase-Level für Militärdokumente oder was auch immer. All diese. Jetzt wird es funktionieren. Jetzt können Sie sehen, dass der Code viel sauberer ist als die Verwendung des Schalters für die Aufzählung, wodurch wir diese offene Ebene kopieren und einfügen Wir können es einfach mit einem machen, indem wir den ausgewählten Knoten verwenden. Und ich werde das alles hier oben einfach löschen. Und jetzt sind wir im Grunde fertig. Das war's für die Create Sera. Wir haben jetzt alle Optionen , die wir für die Erstellung der Seren benötigen Gehen wir zur nächsten Lektion über und programmieren die Schaltfläche Create Servera 28. 3.07 Den Create Server Button programmieren: Wir sind jetzt wieder hier in der Create Serva-Benutzeroberfläche. Und gehen wir hier zur Grafik über. Gehen wir zum Event-Graph. Und jetzt kodieren wir die Nummer der Create Serva-Schaltfläche. Ich glaube nicht, dass wir dafür eine Variable erstellt haben. Klicken wir auf die Schaltfläche, nennen wir sie Schaltfläche, Create Serva. Ich kann Serva buchstabieren, und es ist variabel Klicken wir nun darauf und drücken auf das Ereignis, auf das nicht geklickt wurde. Wenn ich darauf klicke, möchte ich nur den Serva hosten. Ich möchte die Instanzvariable des Spiels nehmen, die Prahlerei von hier haben wir schon, und sagen, Serva erstellen Lassen Sie uns das Create-Event ausführen , das wir in der vorherigen Lektion erstellt haben Für den Servonamen ziehe ich einfach diese Servoyme-Variable hinein, die wir ziehe ich einfach diese Servoyme-Variable hinein Sowie die Anzahl der Steckplätze. Das Gleiche gilt für die Sera-Sprache und dasselbe für die Use-Zeile Wir sind hier fertig. Das sollte funktionieren. Wenn ich jetzt auf Play klicke, erstelle ich Serva. Ich wähle zum Beispiel den Namen aus. Hier wähle ich eine Karte aus, was auch immer ich will. Lass es uns öffentlich machen. Wenn ich auf Create klicke, sollten jetzt die Server erstellt Siehst du, jetzt bin ich in dem Showcase , den ich erstellt habe. Jetzt zeigt es mir die Hauptmenüübersicht oder die Hauptmenü-Benutzeroberfläche. Weil wir keine Standard-K-Modi ausgewählt haben. Wir haben unser Hauptmenü. Aber wenn ich einfach meine eigene Map öffne, die ich codiert habe, wenn ich hier sehe, was ich ausgewählt habe, wenn ich Inferno öffne, sollte das korrekt funktionieren Wenn ich auf Plano klicke, warte ich einfach noch einmal darauf Sobald es geöffnet ist, wähle ich dieses Mal Inferno weil ich das richtige Modell dafür habe , und dann Serva erstellen Ich lasse es einfach auf Inferno sein und dann werde ich den Serva kreieren Jetzt sollte sie hier drin sein, du kannst sehen, dass sie richtig funktioniert Jetzt bin ich wirklich in meinem Spiel, ich kann als Terrorabwehr spielen und jetzt spiele ich tatsächlich richtig. Alles funktioniert so, wie es soll. Dieses Create-Servo funktioniert jetzt. Das nächste, woran wir arbeiten müssen, ist der Servo-Browser und so weiter. Aber bevor wir das tun, möchte ich Ihnen zeigen, wie Sie dieser Benutzeroberfläche eine UI-Animation hinzufügen können Benutzeroberfläche eine UI-Animation , um sie ein bisschen interessanter zu gestalten. Wenn Sie nicht daran interessiert sind, UI-Animationen zu erstellen, können Sie jederzeit mit der nächsten Lektion fortfahren. Aber wenn Sie daran interessiert sind, lassen Sie uns gleich drüber springen. 29. 3.08 Animation der Benutzeroberfläche vom Create Server hinzufügen: Okay, lassen Sie uns weitermachen und einige Animationen für die Benutzeroberfläche erstellen einige Animationen für die Benutzeroberfläche , um sie ein bisschen interessanter zu machen Ich möchte, dass, wenn ich auf Play klicke, die Benutzeroberfläche hier auf dem Bildschirm erscheint und dann auch wieder verschwindet, wenn ich auf Zurück klicke. Lass uns weitermachen und das machen. Lassen Sie uns hier unten im Animationsschritt einige Animationen hinzufügen Wenn Sie sie nicht sehen, wenn sie für Sie so aussieht, können Sie jederzeit hier unten klicken. Und dann fügen Sie im Layout, um es hier oben zu haben, eine Animation hinzu. Für die neue Animation nenne ich sie, lass uns darauf klicken. Jetzt wollen wir das Ganze animieren , nur um es einfacher zu machen Übrigens kannst du es mit der Animation super komplex machen und es wird gut aussehen Aber nur um es für diesen Kurs etwas schneller zu machen, animiere ich dieses Overlay I, ich nenne es hier einfach Overlay V. Nennen wir es einfach Create ich nenne es hier einfach Overlay V. Nennen wir es Serva Klicken wir auf Track und wählen Create Serva aus. Sie müssen es übrigens ausgewählt haben , bevor es angezeigt wird. Hier oben. Klicke hier runter, verwandle dich hier. Bei der Transformation kannst du jetzt mit den Übersetzungen dort spielen, wo es auf dem Bildschirm ist . Für das Y werde ich es erhöhen und es vom Bildschirm nach unten verschieben. Vielleicht 1.500 so, sagen wir 0,65. Ich möchte, dass es auf dem Bildschirm angezeigt wird, aber ein bisschen höher als normalerweise Vielleicht 150 minus 150. Dann, nach einer Sekunde, wenn ich Null sage, ist die Animation jetzt aus dem Bildschirm. Und es erscheint auf dem Bildschirm, geht etwas weiter nach oben als sonst und dann geht es so auf den Bildschirm. Nur ein sehr einfacher Effekt. Auch hier habe ich gesagt, dass Sie es komplexer machen, weil Sie jede einzelne Schaltfläche und jeden Text animieren können , wenn Sie möchten Aber im Moment haben wir nur diese Animation hier. Immer wenn wir rückwärts gespielt haben, geht es zurück. Das ist der Zeitpunkt, an dem du die Zurück-Taste drückst. Okay, jetzt haben wir das erledigt. Lass uns alles kompilieren und speichern. Was wir jetzt in der Grafik machen können, lasst uns hier rüber gehen und es codieren. Immer wenn wir den Create Serva hier öffnen, wenn wir mit dem Event-Konstrukt beginnen, verschieben wir das alles Ich werde die Animation abspielen. Gehen wir zum Animations-Tab, wählen Servo-Anim erstellen“ und sagen „Animation abspielen Fahren Sie fort und wählen Sie das verbundene aus. Nun zur Anzahl der Loops für die Wiedergabeanimation. Ich möchte nur, dass es einmal abgespielt wird. Wenn du einen Loop hast, willst du ihn auf unbestimmte Zeit spielen , oder? Null. Lass uns auf Steuerung Z klicken. Eins ist in Ordnung für mich. Das sieht gut aus. Lass mich das alles näher bringen. Wenn wir jetzt hier unten auf die Schaltfläche „Zurück“ klicken, möchte ich die Animation abspielen. Lassen Sie uns das alles einfach wegziehen. Nehmen Sie die Animation noch einmal auf. Animation. Und lassen Sie uns es verbinden. Und hier drinnen ist die Menge der Flupes eins. Aber im Spielmodus werde ich es jetzt rückwärts spielen, anstatt es einfach zu entfernen, weil Sie jetzt sehen können, dass wir tatsächlich einen Bug haben Wenn ich es wieder im neuen Editor-Modus abspiele, erstelle ich ein Sera und gehe zurück, jetzt kannst du sehen, dass die Animation nicht abgespielt wird Und das liegt daran, dass wir es sofort nach dem Start der Animation vom Bildschirm entfernen sofort nach dem Start der Animation vom Bildschirm Anstatt das zu tun, kopieren wir das einfach hierher und sagen „Endzeit abrufen“. Wir haben die Endzeit und fügen eine Verzögerung hinzu. Fügen Sie eine Verzögerung um die Zeit hinzu, die zum Abspielen dieser Animation benötigt wird. Und lassen Sie mich das alles miteinander verbinden. Lassen Sie uns nun kompilieren und auf Play klicken. Und teste es von Serva aus. Es erscheint per Klick Komm zurück. Es wird auf diese Weise entfernt. Fantastisch. Jetzt haben wir auch eine cool aussehende Animation in unserem Spiel. Wenn du es etwas schneller spielen möchtest, kannst du die Wiedergabegeschwindigkeit jederzeit ändern. Ich werde es auf 1.1 ändern, anstatt auf nur eins. Es ist ein bisschen schneller und du kannst versuchen, es nach Belieben zu optimieren Okay, ich finde, alles sieht gut aus. Also lass uns alles speichern und mit dem nächsten weitermachen. 30. 4.01 Erstellen des Server-Browser-Widgets: Lassen Sie uns nun weitermachen und die Serva-Browser-Widgets erstellen. Schauen wir rechts in die Benutzeroberfläche des Hauptmenüs. Jetzt werde ich etwas schneller als sonst fahren, weil wir jetzt Erfahrung damit haben. Lassen Sie uns die Benutzeroberfläche erstellen. Nennen wir diesen einen Serva-Browser Bevor wir etwas tun, gehen wir zum Hauptmenü des Spielers. Öffne hier den Player-Controller. Fügen wir es dem Widget hinzu, das wir zuvor erstellt haben. Wenn ich das Show-Widget erneut öffne, klicke ich mit der rechten Maustaste und sage Widgets erstellen. Fahren Sie fort und erstellen Sie hier den Serverbrowser , den wir gerade erstellt haben. Machen Sie ihn zu einer Variablen und nennen Sie ihn Sera-Browser. Ich muss es nur richtig buchstabieren. Okay, so wie das. Ziehen wir das ab und sagen „Zum Viewport hinzufügen“. Lassen Sie uns den Server-Browser aufrufen, rechten Maustaste klicken und ihn in einen validierten GET-Wert umwandeln , falls er nicht gültig ist Wenn er gültig ist, erstellen wir ihn Wir machen einfach weiter und fügen es dem Viewport hinzu. Lassen Sie uns diesen Serverbrowser auch hierher ziehen. Setzen Sie sie wieder zusammen, damit es schön aussieht. Lassen Sie uns nun zum Widget zum Ausblenden übergehen. Ziehen Sie den Sera-Browser konvertieren Sie ihn in ein validiertes Get Dann wieder aus Erens entfernen. Auf diese Weise können wir es bei Bedarf vom Bildschirm entfernen. Auch hier, wenn man sie zusammenbringt, sieht das gut aus. Kompilieren und speichern. Jetzt haben wir das erstellt. Stellen wir sicher, dass alles funktioniert. Lassen Sie uns sicherstellen, dass wir zum Hauptmenü zurückkehren. Schauen Sie sich den Servo-Browser an, gesagt den Servo-Browser. Schauen wir uns das Hauptmenü an. Immer wenn ich auf das Joint Sera klicke, wird das Hauptmenü geschlossen und der Servo-Browser geöffnet Den Code haben wir schon im Hauptmenü gemacht. Lassen Sie mich hier einfach ein Bild hinzufügen , um sicherzustellen, dass es geöffnet ist. Wenn wir darauf klicken, fügen Sie hier einfach ein Bild hinzu. Lassen Sie uns den Farbton ändern, damit wir nicht wieder davon geblendet werden Wenn ich auf Play, Join Servo klicke, wird es hier geöffnet Und ich habe das nicht kompiliert. Es hat mich blind gemacht. Lass mich das vorerst einfach löschen. Es funktioniert perfekt. Lassen Sie uns alles speichern und mit dem nächsten fortfahren, dem wir den Servo-Browser entwerfen. 31. 4.02 Das Server-Browser-Widget entwerfen: In Ordnung, für die Gestaltung des Server-Browsers. Lass es uns für diesen öffnen. Ich werde dir nur wieder zeigen, was wir tun werden. Sie haben es visuell und es ist viel einfacher zu verstehen. Das versuchen wir zu tun. Wir versuchen hier eine obere Leiste zu haben , in der wir nach einem Server suchen können. Wir können die Sprache wählen, den Landserver, wir können volle Server verstecken und wir können auch die Server aktualisieren. Dann haben wir die Server hier unten in einer Liste. Und das ist es einfach. Ich kann sehen, dass uns für diesen auch eine Zurück-Schaltfläche fehlt . Wir können also immer weitermachen und hier oben oder vielleicht hier unten eine Zurück-Schaltfläche hinzufügen . Es spielt keine Rolle, wir werden es herausfinden. Aber das versuchen wir zu entwerfen. Lass mich das einfach zur Seite ziehen und lass uns wieder anfangen. Wir benötigen ein Canvas-Panel , um hier loszulegen. Dann haben wir eine vertikale Box , weil wir zwei Elemente übereinander haben. Zuerst benötigen wir ein Overlay, weil ich ein Hintergrundbild für meine Benutzeroberfläche benötige Wir ziehen das und verankern das vertikale Feld an der mittleren Ausrichtung 0,50 0,5 und die Position 20,0 Jetzt befindet sich dieses vertikale Feld in der Mitte Lassen Sie uns nun für dieses Overlay das vertikale Feld einfach etwas größer machen und die Position auf Null ändern Wir haben wieder etwas Platz, mit dem wir arbeiten können. Für dieses Overlay muss ich nun ein Bild hinzufügen, weil ich für dieses einen Hintergrund oder meine Benutzeroberfläche benötige für dieses einen Hintergrund oder meine Benutzeroberfläche Lassen Sie uns einen der Hintergründe hinzufügen Wenn ich zu den Bildern gehe, füge ich einfach das hinzu, was wir zuvor verwendet haben , dieses blaue Panel Ich werde es hinzufügen. Ich werde auf dieses Overlay klicken In der Überlagerung ist alles in Ordnung, also klicke ich auf das Bild und richte es horizontal und vertikal Jetzt sieht es verschwommen aus, denn auch hier müssen wir das Feld „Raw as two“ aufrufen und den Rand um 0,5 erhöhen Dadurch wird es viel besser aussehen. Jetzt können wir jederzeit die Größe dieses Overlays hier ändern die Größe dieses Overlays hier Aber anstatt das zu tun, fügen wir Inhalte hinzu Und dieses Hintergrundbild wird anpassen und hier großartig aussehen. Ich möchte ein horizontales Feld hinzufügen, weil ich alle meine Elemente hinzufügen muss. nun ein horizontales Feld mit diesem horizontalen Feld hinzufüge, werde ich es vertikal in der Mitte ausrichten. Aber ich werde es horizontal bis zur anderen Seite ausrichten . Also nimmt es den ganzen Platz ein. Lassen Sie uns einige Elemente hinzufügen. Es sieht also besser aus, wenn ich einfach zur Benutzeroberfläche und zum Hauptmenü zurückkehre und den Text hier einfach aus dem Hauptmenü kopiere. Weil ich das Steuerelement C nicht wirklich neu erstellen muss. Gehen Sie zurück in das horizontale Feld Steuerelement V, um es einzufügen Für diesen Text werde ich stattdessen die Größe auf 16 ändern Was den Abstand hier angeht, werde ich einen Abstandshalter hinzufügen, bevor ich das Eingabefeld hinzufüge. hier oben für das Leerzeichen einen Abstandshalter hinzufüge, gebe ich ihm 15 im X. Dann gehe ich zurück zu dem Gate I, das wir Und ich kopiere einfach diesen Steuerung V zurück in das horizontale Feld. Wir haben es hier drin. Nun zu diesem Feld können Sie sehen, dass es den gesamten Bildschirm oder das gesamte Hintergrundbild ausfüllt . Was wir jetzt tun können, ist, dass wir immer auf das horizontale Feld klicken können . Versuchen wir bei der Polsterung links etwas Polsterung zu geben Ich gebe ihr ein Bild von 30, und rechts werde ich ihr ebenfalls eine Polsterung von 30 geben Nach oben gebe ich ihm eine Polsterung von 20, nach unten ebenfalls Wir haben hier etwas Platz, mit dem wir für diesen Text arbeiten können. Ich kann sehen, dass er etwas gelockert ist, und das liegt daran, dass wir ihn kopiert haben und er eine Polsterung hat Ich werde Null in die Polsterung schreiben . Es hat nichts Nun, ich denke, die Höhe dieser Eingabeleiste ist etwas zu hoch. Ich werde nur die Größe reduzieren. Denken Sie daran, dass Sie in der Polsterung hier unten immer von 20 auf vielleicht 12 ändern können 20 auf vielleicht 12 Ich denke, es sieht jetzt ein bisschen besser aus für die Größe. Darüber müssen wir uns vorerst keine Gedanken machen. Wir können hier einfach auf Auffüllen klicken. Jetzt wird es den gesamten Bereich ausfüllen. Aber auch das liegt daran, dass wir mehr Elemente hinzufügen müssen. Und es wird viel kleiner sein. Auch hier werde ich einen Abstandshalter hinzufügen. Duplizieren Sie dieses Steuerelement D und legen Sie es hier ab. Ich setze die Größe auf 35. Dann werde ich diesen Text kopieren. Lass es fallen. Nennen wir das, die nächste ist die Sprache. Gehen wir nun zurück zu Create Sera. Ich werde das Sprachfeld hierher kopieren und die Steuerung V zurücknehmen. Sie können sehen, Steuerung V zurücknehmen. dass hier für diesen Abstandhalter viel Copy-Paste verwendet Ich werde es auch kopieren. Hier unten drüber hinweg. Jetzt haben wir diesen wieder bereit für diese Sprache. Klicken Sie erneut auf Füllen. Es füllt sich genau wie diese Leiste hier. Lassen Sie uns diesen Text jetzt noch einmal kopieren. Hier unten drüben vorbei. Nennen wir es für diesen. Nur Server, es werden nur die Landserver angezeigt. Fügen wir diesen Abstandshalter hier unten hinzu. Als Nächstes müssen wir das Kontrollkästchen hinzufügen, das wir noch nicht erstellt Suchen wir hier, in der horizontalen Box, nach Checkbox Racket horizontalen Box, nach Checkbox Nun zu dieser Checkbox: Wenn ich einfach hineinzoome, damit Sie sie tatsächlich für diese Checkbox sehen können , klicken wir auf den Stil für den Stil Standardmäßig ist es deaktiviert. Ungeprüftes Bild. Schauen wir uns hier einfach unsere Buttons an. Knöpfe. Jetzt habe ich dieses für dich gemacht, es heißt Checkbox. Klicken Sie und ziehen Sie es so hierher. Und das Gleiche, bevor wir das tun, bevor wir es kopieren, schauen wir uns die Größe an. Was die Größe angeht, gehe ich von 40 mal 40 aus. Die Größe der Checkbox ist für die Farbe etwas größer. Sie können sehen, dass es ein bisschen dunkel ist. Es sieht nicht so aus wie dieses. Es ist viel dunkler hier. darauf klicke, ändere ich die Vordergrundfarbe, anstatt sie zu erben, entfernen, sie weiß zu machen Klick, okay, jetzt ist es die wahre Farbe. Also fahren Sie fort und halten Sie die Umschalttaste gedrückt und klicken Sie mit der rechten Maustaste, und halten Sie dann die Umschalttaste gedrückt und klicken Sie mit der linken Maustaste, um es in all diese einzufügen. Jetzt sollte es korrekt sein. Lassen Sie mich jetzt einfach den Stil für das unmarkierte Bild über dem Hoverd kopieren Stil für das unmarkierte Bild über dem Hoverd Und wenn die Taste für den Hover gedrückt wurde, ändere ich ihn für den gedrückten Mauszeiger auf Hover Ich werde es so ändern, dass die Taste korrekt sein sollte. Lassen Sie uns das alles jetzt minimieren. Wir haben auch das geprüfte Bild. Lass uns weitermachen und einen Blick darauf werfen. Und es ist hier. Und wenn ich noch einmal damit prahle, ändere ich die Größe auf 40 mal 40, dann kopiere ich es auf die anderen beiden Ändert die zweite auf die ausgewählte Druckmaschine, die letzte auf die gewählte Jetzt haben wir sie alle. Sie können es jederzeit testen, indem Sie auf einen Play and Joint-Server klicken. Und dann können Sie versuchen, sich diesen anzusehen und festzustellen, ob er ordnungsgemäß funktioniert und ob alles in Ordnung ist. Lass uns zurückgehen. Lasst uns hier auch einen Abstandshalter hinzufügen. Ich werde das kopieren Klicken Sie hier, drücken Sie V, um es einzufügen, und schon fügen Sie diesen Abstandhalter Jetzt machen wir das Gleiche hier drüben. Ich werde diesen Abstandshalter kopieren. Fügen Sie es hier ein. Und dann lassen Sie uns kopieren, tatsächlich können Sie es hinter dem Abstandhalter über diesem Kontrollkästchen sehen hinter dem Abstandhalter über diesem Kontrollkästchen Deshalb klicke ich normalerweise manchmal auf dieses horizontale Kästchen und füge um sicherzugehen, dass es richtig eingefügt wird Fügen wir ihn für diesen Text ebenfalls ein. Nennen wir diesen Text De-Fall-Server . Kopieren wir noch einmal den Abstandhalter, kopieren wir die Checkbox in die Vergangenheit Kopieren wir den größeren Abstandhalter hierher, vorbei. Nun, hier haben wir den Refresh-Button. Gehen wir zurück zum Hauptmenü. Ich werde dieses kopieren, Steuerung C. Ich gehe zurück zum Server, Browsersteuerung V. Jetzt haben wir es. Nennen wir diesen Text frisch. Alles sieht gut aus, einfach so. Jetzt machen wir es ein bisschen größer. Ich werde auf diese klicken, damit ich die gestrichelten Linien sehen kann Damit ich meine Flasche hier sehen kann. Und ich werde es einfach so ein bisschen größer machen. fülle nicht den ganzen Bildschirm aus, Ich fülle nicht den ganzen Bildschirm aus, sondern gebe ihm auch etwas Platz. Also so etwas hier für diesen Button, ich kann sehen, dass er winzig ist. Und das liegt auch daran, dass wir für dieses Overlay für den Button eine gewisse Polsterung haben Ich werde Null in die Polsterung schreiben, damit sie etwas größer wird Und jetzt sieht es viel besser für diese Polsterung oder für den Abstand hier drüben Ich werde ihm stattdessen einen Abstand von 50 geben. Es gibt also etwas mehr Platz für die Größe dieses Eingabefeldes. Auch hier werde ich es etwas kleiner machen, acht mal acht oben und unten. Es wird also kleiner, aber wie Sie sehen können, füllt es sich tatsächlich vertikal. Also werde ich auf diesen mittleren klicken. Jetzt ist es zu klein geworden, also werde ich es wieder auf 12 mal 12 erhöhen. Und das ist ein bisschen zu klein, also müssen wir es noch viel weiter erhöhen. Vielleicht 20 mal 20, und das ist viel besser, 20 mal 20. Aber die Ausrichtung ist hier, in der Mitte ausgerichtet. Okay, jetzt sind wir mit diesem Teil hier oben fertig. Was ich will, dass du jetzt tust, ist hier unten. Das war das erste Overlay. Wir haben bereits diese vertikale Box. Ich werde wieder ein Overlay über diesem vertikalen Feld hinzufügen wieder ein Overlay über diesem vertikalen Feld Jetzt ist es unter diesem oberen Teil. Ich werde auch einen Abstandshalter hinzufügen, also platzieren wir diese beiden für den Abstandshalter Ich gebe ihm den Wert 15, wenn ich darauf klicke, Wert 15 im Y für dieses Fügen Sie hier erneut ein Bild für das Bild ich erneut verwenden werde, das blaue Panel Wenn ich zu Bildern gehe, finde ich das blaue Panel, ziehe es wieder hinein, für dieses Bild möchte ich das Ganze füllen. Nun zu diesem Overlay, anstatt nur diesen Teil auszufüllen, klicke ich auf dieses Overlay und fülle den Rest der Benutzeroberfläche für dieses Auch hier werde ich es auf Feld 0.5 setzen, damit es besser aussieht. Und hier ist es. Innerhalb dieses Overlays benötigen wir ein vertikales Feld bei Edit In diesem vertikalen Feld benötigen wir auch ein Feld in einem Scrollfeld dafür, dass dieses vertikale Feld Sie dafür, dass dieses vertikale Feld vertikal und horizontal gefüllt wird. Für die Scrollbox ist alles gut. Wir müssen jetzt nichts ändern, um hier das vertikale Feld hinzuzufügen , da ich dem Rand dieses Hintergrunds keine Elemente hinzufügen möchte . Für die Polsterung links und rechts gebe ich 35 mal 35 und oben 28 mal 28. Wir haben etwas Platz und wann immer wir Inhalte hinzufügen, fügen wir sie hier hinein und nicht oben drauf Okay, vor dem Scrollfeld brauchen wir ein horizontales Feld, weil wir dafür etwas Text hinzufügen müssen . Und dann werde ich einen Abstandshalter hinzufügen. Ich habe das Leerzeichen später gesagt. Lassen Sie es uns vorerst einfach hier oben entwerfen. Ich werde diesen Text kopieren. Geh runter in mein horizontales Feld. Klicken Sie auf Strg V, um es einzufügen. Bei diesem wird es nun Servername heißen. Dann werde ich ein paar Mal erneut auf Control V klicken . Ich kopiere diesen Text hier ein paar Mal. Der erste heißt Servername. Dann brauchen wir die Karte. Wir brauchen die Spieler, Anzahl der Spieler, die sich auf dem Server befinden. Der letzte heißt, wie sehr er mag, jetzt so, wie er sein sollte. Wir wissen es im Moment nicht wirklich , weil ich diesen Text ausrichten muss , unabhängig davon, wie groß der Server ist und so weiter. Deshalb können wir den Abstand zwischen diesen momentan nicht wirklich festlegen. Lass uns hier einfach aufhören, alles speichern, sicherstellen, dass alles funktioniert. Bevor du das schließt, können wir mitmachen, du kannst hier Dinge schreiben, du kannst die Sprache ändern, du kannst sie ankreuzen Du kannst auch auf „Aktualisieren“ klicken und schon sieht alles super aus, und schon sieht alles super die Größe und alles andere angeht Wir können später weitermachen. Aber vorerst müssen wir den Server selbst entwerfen, bevor wir den Teil hier unten fertigstellen können. Lassen Sie uns vorerst alles schließen. Und lassen Sie uns zur nächsten Lektion übergehen. 32. 4.03 Das Serverkarten-Widget entwerfen: Die endgültige Benutzeroberfläche, die wir entwerfen werden , sieht ungefähr so aus Hier haben wir die Sprache und wir haben den Servernamen und wir haben die Karte. Wie viele Spieler gibt es in der Sera? Und auch der Ping für die Sera. Der Grund, warum wir die Serverkarte selbst entwerfen und nicht im Serverbrowser, ist, dass es sich um eine Dose handelt Es enthält dynamische Werte, genau wie wenn Sie einen Shop erstellen. Nehmen wir an, du hast ein RPG-Spiel und du hast quasi einen Item-Shop, das Ich, den Item-Shop, du kannst es gestalten Die einzelnen Karten für die Gegenstände sind jedoch eigentlich von selbst entworfen, für die Gegenstände sind jedoch eigentlich von selbst entworfen weil wir nicht wirklich jeden einzelnen Code kopieren und einfügen müssen jeden einzelnen Code kopieren und einfügen müssen dann gibt es viel Copy-Pasting und es ist nicht wirklich gut, es ist eine Menge Arbeit Was wir tun können, ist, einen Artikelcode zu erstellen. Dann können wir den Wert einfach dynamisch ändern und den hier eingefügten Code kopieren In diesem Fall erstellen wir einen Server. Den Server, den wir dynamisch erstellen, werden wir hinzufügen , je nachdem, was der Spieler als Werte hinzugefügt hat. Dann wird er hier unten hinzugefügt. Lassen Sie uns weitermachen und diesen entwerfen. Lass mich einfach rüber, lass uns das alles vorerst schließen. Lass uns mit der rechten Maustaste klicken, einen neuen Plan erstellen. Nennen wir das Serva. Lass es uns jetzt hier drinnen öffnen. Lassen Sie uns erneut nach dem Canvas-Panel suchen. Lass es uns hinzufügen. Jetzt ändere ich die gewünschte Bildschirmgröße und stelle sicher, dass es wieder so ist Für Laptops entwerfen wir das. Nun, was ich hier entwerfen möchte, zuerst brauchen wir einen Hintergrund und wir brauchen den Button. Ich gehe einfach zurück zum Hauptmenü. Mach weiter und kopiere das zuerst. Tastensteuerung C, Steuerung V. Für dieses Overlay ändere ich nun den Ankerpunkt so, dass er in der Mitte Dann die Ausrichtung, 0,50 0,5 und Position Y, X und y00. Was die Größe angeht, können wir das immer später entscheiden, weil Sie die Größe des Overlays auf diese Weise ändern können Auch hier musst du eine 00 machen, wieder das X und Y. Aber machen wir uns vorerst keine Gedanken über die Größe Lass uns einfach den Inhalt ändern. Was ich zuerst will, ist die Flagge, weil ich zeigen möchte, in welcher Sprache der Server ein Bild aufnimmt. Ich werde hier nur Icons hinzufügen. Das Bild ist vor dem Text, und es wird hier in der Mitte sein, vertikal. Bevor ich das mache, können Sie sehen, dass sie übereinander liegen , weil wir kein horizontales Feld hinzugefügt haben suchen nach einem horizontalen Feld, fügen es hier unten hinzu, fügen das Bild hinzu und auch den Text dazu. Was nun das horizontale Feld angeht, werde ich es in der Mitte ausrichten und es dann horizontal für den Text füllen , den ich in der Mitte ausrichten werde. Entfernen Sie die gesamte Polsterung, die es hat. hier also Null laufen lassen, kompilieren Sie jetzt für dieses Symbol Wir haben noch keine Icons. Das ist für mein Spiel, aber für die Flaggen, weil wir die Sprachen brauchen, möchte ich, dass du in dein Kursmaterial eingehst , das ich dir gegeben habe. in diesen Kursmaterialien Gehen Sie in diesen Kursmaterialien zur Benutzeroberfläche und wir haben hier Symbole. Ich möchte nur, dass du sie nimmst, sie ins Spiel ziehst, und hier haben wir sie. Für diese schreibe ich nun Auswahl bearbeiten“ in der Eigenschaftenmatrix. Normalerweise ist es immer gut , was die Leveldetails angeht. Um die Texturgruppe auf UI zu ändern, wird sie korrekt gelesen und die Schaltflächen oder die Benutzeroberfläche sehen auch in der Komprimierung gut aus. Für die Komprimierung werde ich es auf Benutzerschnittstelle zwei D ändern es auf Benutzerschnittstelle zwei . Jetzt musst du nur noch über die Eigenschaftsmatrix schreiben, klicken und bearbeiten. Wenn Sie mehrere Elemente gleichzeitig bearbeiten. Andernfalls können Sie einfach, wenn Sie nur ein Objekt haben, doppelklicken, es öffnen und dann die Komprimierungseinstellungen auf das ändern, und dann die Komprimierungseinstellungen auf das ändern was wir gerade gemacht haben, und auch auf die Texturgruppe. Okay, jetzt hast du das. Gehen wir zurück zu der Benutzeroberfläche, die wir hier entwerfen . Lass uns auf das Bild klicken. Lass mich einfach hier klicken und nach dem Symbol suchen. Lass uns einfach eines der Symbole hinzufügen. Es ist nicht wirklich wichtig. Auch hier handelt es sich um dynamische Werte, die wir später ändern werden. Nun zum horizontalen Feld, nur damit es ein bisschen besser aussieht. Klicken wir nun auf das Overlay. Machen Sie es einfach etwas größer damit wir etwas Platz zum Arbeiten haben Und drücken Sie hier Null im X für das horizontale Feld links und rechts. Ich will nicht, dass es hier am Rand ist. Ich werde es links, 25, rechts 25, etwas aufpolstern , ungefähr so. Für die Größe Y. Für die Größe Y gebe ich ihr eine Größe von 104, vielleicht so etwas Vielleicht ist das zu groß. Wir können es immer ein bisschen kleiner machen und wir können es später testen. Aber im Moment ist das in Ordnung. Lassen Sie uns die Position auf Null setzen. Jetzt ist der erste Server erstellen. Fügen wir einen Abstandhalter zwischen der Flagge und dem Text hinzu. Der Abstandshalter für diesen ist 15 und der X. Das ist jetzt der Server Nennen wir es hier einen Servernamen. Ich werde zum Beispiel nur Server sagen. Wir können zum Beispiel Inferno nur sagen, weil wir genau das spielen Sagen wir Chinesisch, weil es ein chinesischer Server ist. Nehmen wir an, es wurde realistischerweise so genannt realistischerweise so Danach benötigen wir die Art der Karte, die wir spielen. Ich kann das einfach so steuern, dass es dupliziert wird. Ich kann zum Beispiel sagen, dass wir zu zweit gegen einen Strike spielen. Und lassen Sie uns auch den Spacer duplizieren. Füge es hier hinzu. Nun das Problem mit dem Hinzufügen eines Abstandshalters Lassen Sie uns dieses Overlay einfach etwas größer machen Ich gebe ihm einfach etwas mehr Platz und positioniere ihn dann im X. Das Problem beim Hinzufügen eines Spacers ist jetzt, wenn wir einen längeren Servonamen schreiben Ich möchte das nicht tun, weil innerhalb des Server-Browsers wir diese innerhalb des Server-Browsers an einer festen Position haben Wenn das weggeschoben wird, passt es nicht zum Kartentitel hier. So wie wir das machen, klicken wir statt eines Abstandshalters auf den Text Stattdessen geben Sie ihm hier die gewünschte Mindestbreite. Fahren Sie fort und erhöhen Sie die gewünschte Mindestbreite auf etwas, das Ihnen gefällt. Sie können sehen, dass es sich noch nicht ändert , weil es länger ist. Wenn Sie jedoch einen bestimmten Wert erreichen, wird der andere Text allmählich verdrängt. Für diesen gebe ich ihm einen Wert von 685. Ich habe ihn ein bisschen getestet, und für den anderen Wert gebe ich 225 an Sie müssen ihm nur einen Wert geben, bei dem Sie sicherstellen , dass diese Breite größer ist als der Servername. Sonst wird aussteigen. Jetzt haben wir das. Als Nächstes werden wir diesen Text duplizieren und die Anzahl der Spieler aufschreiben. Die Anzahl der Spieler könnte zum Beispiel 100 verbundene Spieler und die maximale Anzahl von 100 Spielern innerhalb des Servers sein. Oder dieser. Ich werde die Breite etwas kleiner machen , weil wir das alles nicht wirklich brauchen. Vielleicht 115, die letzte Sache, lass uns diesen duplizieren und ihn nennen. Jetzt füge ich einen Abstandshalter hinzu, weil mir das Minimum nicht genug Platz Also werde ich hier oben einen Abstandshalter hinzufügen. Ich werde die Abstandhalter zum horizontalen Feld hinzufügen. Leg es für diesen Abstandshalter her, ich gebe etwa 150 Für diesen Ping schreibe ich zum Beispiel so etwas Frau, das ist ein sehr verzögerter Server. Für das Minimum konzipiert mit. Ich lasse es einfach auf 115 stehen. Das ist in Ordnung für mich. Lassen Sie uns jetzt kompilieren und jetzt fügen wir es dem Serverbrowser hinzu, damit wir tatsächlich sehen können , wie es aussieht. Lass uns hier oben nach WB suchen. Und Sie können nach dem Servercode suchen. Und Sie können es anklicken und auf das Scrollfeld ziehen. Wenn Sie darauf klicken und es in das Scrollfeld ziehen, sieht es so aus. Wenn du jetzt auf die gestrichelten Linien klickst , um sie zu entfernen, möchte ich sie füllen. Sie können sehen, dass es hier und hier etwas Leerraum an den Seiten hat . Wir müssen es etwas länger machen, damit es passt. Wenn ich hier zum Overlay gehe und mir die Overlay-Größe ansehe, versuchen wir es mit etwa 1.650 Compile und schauen So sieht es jetzt aus. Bevor ich mehr Platz hinzufüge, weiß ich auch, dass es eine Bildlaufleiste geben wird. Wenn ich auf das Scrollfeld klicke, gehe ich runter und klicke auf Scrollfeld immer anzeigen. Es wird hier sein. Nun zur Größe, ich werde sie einfach weiter erhöhen, 1.690, vielleicht kompilieren und nochmal nachschauen Jetzt füllt es das Ganze aus. Und wir haben Platz für den Scroll-Teil. Wir können es immer ein bisschen kleiner machen, wenn wir müssen. Was wir jetzt tun können, Sie können sehen, dass wir etwas mehr Platz haben, mit dem wir arbeiten können. Ich kann also auf dieses klicken und es kann es vergrößern , dieses auch. Wir können versuchen, all diese zu vergrößern, wenn wir wollen. auf diesen Text klicke, werde ich ihn hier in der minimalen Designbreite vergrößern. Ich brauche nicht wirklich, dass die anderen größer sind. Vielleicht kann die Karte 250 sein, sonst die andere, diese, der Servername ist der wichtigste. Achte nur darauf, dass du es nicht zu weit herausschiebst. Etwas in der Art. 965 hier, das sieht gut aus für die Flagge Ich denke, es ist ein bisschen zu drücken, also werde ich auf die Flagge klicken und ihr eine Polsterung geben Auf der Unterseite von zwei ist etwas nach oben gedrückt. Auch für das gesamte horizontale Feld können wir auf das horizontale Feld unten klicken auf das horizontale Feld unten ihm einen Abstand von vier geben Es ist leicht nach oben gedrückt. Wir können es auch etwas größer machen. Klicke auf das Overlay. Ich werde das etwas größer machen Nicht viel. So etwas wie das hier. Ich finde, es sieht toll aus. Nun zum Text, ich werde ihn etwas kleiner machen. den gesamten Text und die Größe auswählen , sollten Sie etwa 16 sein. Stattdessen sieht alles gut aus. Lassen Sie uns kompilieren, indem wir auf das Overlay klicken und sicherstellen, dass die Position 00 ist und dass X und Y vorhanden sind. Gehen wir dann zurück zum Server-Browser Und jetzt können wir uns ansehen, wie es aussieht. Es sieht viel besser aus, wenn ich D kontrolliere, um die Server zu duplizieren. So wird es aussehen. Jetzt brauchen wir oben und unten etwas Polsterung für die Knöpfe , weil es nicht wirklich gut aussieht Gehen wir zurück zur Serverkarte und klicken auf eine Schaltfläche. Ich gehe nach oben und unten und gebe dem Ganzen eine Polsterung von fünf bis fünf Auch hier werde ich den Button etwas größer machen , weil er jetzt etwas kleiner ist Ich mache die Schaltfläche einfach größer etwa an dieser Nullstelle im Y. Nochmals kompilieren, zurück gehen, und jetzt sieht es so aus, jetzt sieht es viel besser aus. Jetzt können wir sie tatsächlich hier für das horizontale Feld ausrichten . Ich werde diesen Servernamen pushen. Er liegt über diesem. Ich gebe ihm eine Polsterung nach rechts, nach links, genau genommen 75, ungefähr so Jetzt sieht es hier rechts viel besser aus. Anstatt hier den ganzen Weg zu gehen, gebe ich ihm wieder einen Abstand von 20 hinter dem Servernamen, wir können einfach die gewünschte Breite ändern, ihn einfach vergrößern und alle anderen Texte wegschieben , bis er hier oben ist Ich zoome einfach rein und vergewissere mich, dass die Linien korrekt sind, 965 etwa so Klicken Sie auf die Karte, ändern Sie jetzt die gewünschte Mindestbreite, machen Sie größere Spieler, einer ist über dem anderen, 1250 Sie erneut auf die Spieler klicken wird der Log-p über dem Ping 265 angezeigt. Dieser braucht nicht wirklich einen. Du kannst hinzufügen, wenn du willst. Es hat eine gewisse Breite, es knickt nicht aus, vielleicht nur 95. Jetzt können Sie sehen, dass es viel besser aussieht. Fügen wir einen Abstandhalter zwischen dem Titel und den Servern hinzu. Mal sehen, ob wir den Spacer tatsächlich hinzugefügt haben. Wir haben es nicht getan. Ich werde nach Spacer suchen Es ist hier in den Overlays, also klicke ich darauf. Wir haben diese horizontale Box. In der Scrollbox müssen wir einen Abstandshalter zwischen diesen hinzufügen. Und im Y hier werden es vielleicht so etwas wie zehn sein Noch kleiner, wir können es kleiner machen. Statt zehn können wir sechs daraus machen. Jetzt können wir kompilieren, es sieht wirklich gut aus. Bevor wir etwas tun, ändern wir auch die Bildlaufleiste, weil sie momentan nicht wirklich gut aussieht. Wenn Sie viele Server duplizieren , können Sie außerdem sehen, dass sie vom Bildschirm verschwinden und das Scrollfeld nicht funktioniert. Das liegt daran, dass Sie im Scrollfeld hier klicken und die Größe festlegen müssen, die gefüllt werden soll. Wenn Sie es auf Füllen einstellen, können Sie sehen, ob es tatsächlich funktioniert. Wenn ich hier auf den untersten Teil, den Server, klicke , kannst du sehen, dass er tatsächlich korrekt läuft. Das funktioniert. Denken Sie daran, es auf Füllen einzustellen. Lassen Sie uns jetzt das Scrollfeld reparieren. Wenn ich auf das Scrollfeld klicke und mir den Balkenstil hier für das normale Daumenbild ansehe , werde ich mir ansehen, was ich habe. Wenn ich zu den Bildern gehe, nehme ich diesen einen Fortschrittsbalken, der gelb gefüllt ist. Ich werde dieses Bild anklicken und es hierher ziehen. Ich glaube nicht, dass ich ein besseres Bild habe. Vielleicht dieser, aber ich denke, dieser ist besser. Ich werde das als Feld mit 0,5 am Rand verwenden. Dann werde ich das einkleben. Das Offenkundige und das Schlechte. Für den Drag habe ich kein separates Bild, ich werde nur die Farbe ein bisschen ändern Daca, wenn wir das Feld für die Dicke der Bildlaufleiste heraussuchen, werde ich dieses Feld auf etwa 32 erhöhen Und was die Polsterung angeht, müssen wir ihr eine gewisse Polsterung geben, damit sie sich nicht überschneidet müssen wir ihr eine gewisse Polsterung geben, damit sie sich nicht überschneidet. Wenn ich das öffne, kann ich sechs nach links und rechts schreiben müssen wir nicht wirklich, also schreibe ich hier einfach Null. Oder die Spitze ist zwei. Denn die Unterseite ist zwei ist auch in Ordnung. Jetzt können Sie sehen, dass es sich auch mit unseren Servern überschneidet auch mit unseren Servern müssen wir beheben. Gehen wir zurück zur Serverkarte und wir müssen sie hier etwas kleiner machen. Schauen wir uns das mal an. Wir müssen es etwas kleiner machen. Sie können es auch auf der anderen Seite sehen. Aber anstatt es zu verkleinern, können wir auf dieses vertikale Feld klicken. Und wir können die Größe hier einfach erhöhen. die Größe der vertikalen Box zu erhöhen wird auch funktionieren, die Größe der vertikalen Box zu erhöhen. Wie Sie sehen können, wenn Sie die Strichlinien aktivieren, befinden Sie sich immer noch auf dem Bildschirm. Versuche es so gut wie möglich aussehen zu lassen. Und ich denke, so etwas hier auch für die Größe in X und Y oder besser gesagt, kann es auch etwas größer machen, es sieht besser aus. Vielleicht können wir hier so etwas anzeigen, oder wir hören so auf, weil ich manchmal in der Mitte stehenbleibe, der Spieler kann tatsächlich sehen hier unten mehr Server gibt. Du kannst durch die Position scrollen. Auch hier werde ich es auf Null mal Null setzen. Und hier haben wir den Serverbrowser zusammen mit dem Server hier, dessen Werte wir dynamisch ändern werden. Jetzt ist alles so konzipiert und funktioniert einwandfrei. Lass uns auf Play und dann auf Joint Sera klicken. Sie können auf den Server klicken. Alles funktioniert gut. Wir haben den Sound, den Sound auch hier. Wir können die ankreuzen. Dieser funktioniert. In diesen können wir schreiben. Alles funktioniert so, wie es erwartet wird. So sieht es übrigens meinem Vier-K-Monitor aus, und so sieht es auf dem Laptop aus. Sie können auf dem Laptop sehen, dass es fast den ganzen Bildschirm ausfüllt. Für meinen Vier-K-Monitor sieht es jedoch so aus. Auch hier können Sie es jederzeit weiter skalieren , indem Sie hier nach unten klicken. Und dann kannst du mit diesen Skalierungseinstellungen spielen und sie auch auf meinem Bildschirm größer aussehen lassen. Wenn Sie möchten, können Sie jetzt jederzeit eine Zurück-Schaltfläche erstellen. Lassen Sie uns das wirklich schnell machen. Wenn ich diesen Button einfach hier kopiere, kopiere ich ihn einfach. Control C, ich klicke hier, ich bin wieder hier. Steuerung V, in diesem horizontalen Feld. Ich werde es hierher ziehen. Ich werde einfach zurück sagen, manchmal sogar besser für die Zurück-Schaltfläche. Sie können immer ein Like-Symbol haben, Sie können immer ein Like-Symbol haben damit es keinen Platz für diese Rückseite beansprucht. Ich werde wieder einen Abstandshalter machen, Kontrolle hier drüben. Die Steuerung V hier unten. Und ich werde es einfach hierher ziehen. Jetzt haben wir auch Platz dazwischen. Nun zu dieser Schaltfläche hier: Anstatt sie so groß zu machen, Anstatt sie so groß zu machen dass sie nicht zu viel Platz beansprucht, können Sie im Overlay immer auf Auto klicken , anstatt auf Füllen Und dann kannst du den Text links und rechts etwas auffüllen, damit er nicht so winzig aussieht Links gebe ich ihm eine Polsterung von sagen wir 15 und rechts 15, gib ihm etwas Geben wir ihr 25, 25, sogar ein bisschen mehr. 30 mal 30, so etwas in der Art. Du kannst es sogar ein bisschen größer machen Lass es uns tatsächlich etwas größer machen. Es ist nicht schwer, 35 mal 35 zu drücken , ungefähr so. Jetzt können Sie sehen, dass auch die Zurück-Taste funktioniert, und Sie können ihr eine andere Farbe geben, wenn Sie möchten. Sie können deren Farben jederzeit ändern . der Zurück-Taste können Sie also weitermachen und sie beispielsweise wieder auf die zuvor verwendete ändern . Es war der grüne, so etwas in der Art, wenn du willst, aber ich werde einfach alles in der gleichen Farbe haben. Ich finde, es sieht gut aus. Jetzt haben wir auch einen Zurück-Button. Okay, alles funktioniert richtig. Lass uns zur nächsten Lektion übergehen. 33. 4.04 Den Server zur Liste hinzufügen: Jetzt sind wir bereit, die Programmierung für die Benutzeroberfläche vorzunehmen, da wir mit dem Design fertig sind Lassen Sie uns also gleich loslegen. Lassen Sie uns den Sera-Browser hier drinnen öffnen. Bevor ich etwas mache, möchte ich eigentlich auf diesen klicken Vollständige Server ausblenden. Ich werde es ändern. Ich denke, für mich ist es besser, leere Server zu verstecken, weil ich denke, es ist besser, wenn ich einfach die leeren Server verstecke oder niemand spielt. Ich denke, das ist auch für diese Server besser. Lassen Sie uns weitermachen und sie alle löschen , denn jetzt werden wir sie hinzufügen. Wir haben nur das Scrollfeld hier unten. Okay, alles sieht gut aus. Klicken wir nun auf die Schaltfläche Aktualisieren. Nennen wir diese Schaltfläche Refresh. Gehen wir nun zum Ende und klicken auf Jetzt. Lassen Sie uns das alles vorerst einfach löschen. Mit dem Klick auf den Refresh-Button wollen wir Sessions finden Lasst uns von hier aus zuschlagen und suchen. Ich finde Session Advanced, Advanced Session hier. Suchen Sie nach Sessions Advanced. Fahren Sie fort und wählen Sie diesen für den Player-Controller aus. Lass uns noch einmal zuschlagen und Controller spielen. Fahren Sie fort und wählen Sie es aus, um die maximalen Ergebnisse zu erzielen. So viele Server werden Sie finden und ich werde nur neun Server finden. Machen Sie einfach weiter und suchen Sie nach so vielen Servern unter Verwendung von Land. Das werden wir später hinzufügen. Machen Sie sich vorerst keine Sorgen darüber. Wir werden nach allen Arten von Servern suchen. Ihr könnt sehen, ihr könnt zwischen Client-Servern suchen , die Spieler erstellt haben, oder dedizierten Servern, die auf einem anderen PC laufen. Sucht nur nach allen Servern. Für die Filter funktioniert dieser eigentlich nicht. Ich habe auch darüber recherchiert, weil ich versucht habe , es zu benutzen und es funktioniert tatsächlich nicht Wir werden einen anderen Knoten verwenden, der aufgerufen wird , um nach einem Filter zu suchen Sie können die Ergebnisse dieser Filtersitzung sehen. Wir werden stattdessen diesen verwenden. Alles andere scheint in Ordnung zu sein. Ich werde hier einfach weitermachen. Wann immer wir die Ergebnisse für die Server finden, wollen wir von hier aus ziehen und sagen, dass wir für jede Schleife eine Schleife machen werden Anstatt sie hier oben zu verbinden, werde ich sie von hier trennen und sie mit dem Erfolg verbinden. Stattdessen sind es immer die Server, die wir gefunden haben , wenn wir Server finden. Jetzt werden wir alle Server durchsuchen , die wir gefunden haben. Für jeden von ihnen, für jeden der Server wollen wir Widgets erstellen. Wir wollen die Serverkarte erstellen , weil wir jedes Mal, wenn wir einen Server finden , ein Serverkabel erstellen wollen und wir wollen diese Serverkarte hier hinzufügen. Gehen wir zurück zur Serverkarte. Wir müssen diese Sitzung hinzufügen. Das ist die Sitzung, die wir gerade gefunden haben. Dies ist der Server, dem wir beitreten möchten. Gehen wir zur Serverkarte. Öffnen Sie jetzt die Serverkarte, sie ist raus. Ich möchte im Diagramm eine neue Variable erstellen und diese eine gefundene Sitzung im Typ Suche nach Blueprint-Sitzungsergebnissen aufrufen und diese eine gefundene Sitzung im darauf klicken, um sie zu kompilieren Jetzt hier drüben möchte ich das in die Variable einfügen, also speichern wir es als Variable Hier haben wir einige Informationen, die Sie in eine editierbare Instanz umwandeln und beim Spawn verfügbar machen müssen editierbare Instanz umwandeln und beim Spawn verfügbar Und mach weiter und kompiliere. Das bewirkt, dass es hier erscheint. Wenn Sie auf Datei jetzt klicken und alle Knoten aktualisieren, hier unten angezeigt, sodass Sie es per Drag-and-Drop hineinziehen können. Jetzt haben Sie tatsächlich einige Informationen für diese Sitzung in dieser Variablen, die Sie später verwenden können. Denn denken Sie daran, dass wir im Servercode diese Schaltfläche haben , über die wir dem Server beitreten, wenn wir auf das Kabel klicken, wann immer wir auf die Karte klicken. In Zukunft können wir diesem Server beitreten, da wir jetzt die Informationen für jeden Server haben, den wir finden. Lassen Sie uns weitermachen und einen Servercode erstellen. Fügen wir diesen Servercode zur Serverliste hinzu. Für die Scrollbox nenne ich sie Scrollbox SB und dann Serverliste. Mach weiter und mach es zu einer Variablen. Ziehen wir es jetzt hierher. Ziehen Sie von hier und sagen Sie Kind hinzufügen. Jetzt fügen wir dieses Kabel hinzu. Bevor wir das tun, denken wir daran, dass Sie auch die alten Server entfernen müssen, wenn Sie aktualisieren. Wenn Sie erneut auf Aktualisieren klicken , müssen Sie die alten Server entfernen. Um das zu tun, gehen wir wieder hierher zurück. Vorher machen wir noch einmal das feine Session-Rümpeln in der Serverliste und löschen dann die Kinder. Wir werden die alten Server aus der Liste löschen und dann werden wir wieder anfangen, nach neuen Servern zu suchen. Das sollte schon funktionieren. Wenn ich jetzt auf Play klicke, lass mich hier tatsächlich zwei Spieler erstellen. Und ich spiele als Listen-Server. Und ich klicke auf Play, erscheint auf meinem zweiten Bildschirm. Jetzt auf meinem Bildschirm hier werde ich einfach einen zufälligen Server erstellen, indem ich auf Erstellen klicke. Und ich werde versuchen , ihm hier beizutreten. Wenn ich auf Aktualisieren klicke, sollte ich hier etwas warten da es einige Zeit dauert, Server zu finden. Und sobald es aktualisiert wurde, sollte es hier erscheinen und ich sollte es sehen können. Ich kann es hier sehen Sie können sehen, dass der Name falsch ist, all diese Informationen sind falsch. Das liegt daran, dass wir die Informationen für den Servercode nicht wirklich codiert haben . Aber ich kann meinen Server sehen. Das ist der Server , den ich hier erstellt habe. Wenn ich darauf klicke, passiert nichts, weil wir die gemeinsame Sitzung noch nicht codiert haben, aber wir wissen, dass sie jetzt funktioniert. Und jetzt heißt es, dass Widgets nur lokale Kontrollgesetze zugewiesen werden können. Und lass uns sehen, was hier passiert. Hier drüben sagt es uns, dass nur lokale Spielersteuerungen das hier erstellen können. Und das liegt übrigens daran, dass es für dich, für dein Spiel, nicht passieren wird. Weil ich zu zweit spiele und mich daran erinnere, dass das Hauptmenü im Einzelspieler-Modus ist. Das liegt daran, dass ich versuche, als Abhörserver auf demselben Computer in einem Einzelspieler-Hauptmenü zu spielen. Aus diesem Grund passiert das, wenn Sie es auch reparieren möchten , damit Sie nicht ständig das Geld bekommen Sie können jederzeit mit der rechten Maustaste hier klicken und nach dem lokalen Player-Controller suchen und diesen Controller mit dem Namen Is Local Player Controller eingeben Lassen Sie uns weitermachen und es hier hinzufügen , bevor wir etwas mit der Benutzeroberfläche machen , damit es uns nicht diese Ära gibt. Nochmals, nimm die Filiale auf und verbinde sie. Wenn es sich um einen lokalen Player-Controller handelt, machen Sie weiter und erledigen Sie alle UI-Aufgaben. Wenn nicht, lass uns nichts tun. Sie können jederzeit weitermachen und auf Play klicken. Versuchen Sie erneut, einen Server wie diesen zu erstellen, versuchen Sie, Mitglied zu werden und so weiter. Es sollte uns die Ära geben, wenn es so ist wie früher, aber wir haben es jetzt behoben. Es sollte uns also eigentlich nicht die Ära geben. Aber Sie können sehen, dass wir keine Ära haben wir in den Menüs hin und her wechseln können. In Ordnung, das war es also. Wir sind in der Lage, Sessions zu finden, aber wir werden es während des Unterrichts komplexer machen . Lassen Sie uns nun zur nächsten Lektion übergehen. 34. 4.05 Hinzufügen eines Indikators zur Serveraktualisierung: Das Problem, das ich momentan damit habe, ist, dass ich bei jeder Aktualisierung keine Anzeige erhalte, ob ich die Server tatsächlich aktualisiere oder wofür ich gewinne Der Spieler wird etwas verwirrt sein. Stellen Sie sich vor, ich klicke jetzt auf Aktualisieren und es ist leer und ich weiß nicht, was passiert. Ich muss wissen, dass es tatsächlich die Server aktualisiert. Lass uns das schließen und lass uns das erstellen. Das ist jetzt sehr, sehr einfach. Wir müssen nur ein paar Texte hinzufügen damit der Spieler weiß, dass es erfrischend ist , wenn ich nur einen Text kopiere. Das ist zum Beispiel Control C. Ich gehe runter, mal sehen, wir haben das horizontale Feld. Vertikales Feld, und hier haben wir das Overlay. Ich werde es hier tatsächlich in dieses Overlay-Steuerelement V einfügen dieses Overlay-Steuerelement V Wir werden sagen, Server aktualisieren, bitte. Wir werden sagen, Server aktualisieren, bitte warte, ich werde diesen duplizieren , denn wenn wir keine Server finden, werde ich den ersten einfach verstecken. Damit ich den zweiten sehen kann. Dieser wird sagen, dass keine Server gefunden wurden. Das ist der Zeitpunkt, an dem wir suchen, aber es gibt eigentlich keine Server. Jetzt haben wir diese beiden. Dieser und dieser. Du kannst einfach einen von ihnen verstecken, wenn du willst, damit er nicht komisch aussieht. auf den ersten klicke, rufe ich Refreshing Servers auf. Beim zweiten rufe ich eine Textnachricht auf. Keine Server, ich klicke nicht auf beide und mache sie zu zwei, das ist variabel. Gehen wir nun zur Grafik hier. Wenn wir nach einer Sitzung suchen, nehmen wir den Text für die Aktualisierung der Server. Lassen Sie uns den Text ziehen und sagen, dass Sichtbarkeit die Sichtbarkeit festlegt. Jetzt zeigen wir es auf dem Bildschirm und wir werden es als testbar anzeigen Auch hier interagieren wir nicht mit der Maus damit. Sobald es Sessions hier gefunden hat, sollten wir es ziehen und sagen, Sichtbarkeit auf versteckt setzen , denn jetzt haben wir Server gefunden und brauchen das nicht mehr zu sehen. Wenn wir jedoch keine Server finden, sollten wir das nehmen und sagen, Sichtbarkeit auf Testbar setzen Sichtbarkeit auf Testbar Denn jetzt wollen wir zeigen , dass wir keine Server gefunden haben Woher wissen wir, dass das so ist? Denn wenn die Ergebnisse Null sind, wenn Sie dieses Array nehmen, sagen wir die Länge, wenn die Länge dieses Arrays, sagen wir, wenn sie größer als Null ist, dann haben wir eine Sitzung gefunden. Wir können hierher ziehen und sagen, dass die Filiale verbunden ist. Nun sagen wir, wenn sich die Länge dieses Arrays hier ergibt, ist sie größer als Null. Das bedeutet, dass wir einen Server gefunden haben. Dann können wir weitermachen und das alles machen. Wenn wir jedoch keinen Server gefunden haben, wenn er leer ist, müssen wir diesen Server anzeigen , auf dem wir keinen Server gefunden haben. Denken Sie jetzt daran, dass auch dieser versteckt werden muss. Immer wenn wir anfangen, gehe ich einfach weg. Füge es hier ein, lass es uns auf versteckt und verbunden setzen. Jetzt werden wir diesen trotzdem entfernen, auch wenn er Null oder Null ist. Nachdem wir die Seite bei Erfolg aktualisiert haben, lassen Sie uns weitermachen und das ausblenden. Ich werde es einfach wieder hier unten verbinden. Lass uns die Dinge einfach wegschieben. Es gibt Platz. Drück das so runter. Machen Sie einfach weiter und doppelklicken Sie auf die Notizen hier, um Umleitungen zu erstellen und alles gut aussehen zu lassen In Ordnung, das sollte reichen. Wenn wir kompilieren und auf Play klicken, nur um zu sehen, was wir hier machen, lassen Sie mich einfach einen Server erstellen. Auf dem Bildschirm hier erstelle ich einen, Lass uns dem Server beitreten. Du kannst es sehen, wir können es sofort sehen. Ich muss tatsächlich etwas dagegen tun. auf den ersten klicken, wollen wir das nur verstecken. Keine Server gefunden. sollten wir nach unten gehen und die Sichtbarkeit auf versteckt setzen. Kein Server, dieser ist versteckt. Nun, für diesen sollte er die Server sofort aktualisieren , wenn ich mich mit dem Serverbrowser verbinde. Ich sollte nicht einfach warten, bis ich auf die Aktualisierungstaste drücke, denn es ist nervig , dass Sie die Aktualisierungstaste drücken müssen , wenn Sie zum ersten Mal dem Serverbrowser beitreten. Was wir tun können, ist, diesen Code zum Event-Konstrukt hinzuzufügen . Auch das ist wie ein Begin, Play-Event. Nochmals das Event-Konstrukt, anstatt das Ganze einfach zu kopieren , wähle ich einfach alles aus. Der gesamte Code hier, lassen Sie uns zu einer Funktion zusammenfassen. Jetzt werden Sie feststellen, dass Sie nicht in eine Funktion zusammenfallen können. Sie werden hier sehen, dass Sie nicht zu einer Funktion zusammenklappen können, wenn ich mit der rechten Maustaste klicke und die Seite zusammenfalle, um zu einer Funktion zu gelangen. Das liegt daran, dass Sie bei zeitgesteuerten Ereignissen, wenn Sie diese Uhr in der Funktion sehen, eine Funktion wie diese nicht zu einem Ereignis zusammenfassen können Klicken wir stattdessen mit der rechten Maustaste und reduzieren wir sie zu einem Makro. Der Unterschied zwischen einer Funktion und einem Makro ist das Makro Sie können tatsächlich mehrere Ausführungspins erstellen. Lassen Sie uns vorerst einfach den Namen ändern. Nennen wir es Find Sessions. Nun fügen wir es innerhalb dieses Makros einfach hier innerhalb eines Makros hinzu. Der Unterschied zwischen einer Funktion und Makro liegt in der Funktion Ich kann etwas tun und ich kann diese Funktion hierher ziehen und damit arbeiten. einem Makro können Sie dasselbe tun, aber Sie können tatsächlich mehrere Ausführungspins haben. Ich kann mehrere Ausführungspins haben. Und ich kann hier mit den Hinrichtungsstiften noch mehr Dinge tun. Das ist das Alleinstellungsmerkmal eines Makros, aber im Moment löschen wir es einfach anstelle des Makros. Lassen Sie mich die Dinge einfach hier platzieren. Es ist sauber in der Ausgabe. Wir können hier einfach eine Ausgabe machen, wenn Sie nur eine Ausgabe ohne hier haben möchten. Aber du kannst es tun, das Geheimnis ist dann einfach zu schreiben. Wenn du dann schreibst, wird der Text verschwinden. Lass uns einfach eine Verbindung herstellen. Alles sieht toll aus. Lassen Sie uns diese neue Funktion löschen, die ich erstellt habe. Nun zur Fine-Session, wir können sie hineinziehen und mit dem Event-Konstrukt verbinden. Ich klicke auf Play und dann auf Joint Server. Es sollte das jetzt tun, es sollte sagen, dass keine Server gefunden wurden, weil ich eigentlich noch keinen Server erstellt habe, der wartet. Jetzt heißt es, dass keine Server gefunden wurden. Wenn ich erneut auf Aktualisieren klicke, weil ich jetzt tatsächlich einen Server erstellt habe. Jetzt sollte es meinen Server anzeigen. Es sollte den gesamten Text verstecken, den ich hier höre. Jetzt sollte es erscheinen. Jetzt geht's los. Wenn ich erneut auf Aktualisieren klicke, sollte es wieder erscheinen. Alles funktioniert richtig, wie es soll. Jetzt weiß der Spieler, dass die Server aktualisiert werden. Und lass uns weitermachen. 35. 4.06 Ergebnisfunktion für Sitzungen anzeigen: Ordnung, also was ich tun möchte , ist hier, in den feinen Sessions, trennen die feinen Sessions vom Filtern zu Klicken Sie mit der rechten Maustaste auf die Suche nach einem Filter und schon haben wir diesen Filter, der Sessionergebnisse filtern heißt. Diesen möchte ich in einer separaten Funktion erstellen , anstatt ihn einfach fortzusetzen und hier zu tun. Denn wenn wir filtern, wenn wir auf Spielen klicken und dem Server beitreten, filtern wir nach Landservern. Wenn wir nach Sprachen filtern, stellen Sie sich vor, Sie klicken auf eine von ihnen und müssen alle Server erneut aktualisieren . Ich möchte das nicht tun. Nehmen wir zum Beispiel an, wir sind Engländer, wir ändern es auf Deutsch. Stellen Sie sich vor, wenn wir das tun, müssen wir erneut Sessions finden und es müsste alle Sessions wieder finden. Es löscht die alten Sessions. Das will ich nicht tun Ich möchte, dass es aus den Sessions herausfiltert, die wir bereits gefunden haben. Anstatt den Filter hier drinnen zu machen, machen wir ihn in einer separaten Funktion. Ich werde hier eine neue Funktion erstellen und diese Funktion aufrufen , Sitzungsergebnisse anzeigen. Lassen Sie uns von hier aus zuschlagen und sagen, Sitzungsergebnisse filtern. Machen Sie weiter und verwenden Sie diese Funktion. Jetzt können wir nach den Servern filtern, nach denen wir filtern möchten. Jetzt brauchen wir hier ein Sitzungsergebnis. Gehen wir zurück zur Definition der Sitzung. Wir brauchen diesen Input hier. Jetzt, den ganzen Code hier, den wir haben, können wir ihn tatsächlich zum Filter hinzufügen, weil wir ihn hier nicht brauchen, auch nicht die Länge. Ich wähle einfach alles aus und drücke dann X, um es auszuschneiden und zur Anzeige der Sessionergebnisse zu wechseln. Ich werde es einfach hier unten einfügen , damit wir diese Informationen nicht verlieren. Nun zu den schönen Sessions hier, was ich tun werde, ist, dass ich diese einfach löschen werde. Klicken Sie hier mit der rechten Maustaste und machen Sie daraus eine Variable. Nennen wir das Ergebnisse einer Sitzung. Fahren Sie fort und verbinden Sie es nach diesem. Und doppelklicken Sie, um einen hinteren Routenknoten zu erstellen und ihn sauber zu machen. Nachdem ich die Sitzungsergebnisse gefunden habe, fahren wir fort und zeigen die Sitzungsergebnisse an. Denn jetzt werden wir danach filtern. Dafür brauchen wir einen Input. Ich werde auf diese Funktion klicken. Machen Sie eine Eingabe für den Typ. Suchen Sie erneut nach den Ergebnissen der Blueprint-Sitzung und machen Sie daraus ein Array Wenn Sie hier drüben klicken, können Sie daraus ein Array machen. Nennen wir es jetzt Found Sessions. Und lassen Sie uns das hier miteinander verbinden. Wann immer es aktualisiert wird, suchen wir nach den Ergebnissen der Sitzung speichern sie in einem Array Und dann werden wir sie mit dieser Funktion verbinden, deren Zweck darin besteht, zu filtern oder nach was auch immer wir filtern Wonach auch immer wir ihr sagen, dass sie filtern soll, sie wird das tun. Jetzt, wo wir hier fertig sind, gehen wir auf diesen ein. Jetzt können wir das nehmen und es mit den Ergebnissen der Sitzung verbinden, einfach so. Anstatt das zu tun, wurde mir klar, dass wir einfach einen Pin weniger machen können, weil wir einfach diesen nehmen und ihn einstecken können und ich kann ihn tatsächlich von hier löschen und kompilieren weil wir ihn hier draußen in den feinen Sessions nicht wirklich brauchen, um ihn hier zu verbinden. Klicken Sie auf Alle und dann hier. Wir benötigen nicht wirklich eine Eingabe, da wir sie hier draußen als separate Variable verwenden . Wir brauchen hier nicht wirklich eine Eingabe, um sie anzuschließen. Wir können also eine Eingabe weniger haben, weil wir einfach diese Variable verwenden können , die besser aussieht. Jetzt müssen wir einige Filter hinzufügen , damit wir diesen Fehler nicht bekommen. In der nächsten Lektion können wir filtern. Lassen Sie uns vorerst einfach die Filterung überspringen. Aber was wir tun können, ist, diesen Code einfach wieder zu verbinden, egal nach was wir filtern Versuchen Sie erneut herauszufinden, ob die Länge über Null liegt. Wenn der Wert nicht über Null liegt, müssen wir nachweisen, dass beim Filtern keine Server gefunden wurden. Und lassen Sie uns dafür sorgen, dass es hier besser aussieht. Hier nochmal für Loop, wir können stattdessen einfach dieses Sitzungsergebnis verbinden und dieses hier oben löschen. Jetzt sollte dieser gut funktionieren, genau wie zuvor. Wenn wir jetzt kompilieren, können Sie sehen, dass wir eine Fehlermeldung erhalten , weil wir keine Filter hinzugefügt haben. Anstatt in dieser Lektion mehr zu tun, springen wir zur nächsten Lektion über und fügen hier einen Filter hinzu. 36. 4.07 Filtern nach Serversprache: In Ordnung, also hier haben wir aufgehört. Gehen wir jetzt zur Van-Grafik. Und jetzt müssen wir nach der Sera-Sprache filtern. Wenn Sie hier nach oben klicken, gehen Sie nach unten und wählen Sie bei geänderter Auswahl diese Option aus Jetzt ist das ausgewählte Element die Sprache Also werde ich einfach hier mit der rechten Maustaste klicken, das zu einer Variablen heraufstufen und diese eine Serversprache nennen. Das ist die Serversprache, die wir filtern wollen. Sie können die Variable nennen wie Sie wollen, das ist nicht wirklich wichtig. nun filtere, Wenn ich nun filtere, füge ich die Funktion hinzu, die wir hier erstellt haben. also diese Funktion hinzufügen, werden wir sie in eine Variable setzen . Und dann werden wir die Server nicht wirklich aktualisieren, sondern wir werden die Server darin filtern. Was wir tun können, ist, das alles wegzuschieben , sodass wir etwas Platz haben. Lassen Sie uns von hier wegziehen und sagen, wir erstellen ein Array, genau wie zuvor. Lassen Sie uns hier eine Eigenschaft erstellen, die als wörtliche Sitzungssucheigenschaft bezeichnet wird Ziehen Sie jetzt wieder von hier und sagen Sie noch einmal Make. Und wir wollen eine Zeichenfolge filtern. Weil wir eine Zeichenfolge haben, haben wir eine Serversprache, mach das. Jetzt müssen Sie den Schlüssel hinzufügen, den Sie zuvor hinzugefügt haben. Wenn Sie sich nicht erinnern, was Sie getan haben, können Sie jederzeit zu den Bauplänen zurückkehren Öffne die Spielinstanz. Hier haben wir nach der Serversprache gefiltert. Du kannst rausgehen und diesen Schlüssel kopieren. Sie können zum Serverbrowser zurückkehren. Ist dieser Schlüssel hier unten? Versuchen Sie jetzt, Serversprachen zu finden , die zu dem passen , wonach Sie filtern möchten. Jetzt kannst du das hier reinziehen. Wenn auf diesem Server zum Beispiel Chinesisch steht, sucht er nach allen Servern, die bei ihrer Erstellung in chinesischer Sprache verfügbar waren. So wird das funktionieren. Wenn ich jetzt kompiliere, sollten wir keine Fehler mehr bekommen. Jetzt können wir das ein bisschen besser machen, denn wenn ich zum Designer des Server-Browsers gehe, können Sie sehen, dass wir die englische Sprache haben. Aber das tun wir nicht, wo wir alle Server anzeigen, ich will das, weil ich alle Server, die englischen, deutschen, chinesischen und französischen, auf einmal sehen möchte die englischen, deutschen, chinesischen und französischen, . Ich möchte nicht nur Englisch sehen. Klicken wir auf Plus Antwort oder schreiben wir alles hier in den Index. Ich werde es einfach über alle ziehen . Es ist hier oben. Die Auswahloption, ich werde sie tatsächlich auf alle setzen. Sie stattdessen fort und kompilieren Sie und es sollte alles stehen. Jetzt, standardmäßig für die gesamte Sprache, es ist nicht wirklich eine Sprache. Wir wollen nach nichts filtern, wenn der Spieler es auf „Alle“ gesetzt hat. Weil wir alles zeigen wollen. Wenn du dir vorstellst, wie kannst du das eigentlich machen. In solchen Situationen ist es am besten, einen ausgewählten Knoten zu verwenden ob wir filtern möchten oder nicht. Je nachdem, ob es sich diesen oder jenen Wert handelt, der aus den Filtern gezogen wird, suche ich nach dem ausgewählten Knoten Auch hier werden wir auswählen, je nachdem, ob dieser Filter für die Bereitstellung einer Sprachzeichenfolge gleich allen ist oder nicht Ich ziehe, wenn du drei gleiche Zeichenketten schreibst, ist das genau gleich, die Zeichenfolge ist exakt gleich allen Wir können es hierher ziehen. Nun, was wir sagen, wenn die Zeichenfolge hier genau dem Wert entspricht, wenn das wahr ist, wollen wir nicht filtern. Das wird leer sein. Wenn es jedoch falsch ist, was bedeutet, dass wir tatsächlich eine Sprache ausgewählt haben, möchten wir dies mit der falschen Sprache verbinden. Wir filtern jetzt nach einer Sprache, weil wir eine ausgewählt haben. Lass mich das hier einfach so machen und alles sieht gut aus. Bevor wir das Spiel ausprobieren, klicken wir auf den Filter, um eine Sprache auszuwählen. Und denken Sie daran, dass wir dies standardmäßig auf „Alle“ setzen müssen. Sie müssen diese Variable auswählen und standardmäßig alles schreiben, da dies standardmäßig der Fall ist. Klicken wir nun auf Play. Hier auf meinem zweiten Monitor werde ich einen Server erstellen, nur einen zufälligen. Nennen wir ihn oder wählen wir zum Beispiel Chinesisch aus und erstellen den Server. nun hier auf dem gemeinsamen Server versuchen, Lassen Sie uns nun hier auf dem gemeinsamen Server versuchen, auf den Server zu warten und zu sehen, ob wir ihn finden können. Und wenn wir ihn gefunden haben, schauen wir mal, ob die Filterung jetzt funktioniert. Jetzt finden wir den Server und er ist chinesisch. Ich kann es sehen. Wenn ich zu Englisch wechsle, heißt es, es wurde kein Server gefunden. Aber jetzt haben wir einen Bug, weil wir ihn tatsächlich entfernen müssen. Klare Kinder, wir haben vergessen , die Kinder zu löschen. Aber du kannst sehen, wenn ich Alles auswähle, kann ich den chinesischen Server sehen. Ich wähle Chinesisch aus, ich kann es auch sehen , es funktioniert tatsächlich. Allerdings müssen wir auch die Kinder abholen. Hier drinnen. Wenn ich die Serverliste nehme, kann ich sagen, klare Kinder, wir entfernen die alten oder wir fügen die neuen so hinzu. Jetzt sollte es gut funktionieren. Ich werde einfach weitermachen, bis ich den Server gefunden habe. In Ordnung, hier sind wir wieder. Und ich habe mich aktualisiert und meinen Server wieder gefunden. Wenn ich die Sprache auf Deutsch ändere, sehe ich, dass keine Server gefunden wurden Ich wechsle zu Englisch. Nichts ist hier. Ich habe auf Chinesisch umgestellt, ich kann meinen Server sehen, ich habe auf Französisch gewechselt. Ich kann es nicht auf alles ändern, wo ich meinen Server sehen kann. Auch hier funktioniert die Filterung für die Sprache einwandfrei. Jetzt können wir das schließen. Nun, bevor ich diese Lektion beende, fügen wir noch einen Goldbarren hinzu, damit wir uns nicht dem Spiel widersetzen, denn jetzt können Sie zeigen, Sie können hier anhand der Ergebnisse dieser Sitzung filtern Und das, weil ihr technisch gesehen einfach auf Joint Sera klicken könnt und mit dem Filtern beginnen könnt , bevor ihr tatsächlich gefunden oder fertig Server tatsächlich gefunden oder fertig aktualisiert habt. Dadurch wird euer Spiel fehlerhaft Um dies zu verhindern, können wir dies mit einer einfachen Variablen tun. Wenn du hier oben auf das Plus klickst. Wenn Sie diese Variable aufrufen, nennen wir sie Aktualisierung der Serverliste. Lassen Sie uns von hier wegziehen. Ziehen wir diesen Pull-In rein. Und wenn wir ziehen, ziehen wir hinein und wählen diesen aus, ziehen wir rein. Was wir sagen, wir aktualisieren die Servi-Liste nicht Machen Sie eine Verzweigung und führen Sie dann die Filterung durch. Wenn wir jedoch tatsächlich filtern, wollen wir nichts tun, weil wir uns sonst dem Spiel widersetzen würden Das ist eine erfrischende Servi-Liste. Wir müssen es auf true setzen, wenn wir in der letzten Sitzung Sessions filtern oder suchen. Wann immer wir anfangen, die Session zu finden, ziehe ich das rein und setze es auf true Wir aktualisieren den Servist hier drüben , wann immer wir fertig sind Die Aktualisierung, ich möchte sie reinziehen , kurz bevor wir hier filtern. Ich möchte sagen, dass das erfrischend ist. Servist ist jetzt falsch , weil wir nicht mehr aktualisieren. Jetzt geht es hier rein und macht sein Ding Wenn wir Play kompilieren und ich mitmache, versuche ich das, du siehst, dass es nicht nervt, weil es immer noch die Server aktualisiert Und es wird diese Filterung automatisch durchführen , denn wenn es fertig ist wird gefiltert und es wird automatisch diesen Filter lesen , um einen Sprachwert bereitzustellen , zu diesem Zeitpunkt vielleicht auf Chinesisch gesetzt ist Und dann wird alles gut funktionieren. Okay, das war es vorerst. Lass uns zur nächsten Lektion übergehen. 37. 4.08 Nur auf LAN-Servern filtern: Jetzt werden wir nach den Linienservern filtern. Wenn ich zurückgehe und dieses Kontrollkästchen aktiviere und dieses Häkchen zum Beispiel nenne, können Sie ihm ein beliebiges Präfix geben. Nennen wir das nur Line-Server und kompilieren, setzen wir es auf zwei, das ist variabel. Gehen wir nun zurück zur Grafik und hier für das Kästchen Klicken wir auf dieses Ereignis bei Statusänderung, wir bekommen einen Bullen, hier ist ein Häkchen gesetzt. Wir können sehen, ob das Kästchen angekreuzt ist oder nicht. Lass uns einfach diesen anklicken. Machen Sie daraus eine Variable. Nennen wir das Nur Landserver“. Okay? Wenn es angekreuzt ist, wollen wir nur die Landserver anzeigen. Wenn es nicht aktiviert ist, dann ist nur Landserver falsch. Okay, lass uns rübergehen und schauen, was wir damit machen können. Nun, in definierten Sessions haben wir hier dieses Plug-In oder diese Eingabe, wo wir Landserver hinzufügen können. jedoch Sitzungen zu finden, möchte ich eigentlich alle Sitzungen finden und wenn ich dann alle Sitzungen gefunden habe, möchte ich die Landserver von ihnen filtern. Anstatt es hier hinzuzufügen, fügen wir es unserem Filter hinzu. Gehen wir zur Funktion „Ergebnisse der Sitzung anzeigen“ über , die wir hier erstellt haben . Hier in der Filterung filtern wir jetzt bereits nach der Serversprache Was wir jetzt tun können, genau wie zuvor, wir hier eine neue Eingabe machen, damit brechen und erneut nach make literal session property suchen können damit brechen und erneut nach make literal session property suchen make literal session Immobilie suchen. Lassen Sie mich das einfach nach oben ziehen, damit ich das nicht sehe und ich das alles nach unten ziehen kann. Wir haben mehr Platz. Werde auf dieses klicken, jetzt ist es sauberer. Wir wollen wieder hier unten machen, Breech, Make. Jetzt haben Sie einen Goldbarrenwert weil Sie jetzt einen Goldbarren haben Nehmen wir das Mobbing hier drüben. Lassen Sie uns nun die einzigen Landserver mit ins Goldbarren ziehen. Nun, was den Schlüssel angeht, wir haben ihn nicht wirklich hinzugefügt, denn denken Sie daran, dass diese Schlüssel aus der Spielinstanz hier stammen Wir haben nicht wirklich einen Schlüssel für die Nutzung von Landservern hinzugefügt oder nicht. Lassen Sie uns einen hinzufügen. Lass uns auf das Plus klicken. Lassen Sie uns von hier aus zuschlagen und sagen, machen Sie aus einer buchstäblichen Sitzung Edelmetalle Wir haben bereits diesen Nutzungsgrundstückswert. Wir können ihn einfach hierher ziehen und erneut doppelklicken , um einen hinteren Routenknoten zu erstellen. Jetzt benutzen wir diesen. Wir können diesen nennen, wie wir wollen. Du kannst es zum Beispiel „Land nutzen“ nennen und dann rausgehen und kompilieren. Jetzt haben wir das. Wenn Use Land hier wahr ist, dann wird auch dieser wahr sein. Was wir hier tun können, dann können wir diesen Schlüssel ändern , um auch Land zu nutzen. Jetzt wird es einen Blick darauf werfen, wie hoch dieser Wert für die Nutzung von Land ist , wenn wir filtern. Wenn nur Landserver wahr ist, dann werden wir hier nur Landserver finden. Jetzt wollen wir hier in dieser Eingabe auch Landserver finden , weil es jetzt nicht wirklich wichtig ist, ob die Filterserversprache , die gleich allen ist, falsch ist oder nicht. Wir wollen auch hier unten nach Landservern suchen . Denn denken Sie an diesen ausgewählten Knoten, den wir erstellt haben, weil wir sehen wollten, ob die Serversprache auf „Alle“ eingestellt ist oder nicht. Wir hatten jetzt diese beiden Eingaben, aber für die Landserver ist es uns egal, nach welcher Sprache Sie suchen. Anstatt hier nur eingegeben zu werden, können wir das Ganze mit der Maus ziehen und noch einmal Make Array sagen. Wir müssen es auch hier verbinden, denn wenn Sie sich nicht erinnern, ob die Serversprache auf Alle gesetzt ist, schauen wir uns alle Sprachen an, dann werden wir Fehler machen, wenn wir versuchen, nach Landservern zu suchen , weil dieser leer sein wird und nichts passiert. Wir müssen das auch hier unten verbinden. Ich hoffe, es ist nicht zu verwirrend. Ordnung, bevor wir alles testen, gehen wir zurück zum Event-Graph. Denken wir auch daran, die Filterung zu aktualisieren, wenn wir diesen Status auf wahr und falsch setzen , wenn wir dieses Kästchen ankreuzen. wir sicher, dass wir auch hier aktualisieren. Benutze diese Funktion. Lassen Sie uns jetzt das Spiel testen. Ich werde hier ein Sera kreieren. Auf meinem zweiten Monitor werde ich ein Serum erstellen Und wir können einfach Land auswählen und ich mache es französisch, dann Create Nun, lassen Sie uns jetzt einem Server beitreten, warten wir darauf. Was es jetzt sagen sollte, ist, dass keine Server gefunden wurden , weil es sich tatsächlich einen Landserver handelt und es sich nicht um einen öffentlichen Server handelt. Jetzt können Sie hier sehen, dass keine Server gefunden wurden, aber wenn ich nur auf Landserver klicke, sollte es den Server finden und das tut es hier. Allerdings haben wir hier unten einen Bug , dass keine Server gefunden wurden. Wir müssen das beheben. Aber wie Sie sehen können, Serverserver-Filterung, wenn ich es hinzufüge und entferne , tatsächlich funktioniert die Serverserver-Filterung, wenn ich es hinzufüge und entferne, tatsächlich mit den Servern, die diesen Text hier nicht gefunden haben. Wir können C einfach kontrollieren und hier unten kontrollieren, denn wann immer es das erste Mal angezeigt wird, wann immer es nichts findet, wann immer es nichts findet, wird es nicht ausgeblendet, wenn es später etwas findet. Weil wir hier nie angegeben haben , dass es standardmäßig ausgeblendet werden soll. Lassen Sie uns es einfach hier verbinden und es auf versteckt setzen , wenn wir erneut suchen, und dieses Problem sollte behoben sein. Jetzt filtern wir auch nach Linienservern. Lassen Sie uns zur nächsten Lektion übergehen und nach leeren Servern suchen. 38. 4.09 Leere Server verstecken: Richtig. Willkommen zurück. Jetzt werden wir die leeren Server verstecken. Um das zu tun, ist das sehr einfach. Jetzt können wir auf Leere Server ausblenden klicken. Kreuzen Sie das Kästchen erneut an. Benennen wir es in Check um. Nennen wir es Hide Empty Servers. Machen wir es jetzt mit dieser Variablen zu einer Variablen. Gehen wir noch einmal nach unten und klicken auf Check. Hier geändert. Klicken wir mit der rechten Maustaste und machen daraus eine Variable und nennen wir diese Variable Hide Empty Servers. Bei dieser Umfrage müssen wir nun zum Makro „ Fine Sessions“ wechseln. In diesem steht nur, dass Server nicht leer sind. Also können wir das hier reinziehen, leere Server verstecken und verbinden. Immer wenn wir den Wert „ Leere Server ausblenden“ haben, bedeutet das, dass wir keine leeren Server sehen wollen Dann sollte dieser Wert wahr sein, nur Server dürfen nicht leer sein. Das ist es eigentlich. wir jetzt tun können, ist hier runter zu gehen, dort auf dieses Makro zu klicken und dann müssen wir die Sitzungen erneut aktualisieren. Weil wir wieder Sessions finden müssen , in denen es keine leeren Server gibt. Das sollte gut funktionieren. Jetzt können wir kompilieren und zur nächsten Lektion übergehen. 39. 4.10 Nach Servernamen filtern: Ordnung, als letztes wollen wir auch nach dem Servonamen filtern also auf dieses Feld klicken, benennen wir es in Input-Servername um. Jetzt habe ich das schon gemacht und es auf variabel gesetzt. Nun, was wir hier in der Grafik tun können, lassen Sie uns darauf klicken und dann auf Textänderung klicken, damit wir dieses Ereignis erhalten. Für diesen Text werden wir ihn nun auf eine Zeichenfolge setzen, also setzen wir ihn auf eine Zeichenfolge , also setzen wir ihn auf eine Zeichenfolge klicken mit der rechten Maustaste und stufen ihn zu einer Variablen herauf. Und nennen wir diesen einen Filter für Servernamen. Unsere Filterung nach diesem Servonamen, den wir hier schreiben. Denken Sie auch hier daran, diese Funktion auszuführen , da wir den Filter jedes Mal ausführen müssen , wenn wir diesen Wert ändern, ihn öffnen Nun, was den Servonamen angeht, könnten Sie versucht sein, ihn hier unten hinzuzufügen Aber das Problem mit diesem hier unten ist, Sie können sehen, dass er versucht, diese Zeichenfolge zu vergleichen, zum Beispiel, weil die Serve-Sprache gleich ist Diese Serve-Sprache hier, wann immer sie etwas entspricht, wird gefiltert. Für den Servonamen zum Beispiel, wenn der Spieler hier drüben und der Servoname nur H E schreibt. Anstatt beispielsweise Hallo zu schreiben , schreibt der Spieler H E. Er sollte den Server trotzdem finden. Aber das wäre nicht der Fall, denn es versucht herauszufinden , ob die Zeichenfolge, nach der Sie suchen, dem Namen des Servers entspricht, und das wäre nicht der Fall. All das ist also, dass wir nicht wirklich all diese Werte hier verwenden können , also ist nicht gleich größer als und so weiter, also können wir diesen Teil des Filters nicht verwenden Stattdessen können wir also tatsächlich hier rübergehen und das machen wir stattdessen hier drüben. Was wir jetzt tun können, ist, diesen Filter so zu verwenden, dass er den Namen verwendet. nun, bevor wir hier weitermachen, Lassen Sie uns nun, bevor wir hier weitermachen, überprüfen, ob dieser Filter zur Bereitstellung von Namen leer ist oder nicht. Also überprüfen, ob der Spieler tatsächlich etwas geschrieben hat. Also von hier wegziehen und nach leer suchen und diese Funktion auswählen Also ist dieser Filter eine Servanam-Zeichenfolge? Ist er leer? Und ich kann hier einfach eine Filiale eröffnen. Wenn es leer ist, bedeutet das, dass der Spieler nichts geschrieben hat. Und wenn der Spieler nichts schreibt, können wir einfach weitermachen und alles wiederholen, wie wir es zuvor gemacht haben, sodass sich nichts ändert. Wenn der Spieler jetzt jedoch etwas in das Feld eintippt, müssen wir hier unten etwas tun. Nun, nicht wirklich hier unten, sondern hier unten in den Wasserfällen. Damit können wir diesen Code einfach hier kopieren und einfügen und wir können ihn jetzt verbinden. Bevor wir hier alle Server zur Liste hinzufügen, können wir das einfach wegziehen. Und wir können das ziehen und sagen, zusätzliche Einstellungen vornehmen. Nun, diese Funktion hier, wir werden sie tatsächlich im Servercode eta verwenden. Also dieser, wir werden uns vorerst verbinden. Also die zusätzlichen Einstellungen bekommen, wieder die zusätzlichen Einstellungen. Denken Sie daran, diese stammen aus der Spielinstanz. Sie können hier sehen, wir haben es zusätzliche Einstellungen genannt. Also bekommen wir das Servame von hier. Das versuchen wir zu tun. Wir bekommen diesen Wert , der hier blockiert wurde. Gehen Sie also erneut über die G-Einstellungen zum Serverbrowser und holen Sie sich zusätzliche Einstellungen. Wir können wieder ziehen und sagen: Get und jetzt wollen wir eine Zeichenfolge bekommen , weil wir den Servanamen bekommen wollen Lassen Sie uns jetzt hier nach dem Servernamen suchen. Denken Sie daran, dieser Schlüssel ist der Schlüssel, den Sie hier geschrieben haben, und ich habe ihn geschrieben und servam aufgerufen und ich habe ihn geschrieben und servam aufgerufen, damit Sie ihn hierher kopieren können, und jetzt haben wir diesen Servonamen Also, was können wir damit machen? Wir können versuchen, es zu vergleichen. Und das Gute an einer Zeichenfolge ist, dass ich sie hier im Ereignisdiagramm zu einer Zeichenfolge gemacht habe. Deshalb habe ich es nicht zu einer Textvariablen gemacht, denn eine Zeichenfolge kann man auf so viele Arten ändern. Wenn Sie also nur nach einer Zeichenfolge suchen, weil Sie all diese Funktionen haben, können Sie sie verwenden, um tatsächlich etwas mit der Zeichenfolge zu verwenden. Und die, die ich verwenden möchte, heißt Contains. Wenn du hier raufgehst, hast du diesen, der Contains heißt. Wenn du darauf klickst, suchst du jetzt in dieser Zeichenfolge. Und während du in der Zeichenfolge suchst, versuchst du zu sehen, ob sie einige der Buchstaben enthält, die der Spieler hier vom Filter nach Servanam geschrieben hat hier vom Filter nach Servanam falls das der Fall ist, also lass uns hier einfach eine Verzweigung machen und weitermachen und sie hier im gefundenen verbinden Und lass uns rüber gehen und diesen Teil hier unten verbinden. Jetzt versucht es herauszufinden, ob es einen Server finden kann , der diesen Servernamen enthält , den der Spieler geschrieben hat, und wenn er gefunden werden kann, werden wir ihn der Liste hinzufügen. Wenn er nicht gefunden werden kann, werden wir nichts tun. Also das sollte es tun. Doppelklicken wir nun auf diesen und erstellen einen hinteren Routenknoten, damit er besser aussieht. Lassen Sie uns nun weitermachen und sehen, ob es funktioniert. Also werde ich jetzt auf Play klicken. Und jetzt erstelle ich hier auf meinem zweiten Bildschirm einfach einen Server und klicke auf Create Sera Jetzt nenne ich es hier etwas Echtes. Ich nenne es einfach so etwas wie Chinese Chinese only server best one ever, und dann wähle ich Mirage und setze es dann auf Chinesisch und setze die Slots auf etwa 16 und mache es öffentlich und mache weiter und erstelle den Serv Okay, also lass uns weitermachen und versuchen, der Serva beizutreten, und wann immer wir ihn finden, versuchen wir zu sehen, ob alle Filter funktionieren Also speziell dieser großartige Serva , weil wir die anderen getestet haben Versuchen wir nun also, nach dem Namen zu filtern. Nun, den Namen können wir hier nicht wirklich sehen, weil wir die Serva-Karte hier nicht erstellt haben, also haben wir ihn noch nicht angepasst, aber wir haben ihn nur Chinesisch genannt Also suche ich einfach nach Chinesisch, das sollte es finden. Wenn ich jedoch einfach etwas zusätzliches hinzufüge, sodass es nicht mehr chinesisch ist, können Sie sehen, dass es nicht mehr gefunden wird. Wenn ich ihn lösche, bekommen wir den Server zurück und wir haben ihn zum besten aller Zeiten gemacht. So habe ich es genannt. Also, wenn ich einfach nach dem besten aller Zeiten suche, wird er immer noch erscheinen. Wenn ich jedoch einfach etwas schreibe, zum Beispiel beste, und dann vielleicht etwas wie K hier draußen, wird es nicht angezeigt. Die Filterung für den Server hier und die Suchleiste funktioniert also . Wir müssen es jedoch noch codieren, damit es uns tatsächlich die richtigen Informationen anzeigt. Jetzt funktioniert dieser. In Ordnung. Also, jetzt, wo das erledigt ist, gehen wir zur Serverkarte über und kodieren die Informationen ein. 40. 4.11 Erhalten der zusätzlichen Einstellungen für die Serverkarte: Okay. Ordnung. Fangen wir jetzt hier drinnen an. Gehen wir also wieder zum Hauptmenü der Benutzeroberfläche. Und dieses Mal werden wir hier in der Servo-CD arbeiten. Öffnen wir es also und klicken wir auf den ersten Text. Lassen Sie uns jetzt einfach alle ändern, da wir es sind. Also das Erste, ich rufe die Textnachricht Servanam an. Beim nächsten können wir weitermachen und Textspielkarte nennen. Bei der dritten Option können wir die Anzahl der Spielautomaten oder die Anzahl der Spieler als Text bezeichnen . Du kannst sie auch Spieler nennen. Ich denke, das ist besser. Und der letzte, den wir Text nennen können Dieser, die Flagge hier, das Symbol, ich nenne es einfach Bildsprache. Und wenn wir auf alle klicken, können wir sie alle auswählen und sie auf iss-Variable setzen, sodass wir sie später codieren können. Für diese Lektion werden wir uns nun die zusätzlichen Einstellungen besorgen. Und denken Sie daran, dass die zusätzlichen Einstellungen diejenigen sind , die wir in der Spielinstanz erstellt haben. Also bekommen wir jetzt all diese Informationen. Gehen wir hier rein. Lass mich einfach alles von der Serverkarte löschen. Lassen Sie mich eine neue Funktion namens Get Extra Settings erstellen. Okay, also was wir hier drinnen tun wollen, ist, diese gefundene Sitzung zu machen , die wir hatten. Denken Sie daran, dass wir diese Informationen hier eingegeben haben, als wir die Ergebnisse der Sitzung gefunden haben Und wir können von hier aus ziehen und sagen, zusätzliche Einstellungen vornehmen. Also nochmal, das haben wir gemacht, wenn ich zurückgehe und Sie hier im Servo-Browser daran erinnere. Denken Sie daran, das haben wir getan. Im Servo-Browser haben wir die zusätzlichen Einstellungen und die Eigenschaftszeichenfolge. Also das ist im Grunde das Gleiche, was wir hier tun. Also, wenn Sie die zusätzlichen Einstellungen holen, ziehen Sie von hier und sagen Sie, holen Sie. Jetzt bekommen wir die Eigenschaftszeichenfolge. Der erste, den wir bekommen werden, ist der Servername. Also wenn du einfach den Servernamen schreibst, und übrigens, der Schlüssel stammt wieder von der Spielinstanz. Also was auch immer du hier als Schlüssel für den Servernamen geschrieben hast, du musst es hier benutzen, sonst wird es nicht funktionieren. Ich ziehe hierher und erstelle einen Rückknoten, und mit diesem Rückgabeknoten kann ich diese Informationen hierher ziehen, sodass sie eine Variable für mich und ich sie später verwenden kann. Und diese Variable werde ich Servam nennen. Jetzt haben wir also den Namen des Servers. Und lassen Sie uns wieder von hier wegziehen und sagen, jetzt hole ich mir eine weitere Saite. Mach weiter und verbinde es hier. Die nächste, die ich haben möchte. Holen wir uns zuerst die Serversprache. Also hole ich mir die Serversprache und lass uns sie verbinden. Als Nächstes, gleich von hier aus, holen Sie sich die Eigenschaftszeichenfolge, fahren Sie noch einmal fort und verbinden Sie sie. Nun, das wird die ServA-Map sein , weil ich sie auch brauche Mach weiter und schreib das hier. Verbunden. Mehr brauchen wir jetzt nicht mehr, denn jetzt haben wir das „Ich gehe zurück zum Designer“. Wir haben jetzt die Sprache, den Servanamen und wir haben die Karte. Und mit diesen beiden können wir auskommen ohne irgendwelche Informationen von hier zu bekommen. Also kannst du das einfach ziehen und sie einsperren. Also die erste ist die Serva-Sprache. Nennen wir es also Servsprache. Und die andere ist die Serverkarte oder die Spielkarte, wie auch immer du sie nennen willst Und wieder können Sie darauf doppelklicken, um Notizen zur Weiterleitung zu machen. In Ordnung. Und das war es. Jetzt haben wir die zusätzlichen Einstellungen erstellt. Und später hier im Ereignisdiagramm können wir es hineinziehen und all diese Informationen verwenden , um die Serverinformationen festzulegen. 41. 4.12 Aktualisieren der Serverkarten-Info: Lassen Sie uns nun mit der Aktualisierung der Serverkarteninformationen beginnen der Aktualisierung der Serverkarteninformationen Lassen Sie uns mit der rechten Maustaste klicken, und ich werde ein Ereigniskonstrukt erstellen, erneut ein Ereigniskonstrukt erstellen, das dieses Ereignis enthält. Denken Sie daran, dass wir hier im Serverbrowser immer dann, wenn wir Sessions finden , diese Serverkarte erstellen. Wenn wir die Serverkarte erstellen, wird dieses Event-Konstrukt sofort abgespielt, wenn wir diese Serverkarte hinzufügen oder wann immer wir sie erstellen, werden wir sie mit den Informationen aktualisieren , die wir benötigen. Ziehen wir das mit der Maus hinein, holen wir uns die zusätzlichen Einstellungen, die wir erstellt haben, und fügen sie ein. Fangen wir jetzt von vorne an. Das erste, was wir bearbeiten möchten, ist die Sprache. Das hier, ich werde es reinziehen. Die Sache, die wir machen wollen, ist Pinsel setzen. Sie haben diesen einen Pinselsatz von Texture. Jetzt brauchen wir die Icons für sie, und ich habe sie Ihnen als Kostenmaterial gegeben. Wenn Sie sie noch nicht importiert haben, gehen Sie einfach in Ihr Material in den Ordner mit den Symbolen und ziehen Sie sie hier und hier in einen Ordner mit Symbolen, so wie Sie sie sehen können. Übrigens, wenn Sie die Benutzeroberfläche besser aussehen lassen möchten, können Sie jederzeit wieder auf jeden von ihnen klicken. Setze die Texturgruppe auf UI, Kompressionseinstellungen auf Benutzerschnittstelle zwei D. Das sollte es für deine UI sein. Jetzt schließen wir es und wir haben die Flagge. Gehen wir zurück zum Sera Cod. Hier drinnen musst du es je nach Sera-Sprache auf die Flagge setzen je nach Sera-Sprache auf die Jetzt werde ich Ihnen eine intelligente Methode zeigen , wie Sie das tun Wenn Ihre Kreditvariable ist, nennen Sie diese eine Serversprache. Nun zu dieser hier werde ich sie in eine Zeichenfolge umwandeln. Jetzt werden wir dieses anstelle eines Arrays ändern. Bisher haben wir eine einzelne Variable und eine Array-Variable verwendet . Das, ich werde eine Karte machen. Variabel. Eine Karte, was es ist. Sie besteht aus zwei Variablen, wie Sie hier sehen können. Die erste ist eine Zeichenfolge , weil Sie diese ausgewählt haben. Zweitens suche ich einfach nach Textur und wähle diese Textur aus, die Textur zwei D heißt. Und dann mache suche ich einfach nach Textur und wähle diese Textur aus, die Textur zwei D heißt ich weiter und wähle eine Objektreferenz aus. Eine Textur zwei D ist hier einfach nur ein Bild. Was das jetzt macht, wenn du kompilierst, kannst du hier unten sehen. Wenn ich auf das Plus klicke, siehst du jetzt diese beiden Variablen, die Zeichenfolge und die Textur. Jetzt die Zeichenfolge, wir können machen, was wir wollen. Zum Beispiel kann ich für Englisch sagen, ich will die englische Flagge. Wir können diese amerikanische Flagge nehmen und sie einhängen. Jetzt klicken wir erneut auf das Plus. Und sagen wir für die deutsche Sprache, ich will die deutsche Flagge. Mach weiter und schließ es auch an. Weil das Plus, noch einmal für sagen wir die chinesische Sprache, ich möchte die chinesische Flagge als letzte haben. Für die Franzosen, für die französische Sprache, will ich die französische Flagge. Bevor ich noch einmal etwas mache, muss ich mich daran erinnern, dass Sie diese UI-Skala auf 1,25 gesetzt haben . Sie können tatsächlich sehen, dass ich das bisher getan habe , als ich diese Karte erstellt Und wir können den Zeichenketten eine Textur zuweisen. Eine sehr intelligente Methode, die wir jetzt anwenden können ist, diese Map hierher zu ziehen. Und wir können ziehen. Wenn Sie nicht wissen, was Sie mit einer Karte machen können, können Sie jederzeit zu Dienstprogrammen gehen. Klicken Sie auf Karte, und das sind die Funktionen, die Sie mit einer Karte verwenden können. Sie können einen Wert hinzufügen, Sie können die Karte löschen, alle Werte löschen. Sie können sehen, ob es etwas Bestimmtes enthält. Sie können etwas Bestimmtes finden, und Sie können die Länge überprüfen und so weiter. Aber wir wollen etwas finden. Wir wollen die Sprache für die Sera finden, für die sich der Serva zum Beispiel Chinesisch entschieden hat zum Beispiel Chinesisch entschieden Wir werden das in dieser Karte finden. Wann immer wir es finden, werden wir die Textur finden, wir werden nach Chinesisch suchen. Und dann holen wir uns das Flaggensymbol dafür. Dieses Flaggensymbol werden wir hier einbauen. Und dann stecke das hier rein. Wir haben das Flaggensymbol gefunden. Wir werden die Bildsprache auf die entsprechende Flagge ändern . Jetzt ist das erledigt. Jetzt lass uns weitermachen und weitermachen. Das ist das Servoam. Nehmen wir dieses Servoam. Sag hier, gib den Text ein. Das ist einfach das, was wir versuchen zu tun. Wir versuchen, den Text für den Servanamen festzulegen. Der Text, auf den wir setzen wollen, ist hier der Servoame. Ich werde es einfach per Drag & Drop ziehen und es wird meine Zeichenkettenvariable für mich in eine Textvariable konvertieren Jetzt ist das richtig, lass uns weitermachen. Das nächste ist die Spielkarte, ich gehe zurück, ziehe sie hierher und sage Set und ich werde den Text für Hinzufügen setzen und sie erneut für den Server verbinden Hoppla, das ist der Servo-Name. Bei diesem hier muss ich es genau umgekehrt machen, damit ich keinen Fehler mache Die Servo Map ist tatsächlich hier drüben. Lass uns das verbinden. Jetzt ist auch das erledigt. Nun zur Anzahl der Spieler Gehen wir jetzt zurück, die Anzahl der Spieler, machen wir weiter und legen Sie den Text noch einmal fest. Wenn Sie nun zwei dynamische Werte haben, können Sie sehen, dass wir die Anzahl der Spieler auf dem Server benötigen, aber wir benötigen auch die maximale Anzahl an Spielern, die sich auf einem Server aufhalten können. Wenn wir zwei dynamische Werte wie diesen haben und wir nur einen Textblock haben, müssen wir einen sogenannten Formattext verwenden . Ich ziehe von hier und sage Formate wähle diesen aus, formatiere Text. Was wir jetzt hier machen können , ist, dass wir mit einer geschweiften Klammer beginnen können Dann können wir zum Beispiel die Anzahl der Spieler angeben. Dann musst du daran denken, die geschweifte Klammer zu schließen und Inter zu drücken Wenn Sie das tun, können Sie sehen, dass Sie dafür eine Eingabe erhalten. Lass mich jetzt einfach Schrägstrich schreiben , weil ich diesen Schrägstrich hier habe Dann muss ich die maximale Anzahl an Steckplätzen erreichen . Anzahl der Steckplätze. Ich gehe hier nach dem Schrägstrich wieder hin, öffne die geschweifte Klammer und schreibe die Anzahl der Dann können wir wieder die schließende Klammer machen , wenn wir Inter drücken, bekommen wir die zweite Eingabe Du kannst jetzt sehen, dass wir Eingaben für Variablen bekommen. Die Art und Weise, wie wir die Anzahl der Spieler und die Anzahl der Slots ermitteln, ist, wenn wir diese Sitzung nehmen können und Sie einfach nach Spielern suchen können, Sie hier sehen können, um aktuelle Spieler zu finden. Du kannst erneut Spieler ziehen , um aktuelle Spieler zu finden . Füge es hier ein. Und hol dir Spieler. Max. Spieler. Ja, stecken Sie es in die Anzahl der Steckplätze und schließen Sie es an. Kompilieren Sie alles und lassen Sie uns jetzt weitermachen. Das Letzte ist der Ping. Klicken Sie erneut darauf, ziehen Sie es, legen Sie den Text fest. Fahren Sie fort und legen Sie den Text fest. Nun zum Ping, den können wir auch von hier bekommen . Wenn Sie es ziehen oder kopieren können, fügen Sie es ein und suchen Sie in MS nach Ping-Ping . Und fahren Sie fort und verbinden Sie diesen Wert hier. Anstatt es einfach zu verbinden, können Sie hier sehen, dass ich den Wert habe und am Ende MS habe. Auch hier müssen Sie einen Formattext verwenden. Also ziehe ich einfach und sage Text formatieren und auswählen. Öffnen Sie jetzt eine geschwungene Klammer , in der zum Beispiel Ping steht. Sie können die geschweifte Klammer schließen und dann schreibe ich am Ende MS, weil ich den MS-Text am Ende haben möchte Ich werde die Eingabetaste drücken. Und jetzt können Sie den Ping-Wert eingeben. Im Moment sollte das alles reparieren, was wir gesagt haben, alles. wollen wir sehen, ob alles funktioniert. Wenn ich jetzt noch einmal auf Play klicke und einen Server erstelle, erstellen wir einen mit dem Namen zum Beispiel Fun sera Bitte trete bei. Stellen wir es auf Mirage, auf Deutsch und dann auf öffentliche 32 Steckplätze Und ich werde auf Create klicken. Ich werde dem Server beitreten und schauen, ob ich den Server hier finden kann. Jetzt können Sie sehen, dass wir den Server erstellt haben. Der Ping wird auch angezeigt, die Karte und es heißt auf Sera, bitte mach mit Und es hat auch die deutsche Flagge und alles funktioniert wie es soll Das Letzte, was wir tun müssen, ist, wenn Sie auf diese Schaltfläche klicken, wir müssen der Sitzung beitreten. Lass uns das in der nächsten Lektion machen. 42. 4.13 An der Sitzung teilnehmen: Wir sind wieder hier im Servercode und letztes müssen wir der Sitzung beitreten Wenn ich zurück zum Designer gehe und auf die Schaltfläche klicke, ist es diese Schaltfläche hier, auf die wir klicken. Ich werde den Namen dafür ändern, zum Beispiel in Join server oder Joint Session Compile. Und jetzt lass uns hierher gehen. Klicken Sie auf die On-Click-Ereignisse. Wenn wir nun auf die Schaltfläche klicken, möchten wir diese Schaltfläche namens Session verwenden. Wähle diesen, der Player-Controller holt sich wieder Player-Controller und benutze ihn hier. Nun zu der Sitzung, an der wir teilnehmen wollen Es ist einfach diese gefundene Sitzung, die wir haben. Und das sollte gut sein. Jetzt können wir alles retten. Und das war's für diesen . Und lass uns weitermachen. 43. 4.14 Zurück-Schaltfläche des Server-Browsers: Jetzt sind wir fast fertig. Lassen Sie uns hier den Zurück-Button codieren. Klicke darauf. Ich werde den Namen in Button Back ändern und ihn auf seine Variable setzen. Geh runter und stelle den Klick hier ein. Gehen wir einfach zurück zu dem, wir zum Beispiel schon einmal gemacht haben. Lass uns das Hauptmenü öffnen. Lassen Sie uns hier einfach das Hauptmenü aufrufen und diesen Code, den wir erstellt haben , kopieren und einfügen. Gehen Sie zurück zur Serverkarte oder einer Serverkarte, Serverbrowser und fügen Sie ihn hier ein. Mach weiter und verbinde es. Jetzt haben wir die Player-Controller-Variable nicht mehr. Fügen wir sie einfach hier in das Event-Konstrukt ein, bevor wir nach Servern suchen. Ich bin wieder da, wir können es einfach kopieren und einfügen. Wenn wir zum Hauptmenü zurückkehren, können wir diesen von uns erstellten Code tatsächlich kopieren und einfügen. Fügen Sie ihn hier ein. Und das sollte behoben sein. Mach weiter und verbinde das hier. Verbinde das hier. Klicken wir mit der rechten Maustaste, wenn Sie sehen, dass es grau ist. Das liegt daran, dass wir die Variable noch nicht erstellt haben. Lassen Sie uns mit der rechten Maustaste klicken und diese Variable erstellen. Jetzt ist sie erstellt und sollte auch hier unten funktionieren. Wenn wir jetzt auf die Zurück-Schaltfläche klicken, möchten wir den Servo-Browser ausblenden. Und wir wollen das Hauptmenü anzeigen und kompilieren. Wenn Sie möchten, können Sie jetzt auch Animationen dafür erstellen. Genau wie wir es für den Create Serva gemacht haben. Ein schneller Weg, das zu tun, ist, dass wir es einfach schnell zusammen machen können Wenn Sie auf dieses vertikale Feld klicken, lassen Sie uns das für dieses vertikale Feld tun. Ich nenne es einfach Sera-Browser hier unten in der Animation Klicken Sie auf den Plus-Aufruf, klicken Sie darauf, erstellen Sie einen neuen Track für den Sera-Browser Denken Sie daran, Sie müssen es ausgewählt haben. Fahren Sie fort und klicken Sie auf das Plus. Klicken Sie erneut auf das Plus, wählen Sie hier unten die Transformation aus. Jetzt können wir einfach die alte Datei kopieren und einfügen. Wenn ich zur Create Sera gehe, öffne ich sie hier im Animations-Tab Ich werde diese Transformation einfach kopieren. Ich werde das hier einfach so auswählen, Steuerung C. Wenn ich zum Sera-Browser gehe, kann ich einfach hier klicken, Strg V. Jetzt heißt es, dass es nicht eingefügt werden kann Ich werde es erneut versuchen. Ich kann diese Übersetzung einfach kopieren und schauen, ob ich sie einfügen kann. Steuerung hier, Steuerung V hier. Und das hat funktioniert, ich musste stattdessen nur von hier kopieren. Jetzt hat das geklappt, du kannst sehen, ob ich das mache, es hat die Animation schon gemacht. Sie können Animationen kopieren und einfügen. Und es ist auch viel einfacher für dich. Wenn ich hier zur Grafik gehe, bevor ich die Feinsitzung mache, kann ich einfach die Animation abspielen. Nun zur Animation, ziehen wir sie hinein und lassen Sie uns sagen, Animation abspielen. Und wenn wir das tun, wollen wir, dass es einmal nach vorne schaut. Das ist in Ordnung für die Geschwindigkeit. Auch hier werde ich es auf 1.1 setzen , damit es etwas schneller als normal ist. Wenn Sie jetzt auf die Schaltfläche Zurück klicken. Aber genau wie zuvor möchte ich das aufheben, die Animation erneut unterbrechen und Animation abspielen sagen und weitermachen und sie verbinden. Jetzt spielen wir es noch einmal ab, Geschwindigkeit 1.1. Diesmal werden wir es jedoch rückwärts spielen. Wir können das noch einmal unterbrechen und sagen, hol dir Zeit. Dann können wir wie zuvor eine Verzögerung hinzufügen. Das ist dasselbe, was wir mit der Crete Sera gemacht haben. Also füge eine Verzögerung hinzu und dann lass uns sie jetzt verbinden. Nach der Verzögerung wollen wir diesen Bildschirm natürlich so umschalten. Sie können auch die Animation für das Hauptmenü hinzufügen, aber Sie haben die Idee. Lass uns versuchen, auf Play zu klicken. Trete Serva bei und so sieht es aus. Fünf Filme auf Zurück. So sieht es aus Okay, dafür haben wir auch Animationen. Es sieht toll aus. Lassen Sie uns in der nächsten Lektion nachschauen, ob wir irgendwelche Probleme oder Fehler mit dem System haben, das wir vorerst erstellt haben. Lassen Sie uns zur nächsten Lektion übergehen. 44. 4.15 Das Endergebnis testen: Genau hier sind wir wieder in der hoffentlich letzten Runde. Lass uns weitermachen und das Spiel testen. Jetzt möchte ich, dass Sie es auf eine Anzahl von Spielern einstellen, zwei, und dann als Abhörserver spielen. Lassen Sie uns versuchen, es in diesem Fenster abzuspielen, bevor wir es verpacken und auf einem anderen Computer testen . Also mach weiter und erstelle einen Server. Ich werde einfach einen Server mit diesem kleinen Bildschirm erstellen. Erstelle einfach einen zufälligen Server. Jetzt werde ich versuchen, diesem Server beizutreten. Jetzt wird es aktualisiert. Lassen Sie uns das alles auch hier oben testen. Sobald der Server aktiv ist. Nun, wie Sie sehen können, ist der Server ein Bug. Denn wenn ich jetzt hier klicke, kannst du sehen, dass es nicht an der Sitzung teilnehmen kann. Ich kann auch sehen, dass die Anzahl der Spieler Null ist. Da stimmt etwas nicht. Wenn ich es schließe, glaube ich zu wissen, wo es ist , weil ich etwas vergessen habe. Denn wenn Sie so etwas debuggen möchten, würde ich im Grunde darauf achten , dass ich mir die Benutzeroberfläche hier auf dem Create-Server ansehe die Benutzeroberfläche hier auf dem Create-Server Ich würde sehen, ob es den Server korrekt erstellt. Hier hast du alle Informationen. Sie haben den Servernamen, die Anzahl der Slots, die wir haben, die Anzahl der Slots, die richtig eingestellt sind. Sie müssen das überprüfen, ja, wir haben es eingestellt. Wenn wir den Wert hier auf dem Erstellungsserver ändern, also die maximale Anzahl an Spielern, stellt die Öffentlichkeit eine Verbindung her. Das Problem ist, wenn du hier einen Bug hättest und die öffentlichen Verbindungen Null wären, dann könnte niemand beitreten. Aber ich kann sehen, dass wir die Anzahl der Slots bereits festgelegt haben und hier alles funktioniert, der Join überprüft wird. Wenn wir auf den Server, einen Code und die Stelle klicken , an der wir die gemeinsame Sitzung durchgeführt haben, ist alles korrekt, die gemeinsame Sitzung ist da. Du kannst auch überprüfen, ob diese Sitzung gültig ist, indem du von hier wegziehst und nach valid suchst. Ich habe das schon gemacht Ich habe überprüft, ob das gültig ist. Sie tun dies, indem Sie einfach eine Nachricht auf den Bildschirm drucken. Nur hier, bei erfolgreicher Verbindung, verbinde diesen hier. Wenn du versuchst zu spielen und dann dem Server beitrittst, sollte dort stehen, dass das stimmt, die Session hier ist gültig. der Sitzung ist nichts falsch , also stimmt etwas anderes nicht. Jetzt habe ich mir 5 Minuten Zeit genommen, um mir anzusehen , was es war, weil ich nicht erkennen konnte, was falsch war. Aber die Sache ist, wir haben hier im Bauplan etwas vergessen Ich glaube, wir haben es tatsächlich schon einmal gemacht. Aber wenn wir Dinge ändern, haben wir vergessen, es zu schreiben. Wenn du den Server erstellst und die Karte hier auswählst, musst du beim Öffnen des Levels auf diesen Pfeil klicken, um diese Option zu sehen. Und du musst tatsächlich zuhören, weil du dir das anhören musst, weil wir einen Client-Server erstellen. Also muss man sich das anhören, bevor es funktionieren kann. Wenn ich jetzt erneut auf Play klicke, erstelle ich auf meinem zweiten Bildschirm einen zufälligen Server, was auch immer es ist, nur ein zufälliger. Lass uns wieder hierher gehen. Erschaffen. Lass uns einem Server beitreten. Lass uns jetzt darauf warten. Jetzt sollte es mit der richtigen Anzahl von Spielern angezeigt und wir sollten auch keine Probleme haben , dem Server beizutreten. Lass uns darauf warten. Hier ist es. Ich kann jetzt die Anzahl der Spieler sehen. Wenn ich darauf klicke, sollte es dem Server beitreten. Und es tritt dem Server bei. Jetzt funktioniert alles richtig. Okay. Jetzt funktioniert das richtig. Was ich jetzt tun werde, ist vier Spieler zu eröffnen. Wenn Sie einen langsamen Computer haben, passen Sie nur auf, dass Sie abstürzen können , denn es ist eine Menge, so viele Server zu öffnen. Und ich werde auch die Skalierbarkeit der Engine auf niedrig einstellen, damit ich tatsächlich viele davon ausführen kann. Wenn Sie es optimieren möchten, können Sie auch jederzeit zu den Projekteinstellungen gehen, Sie können nach Smooth suchen. Sie haben hier etwas, das Smooth Frame Rate genannt wird. Und du kannst das ankreuzen und dann auswählen, wie hoch die maximale FPS sein soll. Ihr Computer läuft nicht, das Maximum, kann das. Eigentlich war das ein Problem in Farm Tail. Als ich es veröffentlichte, war mir das nicht bewusst. Und es lief mit etwa 600 FPS oder was auch immer und es verbrennt die GPUs von Leuten Stellen Sie einfach eine maximale Anzahl von Bildern pro Sekunde ein. Wir brauchen nicht mehr als 200 in diesem Spiel. Versuchen wir jetzt, vier davon zu öffnen. Lass uns auf Play klicken. Jetzt habe ich vier davon. Ich werde einfach zufällige Server einrichten und bin wieder bei dir. In Ordnung, jetzt habe ich die Server erstellt. Ich werde auf Joint Server klicken. Übrigens, die Aktualisierungsliste hier wird viel schneller gehen, sobald Sie sie in Steam gepackt haben. Das dauert also einfach lange, weil wir nach unseren eigenen Spielen suchen. Wie Sie hier sehen können, habe ich ein paar Server erstellt. Ich habe tatsächlich drei gemacht, aber einer davon ist Landserver. Jetzt können wir überprüfen, ob diese Filter hier auf dem Erstellungsserver funktionieren . Mal sehen, ob es funktioniert. Wenn ich nach Jinks suche, findet es den Server Wenn ich versuche, nach Deathmatch zu suchen, wenn ich gerade Deathmatch geschrieben habe, kannst du sehen, dass der Server bereits gefunden wurde. Nun, diese Suche ist sehr clever, weil sie auch innerhalb der Sätze sucht Wenn ich zum Beispiel nur Server oder R schreibe, sollte es beide finden, weil beide ER enthalten. Findet beide VR hier, sie haben es beide. Wenn ich etwas falsch schreibe, findet es sie hier in den Sprachen nicht. Wenn ich nach Englisch suche, wird mir nur dieses angezeigt. Deutsch, dieses eine Chinesisch, wir haben keins. Und Französisch haben wir keins. Alle von ihnen. Wir sind jetzt wieder hier und verstecken die leeren Server. Es wird die Liste noch einmal aktualisieren, weil es jetzt versucht, Server zu finden, die nicht leer sind, was im Grunde genommen alle sind. Es sollte sie alle noch einmal anzeigen. Hier sind sie. Wenn ich jetzt nur die Landserver zeige, kannst du auch meinen Landserver sehen , den ich tatsächlich erstellt Mit nur zwei Spielern hier steht hier Join Land Server. Wenn ich ihn entferne, kann ich meine öffentlichen Server sehen. Lass uns weitermachen und dem Landserver beitreten. Wenn ich auf diesen klicke, sollte er dem Server beitreten. Und es zeigt mir wieder dieses Hauptmenü, weil es nur eine gefälschte Map ist, der ich gerade beigetreten bin. Es ist nicht meine Counter-Strike-Map, aber jetzt kannst du sehen, dass alles funktioniert. Lass uns zur nächsten Lektion übergehen und dieses Projekt so verpacken, dass du es an deine Freunde schicken oder es zu Steam hinzufügen kannst , wenn du möchtest. Speichern Sie zunächst alles und lassen Sie uns zur nächsten Lektion übergehen . 45. 4.16 Das Projekt verpacken: In Ordnung, hier sind wir wieder da. Ich werde die Skalierbarkeit einfach noch einmal auf Epic umstellen . Und jetzt sind wir bereit, das Projekt zu verpacken. , welches Projekt Sie Je nachdem , welches Projekt Sie verwendet haben, werden Sie verschiedene Epochen haben, denn das hängt jetzt wirklich von Ihrem Projekt ab. Aber um dein Projekt zu verpacken, mach weiter und du kannst es von hier aus machen. Aber bevor Sie es tun, gehe ich gerne zum Fenster und zeige das Ausgabeprotokoll an. Jetzt kannst du im Ausgabelog alle Epochen sehen, die du für dein Spiel hast, bevor ich das mache. Nun zu diesem Spiel, etwas, das du reparieren kannst. Wenn du dieses Counter-Strike-Spiel noch einmal gespielt hast, kannst du dieses Spiel hier auf Game Instruct.com spielen. Hier veröffentliche ich meine Kurse Und das ist meine persönliche Website. Und du kannst dort immer Kurse finden, darunter Shooter, darunter Shooter, Multiplayer-2-D-Spiele in Unreal und so weiter Aber vorerst möchte ich, dass du es öffnest, wenn du dieses Projekt gemacht hast, öffne es einfach Lass uns zum Player gehen, die Animation öffnen, den Animations-Blueprint hier Ich möchte, dass du auf den Bewegungsstatus klickst. Dann möchte ich, dass du in den Standardeinstellungen auf das Plus klickst und den Standardstatus auf Running setzt, was wir tatsächlich verpasst haben. Also mach weiter und kompiliere das. Schließen wir es jetzt, um das Projekt zu verpacken. Mach weiter und lass uns zuerst alles speichern. Lassen Sie uns noch einmal sicherstellen, Sie Ihre Ausgangssperren geöffnet haben. Lassen Sie uns nun mit der rechten Maustaste klicken und die Sperren löschen. Das möchte ich zuerst tun, oder? Löscht die Logs. Dann fahren Sie fort und klicken Sie hier oben, Gehen Sie zu Windows and Package und dann Package Project. Jetzt müssen Sie auswählen, wo Sie das Projekt verpacken möchten. Jetzt habe ich bereits einen Ordner auf meinem Desktop namens Pakete. Sie können es einfach hier tun, wenn Sie einen Ordner auswählen möchten . Jetzt wird es das Projekt verpacken. Was ich normalerweise hier im Ausgabeprotokoll suche, ist Äh, unsere Fehler und Warnungen. Wenn Sie hier oben klicken und die Meldungen auf diese Weise entfernen, können Sie alle Fehler und Warnungen sehen. Nur jetzt haben wir momentan keine. Ich werde eigentlich einfach auf die Nachrichten klicken , um zu sehen, was es hier macht. Manchmal dauert es 1 Minute, manchmal dauert es 5 Minuten. Sie müssen nur darauf warten, bis das Projekt verpackt ist. Auch hier kommt es darauf an, welches Projekt Sie verwenden. Weil einige Projekte projektspezifische Fehler haben werden . Sie müssen versuchen, diese Fehler zu beheben. Natürlich kannst du schreiben und ich kann versuchen , dir beim Verpacken deines Projekts zu helfen. Jetzt bekommst du manchmal Fehler, wenn du mit Bibliotheken arbeitest, wie ich es in diesem Projekt getan habe. Wenn Sie jedoch hier eine Fehlermeldung mit der Aufschrift Unbekannte Struktur erhalten , müssen Sie auf eine der Funktionen und dann auf Datei, Alle Notizen aktualisieren klicken. Dann müssen Sie auf die zweite klicken, Datei, alle Notizen aktualisieren. müssen Sie für alle Funktionen tun , die Sie haben, wenn Sie eine Funktionsbibliothek haben. Also sei dir dessen einfach bewusst, oder? Wie Sie hier jetzt sehen können, ist der Build erfolgreich und abgeschlossen. Und ich kann die Nachrichten jederzeit entfernen, damit ich hier sehen kann , was meine Warnungen sind. Es hat etwas mit der Animation zu tun und es ist nicht wirklich wichtig. Manchmal sollten Sie sich bewusst sein, dass diese Fehler, manchmal, wenn Sie sie löschen und versuchen, sie ein zweites Mal zu packen , sie automatisch behoben werden. Seien Sie sich dessen also auch bewusst. Versuche das zweite Mal zu verpacken. Hier sind ein paar Dinge rund ums Animieren. Entfernen von Duplikaten ist momentan nicht wirklich wichtig . Das ist nicht wichtig Jetzt habe ich mein Projekt gepackt und kann mein Projekt hier in den Paketen sehen. Jetzt hier drin möchte ich, dass du einfach alle Dateien auswählst und mit der rechten Maustaste klickst. Gehe zum Beispiel zu Winrar. Füge es einem Archiv hinzu. Ich möchte es nur hier schlürfen. Machen Sie es zu einem Sip-Ordner. Ich möchte das zum Beispiel einfach so nennen, wie auch immer Counter Strike oder mein Spiel, wie auch immer du willst. Klicken Sie auf OK und warten Sie, bis es in einen SIP-Ordner aufgenommen wurde. Jetzt möchte ich, dass du diese P-Datei machst, du kannst sie deinen Freunden geben, jetzt kannst du sie auf Google Drive hochladen oder auf ein Alleinstellungsmerkmal hochladen. Das werde ich machen Ich werde es auf meinem zweiten Computer entpacken. Ich habe all diese Dateien auf meinem zweiten Computer. Dann werde ich dieses Spiel ausprobieren es auch von meinem Laptop aus mit diesem PC spielen. Ich werde versuchen, das zu tun. In Ordnung, jetzt bin ich zurück. Ich habe es zu meinem Laptop hinzugefügt und einen Server erstellt. Ich möchte also, dass du hier oben klickst, die Anzahl der Spieler auf einen setzt und dann den Netzmodus so einstellt, dass er eigenständig spielt. Das liegt daran, dass wir das Spiel jetzt auf Steam testen werden. Auch hier musst du Steam geöffnet haben, also stelle sicher, dass dein Steam aktiviert ist, stelle sicher, dass du eingesperrt bist, die Anzahl der Spieler ist eins. Der Net-Modus ist eigenständig. Dann hier oben, fahren Sie fort und klicken Sie auf Play. Da es sich um ein eigenständiges Spiel handelt, müssen Sie das tun, um es auf Steam zu testen. Stellen Sie also sicher , dass Sie das jetzt tun. Es wird sich hier öffnen. Mal sehen, ob es den Server vom Computer aus findet. Da steht: Hello Jinks. Das ist mein Steam. Und lass uns weitermachen und auf Gemeinsame Server klicken. Es sollte viel schneller suchen als zuvor. Und du kannst hier sehen, es heißt, komm bitte vom Laptop zu mir. Und das ist von meinem Laptop. Nun, dieser Ping ist 9.999 hat etwas mit der Firewall zu tun und auch mit etwas anderem Ich werde das hier in meinen Blog schreiben, auf meiner Website, sodass du das jederzeit überprüfen kannst , wenn du auch eine Lösung für dieses Problem haben willst Ich werde einige Debug-Probleme haben , die Sie lösen können. Und ja, du kannst dir das ansehen, wann immer du willst. Aber statt hier kannst du sehen, dass der Spieler acht ist. Alles funktioniert. Ich kann nach dem Server suchen. Wenn ich etwas falsch schreibe, verschwindet es. Wenn ich schreibe, zum Beispiel beitreten, kann ich es sehen. Ich schreibe, es entfernt die Suche funktioniert. Jetzt kann ich nach englischen Servern, deutschen Servern und anderen Sprachen suchen. Oder gehe zurück zu allem, wo ich nur Landserver anzeigen kann und es wird verschwinden, weil das ein öffentlicher Server ist , kein Landserver. Ich klicke auf Leere Server ausblenden, es wird erneut aktualisiert, es gibt keine leeren Server. Im Grunde sollte der Server angezeigt werden. Ich klicke noch einmal auf Refresh. Ich kann das wieder entfernen und alles funktioniert einwandfrei. Ich kann darauf klicken und es sollte dem Server beitreten. Hier siehst du einen Join the Server. Jetzt kann ich zum Beispiel Counter Terrorist auswählen, und so fügst du deinem Projekt den Steam-Multiplayer hinzu. Mach weiter und speichere alles. Vielen Dank, dass Sie noch einmal zugesehen haben. Du kannst jederzeit auf Game Instru.com gehen und ich werde noch viel mehr Kurse im Mehrspielermodus auf Steam veröffentlichen, zwei D-Spielen in Unreal Engine Alles, was du dir wirklich wünschst. Du kannst also jederzeit auf meinen Discord-Server kommen, dem Community-Server, und du kannst jederzeit deine Wünsche schreiben, für welche Kurse du sehen möchtest, falls du Hilfe benötigst Ich stehe dir auch zur Verfügung, um dir weiterzuhelfen. Die Community ist wirklich nett und du kannst auch über viele andere Dinge in der Spieleentwicklung sprechen. Es müssen keine Probleme sein. Vielen Dank fürs Zuschauen. Vielen Dank für Ihre Unterstützung und ich hoffe , Sie in meinem nächsten Kurs zu sehen. Danke.