texaskeks2oo Geschrieben 1. Juli 2021 Melden Share Geschrieben 1. Juli 2021 Hallo, Ich habe ein Problem wo ich einfach nicht weiter komme… Wie kann ich die Position ermitteln wo der Spieler zuletzt hin gedrückt hat? Ich habe schon gegoogelt aber finde einfach keine Lösung. Währe nett wenn mir da jemand weiter helfen kann. Mfg. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
chrische5 Geschrieben 1. Juli 2021 Melden Share Geschrieben 1. Juli 2021 Hallo Du könntest einfach immer den letzten Klick speichern. Wenn er dann erneut klickt, überschreibst du das dann. Somit hast du immer die Position des letzten Klicks. Christoph Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
texaskeks2oo Geschrieben 1. Juli 2021 Autor Melden Share Geschrieben 1. Juli 2021 vor 11 Minuten schrieb chrische5: Hallo Du könntest einfach immer den letzten Klick speichern. Wenn er dann erneut klickt, überschreibst du das dann. Somit hast du immer die Position des letzten Klicks. Christoph Naja ich möchte ja sobald der Spieler im Spiel irgendwo hingedrückt hat das da dann ein Objekt spawnt. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Sascha Geschrieben 1. Juli 2021 Melden Share Geschrieben 1. Juli 2021 2D oder 3D? Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
texaskeks2oo Geschrieben 1. Juli 2021 Autor Melden Share Geschrieben 1. Juli 2021 vor 1 Minute schrieb Sascha: 2D oder 3D? 3D sorry Danke ^^ Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Sascha Geschrieben 1. Juli 2021 Melden Share Geschrieben 1. Juli 2021 Dann brauchst du einen Raycast. Dein Mausklick ist ja eine 2D-Information, da der Mauszeiger auf dem Bildschirm ist. Er klebt dabei über einem Pixel in der 3D-Welt. Wie weit der Punkt in der 3D-Welt hinter dem Mauszeiger liegt, ist dabei eine Information, die du irgendwie definieren musst. Und das machst du mit einem Raycast, der von der Kamera aus, vom Pixel unter dem Mauszeiger losgeschossen wird und die 3D-Welt irgendwo trifft. Da, wo getroffen wird, willst du dein Objekt hintun. Was für einen Raycast du nehmen willst, kommt auf dein Spiel an. Hast du eine Szene voller Collider? Dann ginge ein Physics.Raycast. Wenn du einfach nur eine Grund-Ebene hast, dann ginge auch ein Plane.Raycast. Der Code sieht so aus: // Damit definierst du den Ursprung und die Richtung deines Strahls für den Raycast var ray = Camera.main.ScreenPointToRay(Input.mousePosition); // Damit "schießt" du den Strahl - die if-Bedingung trifft nur ein, wenn etwas getroffen wurde if (Physics.Raycast(ray, out var hit)) { Debug.Log("Getroffen: " + hit.point); } Das Debug.Log kannst du dann durch ein Instantiate ersetzen, um dein Objekt zu spawnen. Einen Mausklick-Check außenrum, sowas wie... if (Input.GetMouseButtonDown(0)) ... und das ganze in Update und fertig ist der Kuchen! Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Recommended Posts
Archiviert
Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.