Unity 3D-Tutorial: #22 – CountDown mit Yield WaitForSeconds

02.08.2010 - Carsten - Der Softwareentwickler Blog - 24 Kommentare

Unity3D CarRacing TutorialDieser Artikel gehört zu einer ganzen Tutorial Serie. Hier gelangt Ihr zu der Artikelübersicht: Unity 3D Tutorial Serie .

Unser 3D Racing-Game wächst mit jeder Tutorial-Folge. Auch wenn wir noch lange nicht am Ende sind, so will ich dieses Mal beginnen ein erstes kleines Rennspielszenario zu erstellen.

Hierfür benötigen wir  zunächst einmal einen Start-CountDown, einen Timer, die Zeit misst, sowie eine Ziellinie.

Tutorial-Inhalt

In diesem Tutorial wollen wir den ersten Stein für zu ein Zeitrennen legen. Und der Anfang, der in diesem Teil gemacht wird,  besteht aus dem Start-CountDown.

Hierfür programmier ich, wie ihr in den beiden Videos sehen werdet, mit Javascript ein zusätzliches, kleines Script. Um dabei diese Zeitkomponente einzubringen nutze ich die Funktion WaitForSeconds, die man mit dem Yield-Kommando aufruft.

Neben dem CountDown muss sich unser neues Script natürlich auch darum kümmern, dass der Spieler erst losfahren kann, wenn der CountDown abgelaufen ist. Auch dies werde ich in diesem Unity-Tutorial mit Euch machen.

Video-Tutorial

Wieder einmal ist die Folge wieder etwas länger ausgefallen. Deswegen gibt es auch diese Woche wieder zwei Tutorial-Videos von mir.

Video1

Video2

Habt Ihr Fragen? Oder habt Ihr vielleicht Anregungen für die nächsten Unity-Tutorial-Folgen?

Download

Das in dem Tutorial erstellte Script könnt ihr Euch hier downloaden: StartCountDown-22.

Außerdem gibt es hier noch einmal das Driving-Script als Download, welches wir in dieser Folge nicht angefasst haben: Driving-21.

Hier geht es zum nächsten Teil Unity3D – Zeit messen


Zu diesem Thema hab ich übrigens bereits ähnliche Artikel verfasst. Vielleicht interessiert Dich ja einer:

24 Kommentare zu ' Unity 3D-Tutorial: #22 – CountDown mit Yield WaitForSeconds '

