Unity Editor Extensions - Seminar / Kurs von INCAS Training und Projekte GmbH & Co. KG

Editor Programmierung mit Unity

Inhalte

Seminarinhalte

Basic Datentypen und Serializability von Custom Classes

  • Serialisierbare Standardklassen und Datentypen Wie Datenstrukturen aufgebaut werden müssen, damit sie in Assets und Szenen korrekt speicherbar sind, ist eine wichtige Grundlage zum Erstellen von eigenen Daten innerhalb von Unity.  
  • Reflections von Template Datentypen Nicht alle Daten eines Klassenkonstruktes sind immer vollständig bekannt. Reflections (ein C# Feature) helfen hierbei, unbekannte Inhalte zu klassifizieren und anzuzeigen.  
  • Defines und Setup für korrektes Builden des Projekts Da Unity auf der Basis einer Edit-Time/Run-Time Trennung basiert, wird entsprechend vermittelt, wie Editor-Skripte sich in der Umgebung einfügen müssen, um korrekt auch in der Publishing-Phase zu funktionieren.

Eine Auswahl von möglichen Wegen, um den Editor zu erweitern

  • Menü-Erweiterungen mit statischen Funktionen Menüeinträge stellen eine Möglichkeit dar, einfache Abläufe oder Tests in der Unity-Umgebung schnell verfügbar zu machen.  
  • Der Custom Inspector Custom Inspector Ansichten sind der Schlüssel zu komplexen Einstellmöglichkeiten für MonoBehaviours. Hier können Klassen mit beliebigen Zusatzfunktionen projektweit ausgestattet werden.  
  • Seperate EditorWindows Seperate EditorWindows stellen eine der komplexesten Formen der Unity-Erweiterung dar. Bei der Erstellung ist quasi alles im Rahmen der UnityGUI-Möglichkeiten erlaubt. Hiermit sind z.B. Node-Systeme und komplexe neue GUIs darstellbar.  
  • PropertyDrawers und andere Verschönerungen Viele Datentypen und Erweiterungen bedürfen teils keiner aufwändigen Extrafunktionalität, sondern komplexer Darstellungen der Einstellungsmöglichkeiten eines einzelnen Eintrags. PropertyDrawers sind der Schlüssel zur angenehmen Benutzung des Inspectors.

Callback-Funktionalitäten und Szenenupdate

  • OnSceneGUI Grafische Erweiterungen im SzenenView sind ein wichtiger Schlüssel zur Darstellung von neuen Funktionalitäten.  
  • OnInspectorGUI Die Inspector-Darstellung kann beliebig verändert und erweitert werden. Hier wird geklärt, wie das funktioniert.  
  • EditorApplication.update / EditorApplication.delayCall Nicht alle Funktionalitäten sind immer auf Knopfdruck auszulösen. Wie man beliebige Jobs innerhalb der Unity-UI im Hintergrund bzw. zu anderen Zeitpunkten auslöst, wird nun geklärt.  
  • Input via Maus und Keyboard Direkter Input durch Maus und Keyboard ermöglicht vollkommen neue Eingabemethoden und Funktionalitäten.  
  • Event-Reaktionen Die Möglichkeit, auf bestimmte Events in der bereits bestehenden GUI zu reagieren, ist essentiell, um z.B. auf Menü-Kommandos Aktionen folgen zu lassen.  
  • Undo/Redo-Funktionalitäten Arbeiten am Computer ohne Undo/Redo ist undenkbar. Unity besitzt ein komplexes System für die Historien-Verwaltung.

Inspector-, Szenen- und EditorWindow-Aufbau

  • Handles und Gizmos im Editor Handles und Gizmos sind wichtige Tools zum darstellen von grafischen Inhalten. Erzeugt werden Debug-Texte und Grafiken, die Zusammenhänge in Funktionalitäten und Tools visualisieren.  
  • Szenenkameras und Raycasting im SceneView Der SceneView hat diverse Möglichkeiten der Darstellung: Auf z.B. der Geometrie die Szene-Daten anzeigen oder auslesen zu können, ist eine vielseitige Funktionalität.  
  • GUILayout/EditorGUILayout und Custom-Eingabeelemente Die Eingabeelemente sind nicht zwangsläufig immer nur Buttons und Sliders. Mit Hilfe der Darstellungstools sind frei erfundene GUIs darstellbar und mit Funktionalität verknüpfbar.  
  • Processing Feedback bei zeitaufwändigen Aufgaben Viele Aufgaben im Editor sind sehr zeitaufwändig; ein gutes Beispiel hierfür ist z.B. das NavMesh Baking. Wie solche Prozesse selbst visualisierbar und mit Progress und Abbruch-Möglichkeit ausstattbar sind, erfahren wir hier.  
  • Inspector-Aufbau für gleichzeitiges Manipulieren von multiplen Instanzen Da mehr als ein Objekt für den Inspector auswählbar und manipulierbar ist, sind spezielle Vorkehrungen notwendig, um das Editieren von multiplen Instanzen mit den neuen Skripten vereinbar zu machen.  
  • Detektieren von und reagieren auf GUI-Veränderungen Gerade bei zeitaufwändigen Dingen muss geklärt werden, wann Änderungen im Inspector Prozesse auslösen und wann nicht. Custom-GUI Elemente sind hierbei abzufragen und Logik an die Auslösung zu hängen.  
  • Öffnen von Standard-Fenstern für Szenen-Interaktion Bestehende Dialoge für Verknüpfungen und Interaktion mit z.B. Files wird über Standard-Editorfenster gelöst. Wie diese zu öffnen und anzuwenden sind, wird geklärt.  
  • Objekte, Selections und Modifikationen in der Hierachy Selektionen und Objekte in der Hierachy spielen oft eine Rolle z.B. im Manipulieren der Szene. Hier erfahren wir, wie diese Auswahlen und Objekte in die Funktionalitäten einzubinden sind.  

Die Asset Database

  • Auslesen, speichern, laden und refreshen Die AssetDB ist der Schlüssel zum Verpacken und Wiederverwenden von Inhalten. Wie diese in Editor-Extensions genutzt und ausgelesen wird, erfahren wir hier.  
  • Erstellen von Inhalten Inhalte in der AssetDB sind nicht zwangsläufig statische Größen. Wir können auch prozedural Inhalte erstellen und zur Wiederverwendung abspeichern und nutzen.

Der Unity AssetStore

  • Publishing von erstellten Extensions im Store Der Unity AssetStore stellt eine interessante Einkommensquelle für jede Form von Publisher dar. Privatpersonen sowie Firmen können hier ihre Inhalte und Extensions frei verkaufen. Es wird auf den Aufbau und die Herangehensweise eingegangen.  
  • Guidelines für den Aufbau Unity selbst stellt gewisse Anforderungen für ein erfolgreiches Publishing im Store. Auf was zu achten ist und wie z.B. der Code und die Pakete aufzubauen sind, erfahren wir hier.

In diesem dreitägigen Entwicklertraining lernen Sie von einem professionellen Unity-Entwickler, das Beste aus Unity heraus zu holen. Das Ziel des Kurses ?UNITY Editor Extensions? ist eine Heranführung an die Editor-Programmierung mit Unity. In den vorliegenden Inhalten wird im Detail auf die Erweiterung von Unity im Editor-Modus eingegangen und es werden Ihnen praxiserprobte Techniken vermittelt. Durch den Kurs sind Sie im Anschluß in der Lage, Prozess-Tools und Funktionalitäten in Unity einzubauen, die die von Haus aus vorliegenden Fähigkeiten des Softwarepaketes beliebig erweitern oder vollkommen neu definieren oder erfinden. Nutzen Sie die Möglichkeit, in diesem Training hinter die Kulissen von Unity zu blicken.

Lernziele

  • Skripte in C# anlegen und verstehen können
  • Praxiserfahrung im Aufbau von Szenen und Funktionalitäten in Unity ist grundlegend erforderlich
  • Software-Design und Mathematik-Kenntnisse
  • Verständniss für Vektoren im 3D-Raum

Zielgruppen

Fortgeschrittene Entwickler, um Arbeitsweisen innerhalb der Realtime-3D-Produktion zu nutzen

SG-Seminar-Nr.: 5266447

Anbieter-Seminar-Nr.: 4428

Preis jetzt anfragen

Seminar merken ›

Semigator berücksichtigt

  • Frühbucher-Preise
  • Last-Minute-Preise
  • Gruppenkonditionen

und verfügt über Sonderkonditionen mit einigen Anbietern.

Der Anbieter ist für den Inhalt verantwortlich.

Über Semigator mehr erfahren

  • Anbietervergleich von über 1.500 Seminaranbietern
  • Vollständige Veranstaltungsinformationen
  • Schnellbuchung
  • Persönlicher Service