paint-brush
Katas für Unity: Vertiefen Sie Ihr Verständnis von Unity (oder einer anderen Spiel-Engine)von@quilo
404 Lesungen
404 Lesungen

Katas für Unity: Vertiefen Sie Ihr Verständnis von Unity (oder einer anderen Spiel-Engine)

von PoutineWithSalchichon7m2023/07/03
Read on Terminal Reader
Read this story w/o Javascript

Zu lang; Lesen

In ihrer einfachsten Form ist eine Kata eine vorgegebene Abfolge von Bewegungen, die individuell geübt werden. Katas sollen Techniken verfeinern, das Gleichgewicht verbessern und die geistige Disziplin fördern. Der Workshop dient als erste Kata, die wir erkunden werden. Nutzen Sie es zum Lernen, Experimentieren und Testen neuer Funktionen.
featured image - Katas für Unity: Vertiefen Sie Ihr Verständnis von Unity (oder einer anderen Spiel-Engine)
PoutineWithSalchichon HackerNoon profile picture
0-item

Ich bin ein begeisterter Kampfsportschüler, obwohl ich mich nicht als Experte bezeichnen würde. Ich betrachte mich lieber als einen ewigen Weißgurt, der ständig auf der Suche nach Wissen ist.


Obwohl ich über grundlegende Kenntnisse verschiedener Kampfsportarten verfüge, darunter Boxen, griechisch-römisches Ringen, deutsches und italienisches Langschwert, schottisches Backhold, Jiujitsu (sowohl traditionell als auch brasilianisch), Savate und Judo, ist mein Fachwissen in allen Bereichen begrenzt. Ein Konzept, das jedoch über verschiedene Kampfkünste hinausgeht, ist das der Kata.


In ihrer einfachsten Form ist eine Kata eine vorgegebene Abfolge von Bewegungen, die individuell geübt werden. Katas sollen Techniken verfeinern, das Gleichgewicht verbessern und die geistige Disziplin fördern. Sie erleichtern das Auswendiglernen und Wiederholen grundlegender Bewegungen.


Angesichts der Fortschritte in der Pädagogik seit dem 19. Jahrhundert, als die meisten modernen Kampfkunstsysteme kodifiziert wurden, gibt es eine anhaltende Debatte über die Wirksamkeit von Katas als Lehrmethoden.


Der Umfang dieses Artikels geht jedoch nicht auf diese Debatte ein. Stattdessen möchte ich das Konzept der Kata nutzen, um eine Reihe von Übungen vorzustellen, die in Unity oder einer anderen Spiel-Engine durchgeführt werden können, um Ihr Verständnis der Engine zu verbessern und Ihre Fähigkeiten zur Spieleentwicklung zu schärfen.


Ähnlich wie Katas dienen die von mir vorgeschlagenen Übungen der Schulung und dem Simulacrum und können niemals Berufserfahrung ersetzen. Sie sollten sie an Ihren bevorzugten Arbeitsstil anpassen und gestalten.

Andererseits ist es wichtig, sich daran zu erinnern, dass die Spieleentwicklung ein Bereich der Anarchie ist, in dem es nur wenige Regeln gibt, abgesehen vielleicht von ein paar praktischen Richtlinien, wie etwa dem Verzicht auf die Veröffentlichung von Projekten an einem Freitag oder vor Feiertagen.


Lassen Sie uns ohne weitere Umschweife tiefer in die Katas selbst eintauchen:


Kata 1: Der schlaue Drache lacht in seinem Junk-Palast – Die Werkstatt

Der Workshop dient als erste Kata, die wir erkunden werden. Im Wesentlichen ist der Workshop ein ewiges Unity-Projekt, in dem Sie experimentieren, neue Konzepte testen und kürzlich veröffentlichte Funktionen erkunden können.


