Einführung in Unity Scripting

Um den Assets im Projekt Leben einzuhauchen, benötigen wir Skripte. Dies ist der grundlegendste Teil der Anwendung, die Sie mit Unity Scripting erstellen möchten. Skripte werden verwendet, um die Logik zu schreiben, wie sich die Spielobjekte in der Anwendung verhalten sollen. Es kann verwendet werden, um verschiedene AR-, VR-Systeme, Grafikeffekte, Animationssteuerungen, Physiksteuerungen, benutzerdefinierte KI-Systeme usw. zu erstellen. Insgesamt ist das Erstellen von Skripten das Herz und die Seele der Anwendung.

Wie verwende ich Unity Scripting?

Unity 3D verwendet Monobehaviour, um aus seinen Skripten zu erben. Es unterstützt C # nativ. Es ist die am häufigsten verwendete Skriptsprache in Unity. Wir können jedoch Skripte in vielen anderen .NET-Sprachen schreiben, wenn sie kompatible DLLs kompilieren können. Daher bleiben wir vorerst beim C # -Skripting.

Schritte zum Erstellen von Unity Scripting

Lassen Sie uns die Schritte zum Erstellen und Verwenden der Skripte lernen.

1. Erstellen Sie die Skripte

  • Navigieren Sie zum Projekt. Klicken Sie mit der rechten Maustaste auf Erstellen> C # -Skript.
  • Eine andere Möglichkeit ist die Auswahl von Assets> Create> C # Script aus dem Hauptmenü.

  • Es wird ein neues Skript erstellt, das uns auffordert, den neuen Namen einzugeben.
  • Geben Sie dem Skript einen richtigen Namen und drücken Sie die Eingabetaste. Unser erstes Skript wurde erfolgreich erstellt.

2. Wählen Sie den Skript-Editor

  • Unity verwendet Visual Studio als Standard-Skripteditor.
  • Um den Skript-Editor zu ändern, wählen Sie Bearbeiten> Voreinstellungen> Externe Tools.
  • Suchen Sie nach dem Dateispeicherort des Skripteditors.

3. Skript-Anatomie

  • Das GameObject-Verhalten kann durch verschiedene Funktionen in Unity gesteuert werden, die als Komponenten bezeichnet werden.
  • Außer diesen Komponenten können wir, wenn wir eine bestimmte Funktion benötigen, diese mithilfe von Skripten implementieren.
  • Wenn wir auf das Skript doppelklicken, wird der Skript-Editor geöffnet.
  • Die Struktur des Skripts sieht wie folgt aus.

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MyFirstScript: MonoBehaviour
(
// Start is called before the first frame update
void Start()
(
)
// Update is called once per frame
void Update()
(
)
)

  • Alle Skripte, die wir innerhalb von Unity schreiben, werden von der eingebauten Klasse namens Monobehaviour abgeleitet.
  • Es ist wie eine Blaupause der neuen benutzerdefinierten Komponente, die das Verhalten von Spielobjekten ändern kann.
  • Jedes Mal, wenn Sie dieses Skript als Komponente an das Spielobjekt anhängen, wird eine neue Instanz des Skriptobjekts erstellt.
  • Der Klassenname des Skripts wird aus dem Dateinamen ausgewählt, den wir zum Erstellen des Skripts angegeben haben.
  • Stellen Sie sicher, dass der Name der Klasse und der Name der Datei identisch sind, um das Skript an das Spielobjekt anzuhängen. Andernfalls erhalten wir einen Kompilierungsfehler und können dieses Skript nicht an Game Object anhängen.
  • Hier sehen wir, dass standardmäßig zwei Funktionen angelegt sind. Sie sind Start und Update.
  • Die Start-Funktion wird verwendet, um die Dinge im Skript zu initialisieren, bevor wir sie verwenden.
  • Die Startfunktion wird zu Beginn des Spiels aufgerufen, wenn das Skript im Inspektorfenster des Spielobjekts aktiviert ist. Es wird nur einmal pro Ausführung des Skripts aufgerufen.
  • Die Update-Funktion wird bei jedem Frame aufgerufen. Grundsätzlich ist dies erforderlich, wenn in jedem Frame etwas zu handhaben ist. Es kann sich um Bewegung, Eingaben des Benutzers, Auslösen von Aktionen usw. handeln.
  • Wir können unsere benutzerdefinierten Funktionen schreiben, ähnlich wie die Start- und Aktualisierungsfunktionen geschrieben werden.

