Bewegt der Spieler die Fliese durch die Fliese glatt in die Einheit
Ich möchte, um die Spieler bewegen sich durch einen bestimmten Betrag (1 Fliese/Einheit in diesem Fall) und dann beenden Sie ihn. Genau wie in diesem video:
http://www.youtube.com/watch?v=DotOAbNngc4
Durch drücken einer Taste, der player sollte reibungslos bewegen auf die nächste Fliese, als Stoppt und so weiter.
Wie kann ich das erreichen? (in C#)
InformationsquelleAutor Xerxes | 2014-06-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier ist, was ich tun würde: Sie geben Ihren Spieler-Klasse ein Zielfeld, z.B. ein 2d-Vektor. Dieser enthält entweder die aktuelle position des Spielers (beim initialisieren oder, wenn das Ziel erreicht wurde) oder das Ziel, dass Sie möchten, um den Spieler zu bewegen.
Nun in Ihrem update Sie dies tun:
Möchten Sie möglicherweise erstellen Sie ein Feld für die aktuelle position der Spieler neben der normalen position GameObject. Sie könnte dann aktualisieren GameObject.position in der update-Zyklus von einem kleinen delta, bis die Positionen von GameObject.position und das Ziel haben, die (in etwa! verwenden Sie epsilon beim Vergleich der) gleichen Wert.
Einige Hinweise
Ich habe einige Tipps für Sie. Fragen für ein komplettes code-Beispiel ist ein bisschen viel. Wenn Sie keine Programmierkenntnisse, dies ist eigentlich eine Recht komplizierte Aufgabe, da es einige Grube-falls. Ich hoffe, meine Tipps werden dir helfen. Andere als das: Papier und Stift sind deine Freunde, es kann helfen, zu visualisieren etwas. Wenn du noch mehr konkrete Fragen hast, zögere nicht zu Fragen ;D
InformationsquelleAutor Mene
Könnten Sie werfen Sie einen Blick auf GridMove, die von UnifyWiki.
Würden Sie wahrscheinlich mehr bekommen, eine Antwort, wenn Sie gepostet diese Frage zu answers.unity3d.com oder forum.unity3d.com wie diese Foren sind speziell in Richtung Unity3d.
InformationsquelleAutor flip