Coding

Im Bereich Coding werden die Hauptmechaniken eines Spiels und die Assets der anderen Departments in der Game Engine Unity implementiert. Dazu werden Unitys Game Components verwendet und mit eigenen C#-Scripts verbunden. In den Workshops werden dazu die Basics des Programmierens in Unity vermittelt. Es ist hilfreich, wenn man schon ein wenig Erfahrung im Programmieren besitzt, doch auch eine Teilnahme ohne Vorkenntnisse ist machbar.
Fertigkeiten im Coding Department
Rolle und Verantwortung
Umsetzung und Gestaltung des Spiels planen. Je nach euren Stärken und Wünschen teilt ihr die Bereiche auf, z.B: Eine Person programmiert den Spieler, die andere Person programmiert das Hauptmenü. Eine wichtige Aufgabe ist es, alle Assets aus den anderen Abteilungen korrekt in das Spiel zu integrieren.
Wenn Sie am Sommersemester teilnehmen, arbeiten Sie das ganze Semester über in einem Team von Programmierern, um ein komplexeres Spiel zu entwickeln. Hier kommt die organisierende Rolle des Coding Leads hinzu, der für die langfristige Verteilung der Aufgaben und die Koordination mit den anderen Abteilungen zuständig ist.
Vokabular des Coding Departments
Eine Scene ist eine Datei, in der ein Level bzw. eine Komposition von GameObjects gespeichert wird. Die Scene wird in Unity mittig im Scene View angezeigt. Der Name der aktuell geöffneten Scene ist in Unity oben-links nach dem Namen des Projekts zu sehen. Beim erstmaligen Erstellen eines Projekts wird die Scene "SampleScene" erzeugt und geöffnet.
Alle Objekte in Unity werden als GameObjects bezeichnet. An diese werden Components angehängt, welche die Eigenschaften des Objekts bestimmen. Die Objekte werden dann in Scenes eingefügt um miteinander zu interagieren.
Components werden an GameObjects angehängt, um ihnen Eigenschaften oder Funktionalitäten zuzuschreiben. Jedes GameObject muss ein Transform Component besitzen, welches die Position, Rotation und Skalierung des Objekts in der Scene angibt. Ein Script ist gleichzeitig ein Component.
Prefabs (aus dem engl. Wort prefabricated) sind Zusammensetzungen aus GameObjects, die als Dateien abgespeichert werden. Diese Prefab-Dateien können in jede Scene instanziiert werden und verhalten sich wie GameObjects. Der Vorteil eines Prefabs ist es, dass man beim Ändern jener Eigenschaften nicht jede Instanz separat ändern muss, sondern das Prefab zentral verändern kann und die Änderungen automatisch auf alle Instanzen übertragen werden. Beispiel: Ein Prefab names "Player" beinhaltet womöglich ein "3D-Modell"-GameObject, sowie ein "Camera"-GameObject.