Jump to content
Unity Insider Forum

Bewegung eines GameObjects mit Maus


Sophia Fischer

Recommended Posts

Hallo liebe Community,

ich versuche gerade eine Kollisionserkennung umzusetzen, wobei ich mein auf Kollision zu untersuchendes GameObject mit der Maus bewegen möchte. Bei der Kollision soll das auf Kollision zu untersuchende GameObject frei beweglich sein und eben der Maus folgen, während alle anderen Objekte im Raum Hindernisse darstellen, die bei der Kollision mit dem GameObject an ihrer Stelle verharren und keine physikalische Reaktion zeigen. Das GameObject soll bei Berührung mit einem Hindernis stoppen und nicht mit der Maus durch dieses hindurch bewegt werden können. Alle Hindernisse sind mit Collidern versehen, das GameObject besitzt einen Collider und einen Rigidbody (mit isKinematic = false). Die Bedingung, dass das GameObject der Position der Maus folgen soll, ist wohl stärker als die Bedingung, dass die Collider sich eigentlich nicht durchdringen sollen. Ich hatte mit überlegt, dass das Skript, welches für das Folgen der Mausbewegung verantwortlich ist, bei Berührung von GameObject und Hindernis inaktiv wird. Dann bleibt das GameObject aber logischerweise an der Oberfläche hängen, es kann darauf per Maus nicht mehr zugegriffen werden.

Kann mir jemand von euch bei meinem Problem weiterhelfen? 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Erstelle doch ein Emty GameObject, welches direkt an der Maus hängt - bzw. den Mausbewegungen folgt, und keine Kollisionen mit anderen Objekten hat. Zusätzlich erstellst du ein zweites sichtbares GameObjekt, welches dem ersten folgt. Bei mir mache ich das für die Touch Steuerung mit folgendem Script:

public GameObject plyTarget;
    private Transform plyTargetPos;
    public float plyMoveSpeed = 0.16f;

    void Start()
    {
        plyTargetPos = plyTarget.GetComponent<Transform>();
    } 

    private void FixedUpdate()
    {
        if (plyTarget != null)
        {
            transform.position = Vector3.Lerp(transform.position, plyTargetPos.position, plyMoveSpeed);
        }
    }

Somit kannst du für dieses zweite GameObject die Kollisionen besser koordinieren.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

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

×
×
  • Neu erstellen...