Hier sind einige Beispiele dafür, was Sie im Rahmen des Workshops tun können:

  • Nutzen Sie es als Bühne für Ihren Proof-of-Concept. Wenn Sie eine neue Spielidee haben und diese schnell als Prototyp umsetzen möchten, ohne sich um Namen, Designs oder irgendetwas anderes als das Kern-Gameplay (das Ihr Hauptaugenmerk sein sollte) zu kümmern, bietet der Workshop eine ideale Umgebung.


  • Nutzen Sie es als Repository für häufig verwendeten Code. Bestimmte Teile des Codes werden unweigerlich wiederverwendet, aber Sie möchten sich möglicherweise nicht darauf verlassen, jedes Mal das Internet zu durchsuchen. In meinem Workshop habe ich beispielsweise benutzerdefinierte Codeausschnitte für die Handhabung von Schaltflächen, Spielzuständen, Pausenmenüs und verschiedenen anderen wesentlichen Elementen, die jedes Spiel benötigt. Diese Snippets sparen Zeit und Mühe und machen es überflüssig, für jedes neue Spiel benutzerdefinierten Code zu schreiben.

    • Ein hilfreicher Tipp für diesen Ansatz, wenn Sie jemals Code aus Online-Quellen kopieren, besteht darin, sicherzustellen, dass Sie den kopierten Code verstehen, ihn neu zu schreiben, um dem Stil und den Standards Ihres Projekts zu entsprechen, und einen Kommentar hinzuzufügen, der seinen Ursprung angibt. Codeautoren aktualisieren möglicherweise ihre Implementierungen oder Sie vergessen den Kontext für die Verwendung einer bestimmten Lösung, aber ein Kommentar kann die notwendigen Informationen liefern.


  • Nutzen Sie es zum Lernen, Experimentieren und Testen neuer Funktionen. Indem Sie das Workshop-Projekt auf dem neuesten Stand halten (Sie können einen separaten Zweig für die LTS-Version verwalten), können Sie neue Funktionen erkunden, ohne ein völlig neues Projekt erstellen oder, schlimmer noch, versuchen zu müssen, sie in Ihr laufendes Projekt zu integrieren.

    • Seit Juni 2023 hat Unity beispielsweise eine neue Reihe von KI-Tools veröffentlicht. Anstatt ein völlig neues Projekt zu erstellen, um diese Funktionen zu nutzen, kann ich vorhandene Szenen in meinem Workshop zum Experimentieren wiederverwenden. Beispielsweise könnte meine einfache Pong-Implementierung von KI-generierten Texturen profitieren.

Kata 2: Der schlaue Fuchs tanzt für den Mond – Der Klon

Haben Sie jemals ein Spiel gespielt und sich gefragt: „Wie haben sie das geschafft?“ Jetzt ist Ihre Chance, es herauszufinden. Wenn Sie keine Ideen für Ihre eigene Spielentwicklung haben oder sich zwischen Projekten befinden, wählen Sie ein Spiel aus, das Sie kürzlich gespielt haben, wählen Sie eine Mechanik, einen Effekt oder eine Funktion aus diesem Spiel und versuchen Sie, es zu klonen.


Beachten Sie bei dieser Übung die folgenden Punkte:

  • Wenn ich von Klonen spreche, beziehe ich mich nicht auf eine exakte Nachbildung, sondern vielmehr auf die Erfassung der Essenz des ausgewählten Elements.

    • Zum Beispiel war ich kürzlich vom Bewegungssystem in Spider-Man: Miles Morales fasziniert. Allerdings wäre der Versuch, das gesamte Bewegungssystem eines solch komplexen 3D-Actionspiels zu klonen, eine ziemliche Herausforderung. Stattdessen würde ich mich darauf konzentrieren, den Aspekt zu klonen, der mich am meisten fasziniert, wie zum Beispiel das Web-Swinging. Um dies zu erreichen, benötige ich kein vollständiges Spider-Man-Modell oder detaillierte Gebäude. Ein einfacher Würfel, der auf Tastendrücke des Spielers reagiert und ein Seil erzeugt, an dem der Spieler schwingt und sich vorwärts bewegt, würde ausreichen, um die Bewegungsfreiheit des Originalspiels nachzubilden.


  • Setzen Sie sich ein strenges Zeitlimit. Denken Sie daran, dass Sie kein ganzes Spiel erstellen, sondern nur ein einzelnes Element eines vorhandenen Spiels klonen. Planen Sie etwa sechs Arbeitstage ein, was drei Wochenenden entspricht, ausreichend Zeit für Vollzeitstudenten und berufstätige Entwickler.


  • Dies ist die perfekte Gelegenheit, den Workshop zu nutzen. Es bietet einen idealen Platz zum Speichern Ihrer Klonprojekte. Wenn Sie sich entscheiden, ein bestimmtes Konzept weiterzuverfolgen, können Sie es einfach in ein eigenes Projekt kopieren, ohne Listen mit aufgegebenen Git-Projekten zu durchforsten.


  • Wenn Ihr Portfolio etwas mangelhaft erscheint, ist diese Übung eine hervorragende Möglichkeit, es zu verbessern. Nehmen Sie das geklonte Element und verfeinern Sie es, indem Sie ein Menü, eine Pausenfunktion, Hintergrundmusik und eine Einführung hinzufügen, in der Ihre Ziele erläutert werden. Ein solches fertiges Produkt wird Personalvermittler weitaus mehr beeindrucken als ein Dokument voller brillanter, aber unvollendeter Spielideen.


  • Führen Sie nach jeder Klonübung eine kurze Obduktionsanalyse durch. Denken Sie darüber nach, was gut funktioniert hat, identifizieren Sie Schwächen, denken Sie über zukünftige Verbesserungen nach und ziehen Sie wertvolle Erkenntnisse daraus, die es wert ist, weitergetragen zu werden.

Kata 3: Die Götter lieben einen Narren – Clownerie

Gelegentlich spiele ich Clowns. Ich wähle eine Idee aus, die technisch interessant ist oder mehrere technische Komponenten kombiniert, die ich lernen oder noch einmal aufgreifen möchte, aber kein kommerzielles Potenzial oder praktischen Wert hat.


