Ich bin ziemlich neu in C#, aus einem starken Hintergrund in Java, Python und einige "Web" Zeug. Ich verpasse hier wohl nur ein wenig Wissen, dass hoffentlich jemand für mich ausfüllen kann.In Unity, was genau passiert, wenn ich Update() implementieren, und andere Nachrichten von MonoBehaviour
Als ich die Unity Scripting API durchging, bemerkte ich viele Methoden, die unter "Nachrichten" aufgelistet sind, was meine erste Verwirrung ist. Was genau ist der Unterschied zwischen einer "Botschaft" und einer "Methode", für mich scheinen sie das Gleiche zu sein, aber die Terminologie wirft mich aus.
Mein zweiter Punkt der Verwirrung ist, dass, wenn ich eine "Nachricht" wie Update() in meinen abgeleiteten Klassen implementieren, muss ich nicht das override-Schlüsselwort verwenden. Was nervt mich, denn würde ich es nicht einfach verstecken? In diesem Fall würde die Update-Schleife nicht nur über MonoBehaviour und nicht über meine abgeleitete Klasse wissen, und in MonoBehaviour Update() anstelle meiner Klasse aufrufen? Das wirft mich für eine Schleife. Ich bin amüsant, dass hinter den Kulissen etwas passiert?
Ich komme wirklich gut mit Unity aus, und C#, das ist nur ein Knackpunkt für mich, wo ich fühle, dass mir etwas Wissen fehlt.
Das klärt die Dinge schön auf. Vielen Dank. –
SendMessage() verwendet Reflektion. Update() verwendet nicht SendMessage() - Siehe Abschnitt "Wie das Update aufgerufen wird" in blogs.unity3d.com/2015/12/23/1k-update-calls – BlueSilver