Ich bevölkere 3d Marker auf meiner Karte. Nächstes Ziel ist es zu erkennen, auf welchen Marker geklickt wird. beigefügte UI-Taste mit jedem Marker, aber das ist kein guter Weg. kann jemand etwas besseres vorschlagen?Klicken Sie auf 3D Spielobjekt auf 3D Welt Einheit
0
A
Antwort
1
Haben Ihre Marker einen Collider? Wenn dies der Fall ist, können Sie die Funktion OnMouseDown
in einer Skriptkomponente verwenden, die an Ihr Spielobjekt angehängt ist, solange es eine Collider-Komponente hat.
Ansonsten können Sie dieses Snippet von http://answers.unity3d.com/questions/34795/how-to-perform-a-mouse-click-on-game-object.html
function Update()
{
if (Input.GetMouseButtonDown(0))
{
var hit : RaycastHit;
var ray : Ray = Camera.main.ScreenPointToRay (Input.mousePosition);
if (Physics.Raycast (ray, hit, 100.0))
{
// handle mouseclick
}
}
}
+0
Ja, ich habe einen Collider mit dem Spielobjekt. Auf die Maus hat die Arbeit gemacht .. danke .. :) –
1
Sie können einen Collider in Gameobject befestigen und erkennen mit Physic.RayCast:
https://docs.unity3d.com/ScriptReference/Physics.Raycast.html
Verwandte Themen
- 1. Einheit 3d Kontrolle Objekt Sichtbarkeit
- 2. Matching Zufallszahlenpaar Spiel in der Einheit 3d?
- 3. So erhalten Sie 3D-Welt Raumposition von Render Texture
- 4. Datenreduktion auf 3D-Daten
- 5. ndimage.generic_function auf 3D-Array
- 6. Einheit animateWithDuration äquivalent, Animiere Spielobjekt auf Position
- 7. Falsche Tiefenproportion auf 3D
- 8. einheit 3d make prefab objekt unzerstörbar/unclibable
- 9. Einheit 3D Karton Demo Szene Kein Ton
- 10. einheit 5.6.0b7 vr stereoskopische panorama + 3d objekte
- 11. Erstellen eines 3D-HUD in Einheit
- 12. Können Sie 3D Touch auf Widgets verwenden?
- 13. Erstellen Sie 3D-Modelle auf Android
- 14. Handle Mausklick auf ein Spielobjekt - Unity3d
- 15. Animation Problem auf Unity 3D
- 16. Dragger mit Collider auf Unity 3D
- 17. 3D Einheit C# Auto Rückwärtsrichtung Bewegung
- 18. Kamera drehen, wenn Touch-Einheit 3d
- 19. Einheit mit C# für 3D-Odontogramm-System
- 20. Bewegung von 2D auf 3D
- 21. Wie kann ich Knopffarbe in Einheit 3D C# ändern?
- 22. 3D-Konturen auf Streudiagramm zeichnen
- 23. 3D Schwebeflug/Bewegung auf Bild
- 24. Handle UI klicken Sie auf Android - Einheit
- 25. 3D-Kamera zur 3D-Modellgenerierung
- 26. Wie 3d-Modell in Einheit in einfarbig konvertieren?
- 27. Wie 3D-Modell auf Caesium verschieben
- 28. Wie wird ein 3D-Objekt mit einem anderen 3D-Objekt mithilfe von Skript in Einheit gezogen?
- 29. Transforming 2D-Bildkoordinaten in 3D-Welt mit z = 0
- 30. Importieren von Maya 3D zu Papervision 3D
Während Raycast sollte funktionieren, Unity [Event] (https : //docs.unity3d.com/ScriptReference/EventSystems.EventSystem.html) sollte zum Erkennen von Klicks verwendet werden. Dadurch werden einige Probleme behoben, auf die Sie später in Ihrem Code stoßen werden. Überprüfe, wie man das auf der duplizierten Antwort macht, wo es steht * "** 5 **. Für 3D-Objekt (Mesh-Renderer/irgendein 3D-Collider)" * – Programmer