4. Hängen Sie das Skript an das Spielobjekt an

  • Wählen Sie das Spielobjekt aus, an das das Skript angehängt werden soll.
  • Die erste Möglichkeit besteht darin, das Skript direkt in das Inspektorfenster des Spielobjekts zu ziehen und dort abzulegen. Hier werden wir es an der Hauptkamera anbringen.
  • Die zweite Möglichkeit besteht darin, auf Komponente hinzufügen zu klicken, den Skriptnamen einzugeben und das Skript auszuwählen.

  • Es wird an das Spielobjekt angehängt, wie wir es im Inspektorfenster sehen können.

5. Was sind diese Variablen, Funktionen und Klassen?

  • Variablen: Variablen sind wie Container, die Werte oder Referenzen der Objekte enthalten. Gemäß der Konvention beginnt der Variablenname mit dem Kleinbuchstaben.
  • Funktionen : Funktionen sind das Code-Snippet, das die Variablen und die zusätzliche Logik verwendet, um das Verhalten der Objekte zu ändern. Sie können auch diese Variablen ändern. Funktionen beginnen mit Großbuchstaben. Es ist eine gute Praxis, unseren Code innerhalb der Funktion so zu organisieren, dass die Lesbarkeit verbessert wird.
  • Klassen: Klassen sind die Sammlung von Variablen und Funktionen zum Erstellen einer Vorlage, die die Objekteigenschaft definiert. Der Klassenname wird dem Dateinamen entnommen, den wir zum Zeitpunkt der Erstellung des Skripts angegeben haben. Normalerweise beginnt es mit dem Großbuchstaben.

6. Referenzen im Inspektor angeben:

  • Die Variablen, die in der Klasse als öffentlich deklariert sind, werden dem Inspektor zugänglich gemacht, und wir können ihm beliebige Referenzen oder Werte zuweisen.
  • Betrachten Sie den folgenden Code:

public class MyFirstScript : MonoBehaviour
(
public GameObject cameraObject;
// Start is called before the first frame update
void Start()
(

)
)

  • Das Kameraobjekt ist hier die öffentliche Variable, die eine Referenz benötigt. Gehen Sie zum Unity-Editor. Wählen Sie das Objekt aus, und wenn Sie sich die Skriptkomponente ansehen, sehen Sie einen leeren Bereich (None (Game Object)) wie unten. Wählen Sie zum Zuweisen das Spielobjekt aus der Hierarchie aus und ziehen Sie es in das Feld Kameraobjekt.

7. Greifen Sie auf die Komponenten zu

  • Es wird Szenarien geben, in denen wir auf verschiedene Komponenten zugreifen müssen, die mit dem Spielobjekt verbunden sind.
  • Nehmen wir ein Beispiel für den Zugriff auf die Kamera-Komponente des Spielobjekts.
  • Get Component erhalten wir den Typ Camera.

void Start ()
(
Camera cameraObject = GetComponent();
Debug.Log("Camera Object is: " + cameraObj);
)

8. Ändern Sie die Komponentenwerte

  • Das Ändern der Komponentenwerte ist der nächste Schritt zum obigen Beispiel.
  • Der folgende Code erklärt, wie wir das Sichtfeld der Kamera ändern können.
  • Nachdem wir im Editor auf die Wiedergabetaste geklickt haben, können wir im Inspektormenü der Kamera sehen, dass sich das Sichtfeld der Kamera von Standardwert 60 auf 90 ändert.

public GameObject cameraObject;
private int cameraFOV = 90;
void Start ()
(
Camera cameraObj = GetComponent();
cameraObj.fieldOfView = cameraFOV;
)

Fazit

In diesem Artikel haben wir uns mit Unity-Skripten, der Notwendigkeit von Skripten und der schrittweisen Erstellung von Skripten und verschiedenen Skriptkomponenten sowie dem Zugriff auf die Komponenten über das Skript und deren Änderung vertraut gemacht.

Empfohlener Artikel

Dies war ein Leitfaden für Unity Scripting. Hier diskutieren wir die Einführung und Schritte zum Erstellen eines Skripts. Sie können auch unsere anderen Artikelvorschläge durchgehen, um mehr zu erfahren -
  1. Shell-Scripting-Befehle
  2. Was ist Shell Scripting?
  3. Was ist Cross-Site Scripting?
  4. Shell Scripting Interview Fragen
  5. Wie installiere ich Unity?
  6. Stapelverarbeitungsbefehle | Liste | Beispiele