Jump to content
Unity Insider Forum

Tastatursteuerung


American

Recommended Posts

Hallo

 

Ich habe da nen kleines Problem ....

 

Ich möchte den Charakter komplett mit der Tastatur steuern..

 

Vor und zurück ist ja kein Problem

 

Aber wie stelle ich es an das ich die Kamera auch drehen kann also so wie mit der Maus ?

 

Habe schon nach möglichkeiten gesucht aber nichts gefunden :(

 

Alos ich möchte mit den Pfeiltasten den Charakter steuern und mit mich mit dem Linkspfeil nach Links drehen und mit dem Rechten Pfeil nach Rechts ...gibt es da ne Möglichkeit ?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dafür würde es reichen, wenn du einfach nur dein Laufscript bearbeitest und bei einem Links- oder Rechtspfeilklick deinen Charakter um -X° oder +X° in die jeweilige Richtung drehst.

 

Ggf. mit einer hübschen Animation verbessert

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wenn die Kamera ganz starr hinter der Spielfigur sein soll, reicht es, abgesehen von Lars' Tipp, wenn Du Die Kamera anschließend der Spielfigut in der Hierarchie unterordnest.

Sollte die Kamera schön geschmeidig mitdrehen, muss ein Script her.

Es gibt in den Standard Assets einen dafür, im Camera Scripts-Ordner.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Du hast, wenn Du an den Input Settings nichts gedreht hast, diese beiden "Dinger" für die Pfeiltasten (bzw. WASD):

Input.GetAxis("Horizontal") //-1 ist für links, 1 für rechts, 0 für mitte und alles andere dazwischen (wenn Du ein Gamepad hast).
Input.GetAxis("Vertical") //1 ist oben usw.

 

Und diese Dinger kannst Du jetzt in alle möglichen Konstrukte einbauen, z.B. den mannigfaltigen Funktionen von Transform.

Für den Anfang zum Üben reicht es, damit zu arbeiten - später solltest Du auf CharacterController und/oder Rigidbodies umsteigen.

 

Dann benutzt Du z.B. transform.Translate() zum Bewegen:

//Bewegung nach vorne und hinten:
transform.Translate(0, 0, Input.GetAxis("Vertical"));

Das ganze nochmal ordentlich mit Zeit und Geschwindigkeit:

var moveSpeed : float = 5;

function Update()
{
transform.Translate(0, 0, Input.GetAxis("Vertical") * moveSpeed * Time.deltaTime);
}

...oder transform.Rotate() zum Drehen:

//Drehung per links und rechts
transform.Rotate(0, Input.GetAxis("Horizontal") * Time.deltaTime, 0);

 

Jetzt dreht sich dein Character schonmal wenn Du das alles schön eingebaut hast.

Wenn Du jetzt noch in deiner Hierarchie schaust: Da hast Du deine Spielfigur und deine Main Camera.

Zieh die Main Camera in die Spielfigur-Zeile, dann ordnet sie sich dem Spieler unter.

Du solltest ein paar Objekte in der Welt platzieren, damit du den Effekt überhaupt siehst.

 

Der Script für geschmeidige Kamerabewegung befindet sich in den Default Assets, wie gesagt.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wenn Du keinen Ordner namens "Standard Assets" in deinem Projekt-Tab hast, dann hast Du die Asstes am Anfang nicht importiert.

Du importierst es dann so:

Rechtsklick auf den Projekttab (wo Du die Asstes drin hast), "import package".

Das Paket befindet sich im Unity-Installationsordner\Editor\Standard Packages\Standard Asstes.unitypackage

Nachdem Du es raus gesucht hast kannst Du noch angeben, was davon Du importieren willst.

Sind zwar alles ganz interessante Sachen, aber im Moment brauchst Du nur dem Unterordner "Camera Scripts" ein Häckchen zu geben.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...