2017-03-02 2 views
0

Ich machte einen Knopf, der während des Spiels klickbar ist. Da ich möchte, dass der Button eine feste Position in der Hauptkamera hat, habe ich sowohl die Hauptkamera als auch die Button-Children des Spielers gameObject so gemacht, dass die Kamera dem Charakter beim Springen oder Bewegen folgt, alles klappt aber auch ein Bordercollider was verhindert, dass sich der Charakter aus dem Spielfeld bewegt. Aber dann kollidiert der Collider des Knopfes, der gemacht wurde, um den Knopf anklickbar zu machen, auch mit dem Rand, der verhindert, dass der Charakter sich vorwärts bewegt. Wenn wir den Collider der Schaltfläche als Trigger festlegen, scheint die Schaltfläche überall dort ausgelöst zu werden, wo ich mit der Maus auf den Bildschirm klicke, das wollte ich nicht.unity2d Knopf Collider kollidieren mit Grenze, wenn der Charakter sich bewegt

Ich weiß, vielleicht könnte ich dies verhindern, indem ich überprüfe, ob das kollidierte Objekt der Knopf oder das Zeichen ist, aber gibt es einen besseren Weg das zu tun? Vielen Dank.

demostration

+0

So ist die Taste, wie ich die Taste hat eine feste Position mit der Kamera und es ist immer an der gleichen Stelle auf dem Bildschirm zu verstehen? –

+0

ja, @IgnacioAlorre das ist, was ich meine – armnotstrong

Antwort

2

Für ein 2D-Plattform-Spiel, ich habe eine 2D-Benutzeroberfläche in einer Leinwand über die "Karte" hinzufügen würde (die Ebene, wo Sie die Spielobjekte wie den Charakter, Plattformen, Feinde haben ...). Die Schaltfläche befindet sich also immer an der gleichen Stelle auf dem Bildschirm und kollidiert nie mit einem Spielobjekt des Spiels.

Sie machen einige Ideen nehmen von hier: https://unity3d.com/learn/tutorials/topics/user-interface-ui/ui-events-and-event-triggers

+0

danke für die Antwort, aber wird diese Schicht mit der Kamera bleiben, während die Kamera bewegt? – armnotstrong

+0

Ja, eigentlich wird es den ganzen Bildschirm abdecken, es wird nicht mit der Kamera verbunden. Diese Option gibt es auch für 3D-Spiele. In einem FPS, in dem sich ein Charakter um eine Karte bewegt, können Sie diesen Canvas hinzufügen, um Informationen wie: Menge an Leben, Kugeln, Leben ... anzuzeigen. Sie können in diesem Tutorial sehen, wie sie es verwenden: https: // unity3d.com/learn/tutorials/projects/survival-shooter/health-hud –

+0

@armnostrong Ist diese Lösung für Sie geeignet oder sollten wir versuchen, etwas anderes zu finden? Ich bin sicher, es gibt andere Möglichkeiten, aber ich denke, das ist das beste. –

2

Probieren Sie neue UI in Unity verwenden kann es Ihr Problem beheben:

https://unity3d.com/learn/tutorials/topics/user-interface-ui/ui-button 
+0

danke für die Antwort, ich versuche, dass – armnotstrong

Verwandte Themen