2016-07-22 7 views
-1

Ich suche C# Skript. Und wenn ich das neue automatische Laufskript erstelle, muss ich es zum ThirdPersonController ziehen?In Einheit, wie kann ich meinen ThirdPersonController Charakter von Punkt zu Punkt automatisch bewegen?

Wie patrloing. Ich gebe zwei Werte von zwei Punkten und das Zeichen wird zwischen den beiden Punkten automatisch gehen, und wenn es ein Objekt im Pfad gibt, wird es darüber klettern, oder wenn es logisch ist, wird die Patrouille stoppen oder gehen und es gehen.

Aber zuerst bin ich mir nicht sicher, wie man es nur zwischen zwei Punkten automatisch bewegt.

Heute bin ich mit meiner ThirdPersonController in Inspektor im Animator Teil: ThirdPersonAnimatorController

und in der dritten Person User Control (Skript) Ich verwende das: ThirdPersonUserControl

Das Skript von der ist Einheit.

+0

Um einfach zwischen zwei Punkten zu wechseln, werfen Sie einen Blick auf [link] (https://docs.unity3d.com/ScriptReference/Vector3.MoveTowards.html). Um Hindernisse zu vermeiden, sollten Sie sich die Pfadsuch-Algorithmen ansehen (zum Beispiel: A *) – Rimply

+0

@Rimply Ich habe mir das Beispiel im Link angeschaut. Ich erstellte eine neue Skriptdatei, fügte den Code hinzu und zog dann das Skript zum ThirdPersonController. Dann setze ich im Insepctor das Target: ThirdPersonController (Transofrm) und die Geschwindigkeit auf 5. Aber der Charakter bewegt sich nicht. Und wenn ich das Ziel auf Hauptkamera setze, dann bewegt sich der Charakter rückwärts Stottern Jump Crunch komisch. –

+0

In Bezug auf diesen letzten Kommentar sollten Sie besser in den Unity-Foren nachfragen – MickyD

Antwort

0

Beispiel:

public GameObject thirdPerson; // you third person GameObject 
public int oldPosition = 5; // start (old) point 
public int newPosition = 10; // new point 

void Update() 
{ 
    if (oldPosition <= newPosition) 
    { 
     oldPosition += Time.deltaTime; 
    } 
    thirdPerson.transform.position = new Vector3(oldPosition, 0, 0); 
} 
0

Sie benötigen Create Navmesh Agent ein NavMesh Mittel zu erstellen. Dadurch kann ein Charakter automatisch um Objekte herumlaufen und über Hindernisse springen.

Machen Sie ein wenig Forschung vor dem Start, und schreiben Sie auf, was Sie zuerst brauchen, um Ihren Charakter zu tun. Ihre Szene kann mit einem neuen Navmesh aktualisiert werden, wenn Sie backen, welche Objekte begehbar sind, vermieden werden müssen und übersprungen werden können.

Wenn Ihnen das nach einer zu großen Aufgabe erscheint, gibt es einfache AI-Skripte, die Sie kostenlos im Unity-Asset-Store herunterladen können.

Sobald Sie Ihre Arbeit navmesh hier haben, ist ein Link, um es zwischen Patrouillenpunkten zu bewegen. Navmesh Agent Patrol.

Verwandte Themen