Unity 3D-Tutorial: #31 – Lokale, Member und scriptübergreifende Variablen
Dieser Artikel gehört zu einer ganzen Tutorial Serie. Hier gelangt Ihr zu der Artikelübersicht: Unity 3D Tutorial Serie .
Wo ist der Unterschied zwischen einer Member-Variablen und einer Public-Variablen?
Wie deklariere ich eine Variable in Javascript, die ich in einem anderen Script nutzen möchte, und wie spreche ich diese dann in einem anderen Script innerhalb von Unity an?
Dies und einiges mehr erkläre ich in diesem Unity-Tutorial.
Tutorial-Inhalt
Bisher nutzten wir in dieser Tutorial-Reihe immer nur lokale Variablen und sogenannte Member-Variablen, Variablen, welche nur innnerhalb eines Scripts gültig sind.
Auch wenn man diese innerhalb des Inspectors sehen kann, sind sie nicht das, was man als Programmierer eigentlich unter Public versteht. Denn man kann sie nicht von einem anderen Script aus ansprechen. Wie dies in Unity funktioniert, möchte ich Euch deshalb in diesem Tutorial erklären.
Zudem nutze ich das Thema, um ein paar grundsätzliche Dinge zu Variablen-Deklarationen zu sagen, da mir immer wieder Fragen zu Unity gestellt werden, die sich durch diese Grundkenntnisse schnell erübrigen.
Wundern Euch also nicht, wenn ich zu Anfangs ein bisschen aussschweife und ein paar grundlegende Dinge erzähle.
Video-Tutorial
Hier ist nun das Video-Tutorial. Wenn Fragen aufkommen, dann raus damit.
Ich hoffe, dass Euch auch dieses Unity-Tutorial gefallen hat. Dies war zugleich auch das letzte, welches ich mit Unity 2.6.1 gedreht habe. Beim nächsten Mal werde ich dann zum ersten Mal Unity 3.0 einsetzen.
Aber bis dahin ist ja noch eine Woche Zeit, weswegen Ihr schon einmal ein paar Infos zu der neuen Version in meinem Artikel Unity 3 ist da – Ein Überblick bekommen könnt.
In diesem Sinne, viel Spaß beim Entwickeln mit Unity!
Hier geht es weiter zum nächsten Unity 3D-Tutorial: #32 – Abwärtskompatibilät von Unity 3.0
hey 😉
Tolle Reihe, hat mir wirklich seehr viel gebracht!
Mal eine Frage:
Kannst du zufällig schon ungefähr abschätzen, wann du das Tutorial zu den Bots machen wirst?
Dann würde mich nämlich brennend interessieren, weil ich davon noch überhaupt keine Ahnung habe.
Hi UnSpeed,
Danke erstmal 🙂
Also ich werde ja doch ziemlich häufig danach gefragt. Zur Zeit denke ich darüber nach eine komplette kleine Serie zum Thema AI/KI zu machen. Wann diese allerdings kommt, kann ich noch nicht genau sagen 😕
Gruß
Carsten
Hi Carsten
erstmal danke für deine Unity-Tutorials.
Du sagst oben das du ab nächster Folge die 3er Version von Unity verwenden willst.
Ich gehe also mal davon aus das du sie getestest hast. Mich würde interessieren ob man alle „alten“ Beispiele damit verwenden kann, also das Thema Abwärtskomptabilität. Habe gehört das mache Projete probleme machen.
Was kannst du dazu sagen ?
Ich habe die 3er noch nicht installiert !!! Geht es das man sie parallel zu der 2er installiert.
THX
und weiter so…
Mal wieder ein SUUPPER Tutorial 😀 😀
Und dann hab ich noch eine Frage :
Also ich hab mir ein spiel gemacht , indem man eine Kugel spielt der scipt für die Steuerung sieht so aus :
http://www.imagebanana.com/view/vyo2oty6/Unbenannt.png
nun wollte ich ein Rigibody dazu machen . Das problem ist nur das wenn ich mich bewegen will meine kugel zumteil etwas ganz anderes macht…
Also es macht was anderes weil die kugel sich ja rollt . Aber genau so ist es auch bei würfeln….wenn ich den script ihnen beifüge ,dazu noch einen Rigibody fliegt der würfel immer hin …
Weist du was ich machen soll???
(scipt ist von tornadotwins aus youtube.kennst du vieleicht)
Danke schonmal im voraus
Hallo JoWeb,
genau um das Thema Abwärtskomptabilität dreht sich mein erstes Video 😉
Zu Deiner Frage: Leider kann man immer nur eine Version installiert haben.
Gruß
Carsten
Gruß
Carsten
Hallo Carsten,
ja, KI Programmierung wär DAS Thema, was mich brennend interessieren würde!
Ich kann mir nämlich darunter keinen richtigen Ablauf von Befehlen vorstellen…
Also, wie gesagt, wenn du das hast, dann werd ich der erste sein, ders sehen wird 😛
Übrigens:
Es kann sein, dass ich mich jetzt sehr weit aus dem Fenster lehne, aber ich habe schon von mehreren Leuten gehört, dass es möglich ist z.B. Unity 2.6 UND Unity 3.0 zu besitzen, wie weiss ich nicht, aber es soll wohl gehen…
@Johans:
Am besten lädst du mal dein Skript und ein paar Screens hoch, dann kann man sich das besser anschauen;)
@UnSpeed: Das kann natürlich sein, dass es doch geht. Ich hab da jetzt nicht so großartig getestet sondern einfach nur installiert. Und da blieb dann nur eine Version übrig 😉
Ich habe ein anderes Auto genommen, jedoch drehen sich die Räder nicht nach vorn, sondern zur Seite. Wenn ich das SmoothFollow Script nehme, hält die Kamera von der Seite, nicht von hinten auf das AUto.
Hallo Dan, das liegt daran, dass das Koordinatensystem deines Autos anders orientiert ist als das von meinem.
Wie kann man das beheben?
Zum Beispiel in deinem 3 Modelling-Tool, wo Du (oder wer auch immer) das Modell erstellt hat.
ich hab es mir aber gedownloaded.Gibt es keinen code mit dem man das beheben kann?
@ Dan:
Nimm einfach dein Auto und stecke es in ein empty object.
Das findest du oben unter ‚Game Object‘ -> ‚Create Empty‘.
Wenn du da dein Auto reinziehst ist das Problem mit dem Smooth Follow behoben!
Wenn sich deine Reifen zur Seite drechen anstatt nach vorne, dann versuch doch einfach mal sie statt auf der x-Achse zu drehen, sie auf der z- oder y-Achse drehen zu lassen.
Eines davon müsste aber hinkommen, ansonsten, hilfts nichts, musste das Skript und Screens hochladen 😉