Skripting in Unity Grundkurs

Die Konsole und Fehlermeldung

Testen Sie unsere 1985 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Niemand ist perfekt und so wird auch Programmcode stets Fehler enthalten. Es gilt, diese zu identifizieren und Fehlermeldungen richtig zu interpretieren!
06:42

Transkript

Fehlermeldungen kann man leider nicht vermeiden, wenn man programmiert. Das ist in Unity so und das ist wahrscheinlich auch bei jeder anderen Programmieraufgabe so. Um Fehler zu erkennen, und um diese überhaupt darzustellen gibt es in Unity das Konsolenfenster. Im Standard-Layout von Unity ist dieses getapt mit der Projektansicht. Wir finden also den Reiter Console, also Konsole und wenn wir dies öffnen, steht entweder schon eine ganze Menge drin, wie jetzt hier, oder die Konsole ist leer. Die Konsole zu leeren habe ich gerade realisiert durch einen Klick auf "Clear". Diese 1, 2, 3, 4 Buttons haben jeweils eine eigene Funktion. Clear - haben wir gerade gesehen - löscht die zurzeit angezeigten Fehler, Warnungen und Meldungen. "Collapse" sorgt dafür, dass eine immer wiederkehrende Warnung aufgezählt wird, also nicht immer untereinander geschrieben wird. "Clear on Play" sorgt dafür, dass wenn Unity in den Playmode geht, die Konsole zunächst geleert wird, um sie dann später wieder neu zu füllen. Und "Error Pause" sorgt dafür, dass die gesamte Ausführung in den Pause-Modus versetzt wird, sobald ein Error auftritt. Unity unterscheidet in der Konsole zwischen 3 verschiedenartigen Meldungen. Es gibt einfache Meldungen, Warnungen und Errors. Zu diesen Meldungen haben wir hier rechts auch 3 Auswahlknöpfe, womit wir jeweils festlegen können, möchte ich Warnungen angezeigt bekommen, ja oder nein, oder einfache Meldungen, oder Error-Messages. Wir selbst als Programmierer können solche Meldungen, die in die Konsole geschrieben werden, auch selbst forcieren. Dazu erstelle ich mal ein neues Skript über einen Rechtsklick in die Project-View und dann die Funktion "Create C sharp Skript" auswählen, und dann nenne ich das neue Skript "Error Messeges". Sollte diese Fehlermeldung auftauchen, einfach mit einem Klick auf Reload oder durch Drücken der Entertaste bestätigen. Ich werde nun dafür sorgen, mit verschiedenen Befehlen, dass einmal eine Meldung ausgegeben wird, eine Warnung und eine Error-Message. Beginnen tun wir dabei immer mit Debub.log und dann dem Inhalt der jeweiligen Meldung. Debug.log mit dem Inhalt würde sagen dies ist eine Meldung. Hier habe ich mich verschrieben, soll natürlich Meldung heißen. Debug.log Warning, wie der Name schon sagt, dies ist eine Warnung. Dann gibt es noch Debug.log Error und natürlich ist dies ein Error. Wir schauen jetzt einfach mal, was passiert. Ich habe dieses Skript durch den Shortcut Strg+S oder durch Klicken auf diese kleine, blaue Diskette gespeichert. Wechsele dann zurück in Unity und muss jetzt das Skript natürlich noch einem Gameobject zuweisen. Hier fehlt zurzeit ein Skript. Das werde ich mal rausschmeißen und dafür unsere Error-Message hier draufziehen. Skripts funktionieren nur, wenn sie auf Gameobjects liegen. Wenn ich das Spiel nun starte, mir die Konsole anschaue, hier steht eine ganze Menge drin, aber Clear on Play sagt ja: Wenn ich das Spiel starte, dann wird dieser Inhalt gelöscht. Und jetzt wird der Inhalt ausgetauscht durch eben diese 3 Meldungen. Repräsentiert auch hier durch ein weißes Icon, auch hier rechts zu sehen, ein gelbes Dreieck, oder ein rotes Icon. Ein- und ausblenden, sieht man jetzt ganz schön, wenn ich hier auf die Buttons klicke, werden jeweils die Meldungen angezeigt oder ausgeblendet. Die Konsole ist also eines der wichtigsten Fenster für uns Programmierer, um zu sehen, was macht unser Code gerade. Wir können dann verschiedenen Positionen zwangsweise eine Meldung, eine Warnung, einen Error ausgeben, um zu sehen, wo befindet sich der Code zurzeit, wo ist zurzeit die Ausführung meines Spiels, oder um einfach Informationen über Meldungen zu bekommen. Außerdem werden Fehler in diese Konsole reingeschrieben, um zu sehen, beziehungsweise um uns Programmierern mitzuteilen hier läuft etwas nicht falsch, da und da ist der Fehler aufgetreten, und jetzt müssen wir daran gehen, ihn zu fixen. Ich werde daher einmal einen Fehler provozieren und gehe nochmal in unsere Error-Messsages. Ohne jetzt ins Detail gehen zu wollen, was ich hier schreibe, werde ich diesen Fehler provozieren. Und wir sehen, wenn ich das abspeichere und nochmal zu Unity wechsele, hier ist was hinzugekommen. Ich kann hier jetzt auf Clear drücken, aber eine Error-Message, also ein Fehler wird immer bestehen, denn alleine zu sagen: "lösche mir bitte meine Konsole" würde noch nicht den Fehler im Skript beheben. Leider ist es so, und deshalb zeigt uns die Error-Message an, wo ist der Fehler, in welchem Skript. Nämlich hier Assets Scripts Error-Message, also unser gerade angelegtes Skript. Und wir bekommen sogar gesagt, in welcher Zeile dieser Fehler ist. Hier Zeile 19. Dann bekommen wir noch eine Fehlernummer, und eine Beschreibung, was denn da gerade schief läuft. Constant Value 5.5, cannot be converted to a int. Wenn ich hier einen Doppelklick auf diesen Fehler mache, zeigt mir Unity direkt das richtige Skript an und markiert sogar die Zeile, in der der Fehler vorhanden ist. Natürlich können wir das hier nicht machen, wir korrigieren das kurz, speichern ab, und schon sollte der Fehler behoben sein.

Skripting in Unity Grundkurs

Greifen Sie mithilfe von C#-Skripts dynamisch in Ihr Unity-Projekt ein. Auch Programmier-Neulinge lernen Schritt für Schritt den Einstieg ins Skripting.

4 Std. 50 min (40 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Anleitung für Unity 5-Nutzer:

  • Schritt 1: Projekt in Unity 5 öffnen und die Meldung bestätigen, dass das Projekt ein Upgrade bekommt.
  • Schritt 2: Wenn die Meldung kommt, dass die API upgedatet werden muss, diese auch bestätigen

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!