Unity 3D-Tutorial: #40 – Quaternion-LookRotation nutzen
Dieser Artikel gehört zu einer ganzen Tutorial Serie. Hier gelangt Ihr zu der Artikelübersicht: Unity 3D Tutorial Serie .
Nachdem wir bereits im letzten Unity-Tutorial begonnen hatten Bremsspuren zu erzeugen, wollen wir diese nun in dem folgenden Teil endlich auch vernünftig ausrichten.
Hierbei will ich die LookRotation – Funktion der Quaternion Struktur einsetzen und Euch erleutern wie diese funktioniert.
Tutorial-Inhalt
Ein Quaternion wird genutz um Rotationen darzustellen. Diese Struktur besitzt unterschiedliche Variablen und Funktionen. Eine davon ist die LookRotation-Funktion.
Mit dieser werden die Rotationen aller Achsen berechnet, die notwendig sind, um vom Ursprung, dem Punkt (0,0,0), hin zum anzugebenen Zielpunkt zu gelangen (Syntax: Quaternion.LookRotation(Zielposition);).
Möchte man allerdings die Drehung von einem Punkt ungleich der Position (0,0,0) erzeugen, muss zuvor die relative Postion des Zielpunktes, ausgehend vom Startpunkt, berechnet werden. Sprich es muss einfach der Abstand der beiden Punkte berechnet werden.
Schaut Euch einfach das Video-Tutorial an, dort demostriere ich, wie es geht.
Vide-Tutorial
Hätte YouTube die Längenbegrenzung der Videos noch bei 10 Minuten, so wären es dieses Mal mit einer Laufzeit von 12,5 Minuten wieder zwei geworden. Aber so könnt Ihr es nun an einem Stück sehen.
Ich hoffe, dass alles soweit verständlich war. Ansonsten habt Ihr natürlich wie immer unten ausreichend Platz Fragen und Anmerkungen zu hinterlassen!
Download
Ihr könnt Euch mein in Javascript programmiertes Driving-Skript hier noch einmal herunterladen: Driving-Script-Tutorial-40.
In dem nächsten Tutorial-Teil will ich mit Euch dafür sorgen, dass unser Auto beim Zusammenstoßen mit anderen Gegenständen auch der dementsprechende Sound zu hören ist.Schließlich soll es ja auch ordentlich Schäppern, wenn wir gegen eine Wand fahren, oder?
Sounds sind nicht unerheblich für das Spielerlebnis und erzeugen, wenn sie richtig eingesetzt werden, eine Menge Atmosphäre in Games. Deswegen mein Tipp: Einfach mal reingucken!
Hier geht es weiter zum nächsten Unity 3D-Tutorial: #41 – Collisions – Kollisionen auswerten
:mrgreen:Mal wieder ein super Tutorial. 😉 Eine Anmerkung habe ich aber doch noch. Kann man die Skidmark-Textur automatisch an die Position der Räder und auf die Breite der Reifen anpassen. Im Moment liegen die etwas links und rechts daneben.
Hi Daniel, das einfachste ist, wenn du die X-Postionen mit einem kleinen Offset versiehst und die Texturen der Breite der Räder anpasst.
Was kommt als nächstes?
Hallo Carsten
spitzten Tutorial 😉
Und ich habe nich eine Frage :
Vor ein paar Tagen habe ich mich noch ein wenig um das Game design gekümmtert ,ud ich wollte das Blätter von den Bäumen Fallen ….
Wie geht sowas ???
evtl. mit einem Particle System ???
Danke schonmal im voraus 😀 😀
Herr Hummelwalker ich habe wieder ein kleines problem .
Ich habe problem mit meinem auto . Ich habe dem Raycast richtig gemacht aber wenn ich drehe mein auto dann er umkippt . Und Unity screibt das ich meinem raycast script verscriben habt , aber ich habe es nicht verscriebt . Noch etwas wie kann ich das rahmen des Tachometers löschen wie es ist sehr dumm zu achten ist .
Ich habe dem video nicht auf Youtube sondern Megaupload uploadiert weil es viel schoner ist und es ist nicht so grosse file sind . Hier ist das video : http://www.megaupload.com/?d=TRREXUQK
Danke für ihre bisherige hilfe .
Ich bin es wieder noch ein wie hast du das Tacho von dem linke ecke zu rechte ecke beweggt ohne es zu rutschen .
Danke im voraus .:smile:
@Zu der zweiten Frage. Ich habe einfach mit einem Offset einfach die Bilder verschoben. Zwar nicht genauso, aber so ähnlich wie dieses hier:
OffsetX = 400;
OffsetY = 400;
GUIUtility.RotateAroundPivot(pointerPosition,Vector2(70 + OffsetX,70+ OffsetY));
GUI.DrawTexture(Rect(0.0 + OffsetX,0.0+ OffsetY,140.0,140.0),guiSpeedPointer, ScaleMode.StretchToFill,true,0);
Hallo, Ich bin’s nochmal,
Ich wollte fragen, ob du weisst wie man Sketch-up Modelle in Unity importieren kann(ich habe die Free-Version)…ich hab im Internet schon recherchiert, es hat aber nicht sehr geholfen…
Grüße
Harris
Danke für dem hilfe . Aber könntest du nicht mir auch mit dem Raycast helfen ?
@Padawan94: Wenn Unity sagt, dass Du einen Fehler hast, dann wird da wohl auch einer sein 😉 Was für einen Fehler meldet er denn?
@Harris: Du musst Dein Modell als FBX-File exportieren. Das Format unterstützt Unity problemlos.
OK, hab mir die Pro Version als Demo heruntergeladen, da die Free Version den Export als FBX-File leider nicht direkt unterstützt :(, aber jetzt habe ich das Modell drin…es ist ein kleiner Flügel, den ich spaßeshalber an mein Auto anbringen will. Meine Frage ist, wie schaffe ich es den Flügel als „feste Komponente“ an das Auto anzubringen, also so dass er im Spiel immer am Auto bleibt??:)
Wenn Du den Flügel einfach dem Wagen als Unterobjekt per Drag And Drop zuweist, dann „bleibt er dran“.
Der problem ist nicht das ein fehler ist weil ich habe es repariert , sondern das wenn ich gut pozitzioniere dann ich fahre mein und drehe meine auto umkippt .
Und danke für die hilfe für der Tacho . 🙂