Der Zweck des Clowns besteht darin, den Zwang zur Perfektion zu beseitigen. Bei der Arbeit an einem Projekt, das auf Profit oder die Präsentation vor anderen abzielt, werden Designentscheidungen bewusster. Beim Clowning können Sie sich ausschließlich auf die Vertiefung Ihres Wissens in bestimmten Bereichen konzentrieren.


Vor ein paar Jahren habe ich zum Beispiel ein Projekt namens „Wizardry Exchange“ gestartet. Es handelte sich um eine App, die Währungen von realen Nennwerten (CAD, EUR, GBP oder USD) in die in Harry Potters Universum verwendete Währung (Knuts, Sicheln und Galeonen) umwandelte. Dieses Projekt umfasste Unity3D WebGL für das Front-End, Go für das Backend, ein benutzerdefiniertes Caching-System und die Bereitstellung auf AWS mithilfe von Docker.


Ist das ein praktisches oder nützliches Projekt? Gar nicht! Das Frontend erfordert kein Unity, Go ist für ein paar einfache Endpunkte übertrieben und die Anwendung könnte auf einer Kartoffel laufen, geschweige denn auf AWS.


Warum also die Mühe machen? Erfahren Sie mehr über WebGL mit Unity, nutzen Sie Go für die Serverentwicklung und sammeln Sie Erfahrungen beim Erstellen und Bereitstellen von Anwendungen mit Docker auf AWS . Das Endergebnis ist nicht so wichtig wie der Prozess des Wissenserwerbs.


Hier sind ein paar weitere Überlegungen zum Clowning:

  • Clown-Projekte sind nicht zum Teilen gedacht, nutzen Sie also die Freiheit, an Dingen zu arbeiten, die Sie wirklich interessieren. Im Gegensatz zu The Clone ist dieses Projekt zeitaufwändiger.
  • Beschränken Sie Ihre Clown-Projekte jedoch auf nicht mehr als zwei Monate Arbeit. Es handelt sich um eine wertvolle Übung, die jedoch als Möglichkeit betrachtet werden sollte, Abwechslung in Ihr Trainingsprogramm zu bringen.
  • Versuchen Sie nicht, jeden möglichen Lernaspekt in Ihr Clown-Projekt zu integrieren. Wählen Sie zwei oder drei Bereiche aus, die Sie erkunden möchten, und verwenden Sie Code (vielleicht aus Ihrem Workshop) wieder oder kopieren Sie Code für Teile, die Sie nicht besonders interessieren.


Der Bär schläft, wenn er satt ist – Schlussfolgerungen

Und damit sind die drei Katas abgeschlossen, die Ihnen helfen können, Ihr Verständnis von Unity oder einer anderen Spiel-Engine zu vertiefen.


Ich möchte die Aufmerksamkeit auf einen bestimmten Ausdruck lenken, den ich zuvor verwendet habe: „Trainingsprogramm“ .


Dieser Ansatz leitet meine Ingenieurspraxis seit über 15 Jahren. Ich betrachte einen Universitätsabschluss als den Erwerb eines schwarzen Gürtels, und ähnlich wie beim Judo (aus dem das Gürtelsystem stammt) bedeutet ein schwarzer Gürtel eher ein Verständnis der Grundlagen als eine Meisterschaft.


Es wird erwartet, dass man nach dem Erreichen des schwarzen Gürtels unabhängige Forschung betreibt, um seine Fähigkeiten in der Judo-Kunst weiterzuentwickeln.


Ebenso liegt es in Ihrer Verantwortung, nach Ihrem Abschluss ein Schulungsprogramm zu erstellen, um Ihre technischen Fähigkeiten kontinuierlich zu verbessern und Wissen zu erwerben. Während Sie durch die Arbeit Wissen erwerben, mangelt es möglicherweise an Anleitung und persönlicher Entwicklung.


Daher ist die Erstellung eines Schulungsprogramms zur Verbesserung Ihrer technischen Fähigkeiten von entscheidender Bedeutung. Wenn sich auf diese Weise eine Gelegenheit ergibt, beispielsweise wenn in Ihrem Unternehmen eine neue Stelle frei wird, Sie Ihren aktuellen Job kündigen oder anderswo auf eine verlockende Stelle stoßen, verfügen Sie über mehr als nur Berufserfahrung.


Denken Sie daran, dass es bei Ihrem Job im Gegensatz zur Universität nicht unbedingt darum geht, Ihre Talente über ein bestimmtes Maß hinaus zu fördern. Eine gute Arbeit reicht aus, aber die Unterscheidung zwischen beiden kann manchmal eine Herausforderung sein. Ein Schulungsprogramm sichert Ihr berufliches Wachstum.


Ich hoffe, dass Sie diese Katas zumindest interessant, wenn nicht sogar nützlich fanden, und dass sie Ihnen möglicherweise einen neuen Weg zur Weiterentwicklung Ihrer technischen Fähigkeiten eröffnen.


Auch hier veröffentlicht.