mengesan klik elemen UI
untuk elemen UI (imej, rawimages, butang, dan lain -lain), menggunakan sistem acara Perpaduan dan bukannya API input. Lampirkan skrip yang melaksanakan antara muka acara yang sesuai ke elemen UI anda.
antara muka acara ui
untuk elemen seperti imej, rawimage, dan teks:
public class ClickDetector : MonoBehaviour, IPointerDownHandler, IPointerClickHandler, IPointerUpHandler, IPointerExitHandler, IPointerEnterHandler, IBeginDragHandler, IDragHandler, IEndDragHandler { // Implement event functions (e.g., OnPointerClick, OnPointerDown, etc.) }
Butang: Butang
menawarkan pendekatan yang lebih mudah menggunakan acara: onClick
public class ButtonClickDetector : MonoBehaviour { public Button button1; public Button button2; void OnEnable() { button1.onClick.AddListener(() => ButtonClicked(button1)); button2.onClick.AddListener(() => ButtonClicked(button2)); } void ButtonClicked(Button button) { // Your button click handling code here } }
Mengesan klik pada GameObjects
Untuk mengesan klik pada GameObjects 3D atau 2D, tambahkan (untuk 3D) atau PhysicsRaycaster
(untuk 2D) ke kamera utama anda. Kemudian, anda boleh menggunakan antara muka peristiwa yang sama seperti yang diterangkan di atas untuk elemen UI. Pastikan GameObject anda mempunyai collider. Physics2DRaycaster
Menyelesaikan masalah sistem acara
jika klik tidak mendaftar:
PhysicsRaycaster
) ke kamera anda. Physics2DRaycaster
Atas ialah kandungan terperinci Bagaimanakah saya mengesan peristiwa klik/sentuh pada unsur -unsur UI dan GameObjects dalam perpaduan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!