Kommentare zu 'Unity 3D-Tutorial: #22 – CountDown mit Yield WaitForSeconds' mit RSS

  1. Daniel kommentierte am 02.08.2010 um 11:32 Uhr

    Ich muss mal wieder sagen, schönes verständliches Tutorial. Eine Anmerkung hätte ich noch. Ist es möglich schon vorher Gas geben zu können. So zu sagen im Leerlauf. Das bin ich irgendwie von anderen Spielen dieses Genres gewöhnt.

  2. Carsten - Der Softwareentwickler Blog kommentierte am 02.08.2010 um 13:10 Uhr

    Hallo Daniel,

    ja, das kann man machen. Allerdings muss man dafür noch einige Anpassungen programmieren, was aber kein Problem darstellt.

    Ich werde mal zusehen, das in den nächsten Tutorials irgendwie unter zu bringen :smile:

    Gruß
    Carsten

  3. Jonas kommentierte am 04.08.2010 um 10:25 Uhr

    Gibt es eine Website von der mann vllt Materials downloaden kann d.h. ich brauch z.b. Holz oder die Farbe blau …ist ja egal was …. Auf jeden fall : gibt es so eine Website ???

    Wie bekommt man DURCHSICHTIGE Fenterscheiben hin ??? Auch mit den Materials oder geht das anders ????

  4. Jonas kommentierte am 04.08.2010 um 10:26 Uhr

    danke schonmal im voraus :smile: :smile:

  5. Carsten - Der Softwareentwickler Blog kommentierte am 04.08.2010 um 10:53 Uhr

    Hi Jonas,

    im Grund kannst Du jede x-beliebe Grafik-Datei benutzen. Wenn Du ein blaues Material brauchst, dann mach am besten mit Paint oder einem anderen Programm ein kleines blaues Bild uns speicher es ab. Dies kannst Du dann für deine Materialien nutzen, siehe mein Tutorial:

    http://www.der-softwareentwickler-blog.de/2010/07/12/unity-3d-tutorial-19-materials-und-shaders/

    Für Holz, Metall usw. gibt es genügend kostenlose Webseiten im Netz. Einfach in Google z.B. nach holz + texturen suchen.

  6. Jonas kommentierte am 04.08.2010 um 17:54 Uhr

    COOL danke :smile: :smile: :smile: :smile:

    Könnte ich auch Einfach ein Foto machen ???
    Müsste Ja auch gehen Oder ???

  7. Jonas kommentierte am 04.08.2010 um 17:58 Uhr

    hahahahahahahahah

    Hab grad gegoogelt und hab nach metall texturen gesucht und ich glaub ich hab deine die du im tut benutzt hast gefunden :grin: :grin: :grin:

  8. Carsten - Der Softwareentwickler Blog kommentierte am 04.08.2010 um 19:39 Uhr

    Das kann gut angehen ;)

  9. Jonas kommentierte am 05.08.2010 um 10:11 Uhr

    Kann man eig auch Videos impotieren ???

    Ich hab mir nämlich ein Fernseher gedownloaded und möchte das dieser ein von mir gedrehtes video abspielt…

    Falls das geht …. Wie ??? und was für ein format müssen die viedeos haben ???

  10. Carsten - Der Softwareentwickler Blog kommentierte am 05.08.2010 um 12:28 Uhr

    Hi Jonas,
    ja, das geht. Allerding musst Du Quicktime installiert haben. Hier erfährst Du mehr:
    http://unity3d.com/support/documentation/Components/class-MovieTexture.html

  11. Jonas kommentierte am 05.08.2010 um 14:49 Uhr

    Achso cool :grin: :grin: :grin: :grin:

    Ich hätte da noch so eine idee was man noch für tuts machen könnte :

    Geh mal bei Unity auf :

    Component -> Physics -> Constant Force

    habe das heute mal bei einem gegenstand ausprobiert der ist aber ka warum “Weggeflogen” also nachdem ich ein paar dinge umgestellt habe…..

    Könntest du mich aufklären für was das ist ??? ist das wirklich zum “Fliegen” da oder etwa für herumschleudernde gegenstände ???
    :grin: :grin: :grin: :grin: :grin: :grin: :grin: :grin: :grin:

  12. Jonas kommentierte am 06.08.2010 um 11:04 Uhr

    JUHUUUUUUUUUUU :grin: :grin: :grin: :grin: :grin: :grin: :grin:
    Es hatt funktioniert !!!!!!! Ich kann endlich mit meinem AUTO fahren !!!!!

    ICh hab alles noch mal neu gemacht und hab so weit wie es ging fehler bei meinem script verändert….

    UND ES HATT GEKLAPPT !!!!!!!!:grin: :grin: :grin: :grin: :grin: :grin:

    Könntest du dann aber (vorherigeer nkommentar ) noch ein tut mit diesem constant Force machen oder mir erklären für was das ist ????

  13. Carsten - Der Softwareentwickler Blog kommentierte am 06.08.2010 um 21:22 Uhr

    Toll! Das hört man gerne :smile:

    “Constant Force” fügt einem Objekt eine konstante Kraft hinzu.

    Erzeug mal einen Würfel, füg dem ein Rigidbody mit einer Mass=50 hinzu und füge dem dann eine “Constant Force” mit Force X=50 zu. Dann siehst Du, wenn Du den Würfel auf einer Fläche platzierst, wie dieser sich langsam zur Seite bewegt.

    Gruß Carsten

  14. Passi kommentierte am 06.08.2010 um 23:21 Uhr

    Ja das mit den Videos will ich auch wissen, zum Beispiel
    für nen Intro Video oder so ne art Teaser, kannst du das
    vielleicht auch noch irgendwie Einbauen?
    Wär auf alle fälle cool =)

  15. Passi kommentierte am 06.08.2010 um 23:35 Uhr

    Sry wegen doppelpost, aber ich hab ne Idee:
    Man könnte doch Scheinwerfer machen, die man dann
    per Knopfdruck an und ausmacht, oder auch immer an ist.
    Ich hab schon rumprobiert, aber keins der 3 Lichter funktioniert
    so wie ich es will.

  16. Carsten - Der Softwareentwickler Blog kommentierte am 07.08.2010 um 12:56 Uhr

    So eine Art Intro-Szene, wo die Kamera zuerst einmal über das Gelände fliegt und die Strecke zeigt, wird auch noch erstellt.

    Was das Scheinwerferlicht angeht: Schau mal hier, hegen Ende des Videos wird so etwas ähnliches gezeigt:
    http://www.der-softwareentwickler-blog.de/2010/07/20/unity-tutorial-character-animation-mit-locomotion/

    Gruß Carsten

  17. Passi kommentierte am 07.08.2010 um 14:40 Uhr

    danke, mein Problem war, dass ich die Lichtquelle falsch
    eingestellt hatte

  18. Jonny kommentierte am 08.08.2010 um 17:02 Uhr

    So ich melde mich hier auch mal wieder zu Wort.

    Ich hab das mit den Scheinwerfern auch schon versucht ;D. Doch irgendwie erzeugt der Terrain sehr schlechte Lichteffekte. Wenn ich die “scheinwerfer” so einstelle das sie eig. Lichtkegel auf dem Boden erstellen sollten dann funktioniet das irgendwie auf dem Terrain nicht. Wenn ich jedoch eine große Plane erstelle und dort mit meine Auto herumfahr werden die Lichtkegel erstellt :D

  19. Passi kommentierte am 09.08.2010 um 11:04 Uhr

    Ja bei mir klappts auf dem Terrain, aber wenn ich fahr, dann seh ich immer die “Schnittstellen” im Licht, also so komische Linien im Terrain, bin grad dran das weg zu bekommen, nur ich weiß nich wie :mrgreen:

  20. Dan kommentierte am 11.08.2010 um 15:36 Uhr

    Ich möchte mit Unity3d ein Flugspiel programmieren, weiß jedoch nicht, wie programmieren kann, dass das Flugzeug abhebt/steigt, wenn man nach unten drückt, beziehungsweise sinkt/landet wenn man die Feiltaste nach oben drückt, aber das nur wenn man mind. 300km/h schnell ist, und man sonst abstürzt. Vielleicht könnte mir jemand das Script dafür zeigen, wenn es geht mit einer gut verstandlichen Erklärung, da ich mich dasmit noch nicht so gut auskenne.

  21. Carsten - Der Softwareentwickler Blog kommentierte am 12.08.2010 um 08:16 Uhr

    Hallo Dan,

    vielleicht hilft dir dieses Unity-Tutorial weiter: http://www.gotow.net/andrew/wordpress/?page_id=99

  22. Dan kommentierte am 14.08.2010 um 16:29 Uhr

    Danke,

    aber gibt es eins in deutsch?

  23. Carsten - Der Softwareentwickler Blog kommentierte am 14.08.2010 um 19:42 Uhr

    @Dan: Jedenfalls nicht meines Wissens.

  24. Dan kommentierte am 15.08.2010 um 12:17 Uhr

    Schade aber nochmals danke

Leider ist die Kommentarfunktion zur Zeit deaktiviert.