Video: Leap Motion SDK 2024
Karena browser web tidak konsisten dalam cara melaporkan posisi mouse, masukan mouse di JavaScript normal rumit di HTML. dunia game. Perpustakaan simpleGame menangani hal ini dengan menambahkan metode getMouseX () dan getMouseY () ke objek Scene. Metode ini tidak selalu tepat, tapi cukup dekat untuk kebanyakan pemrograman game.
Setiap kali Anda ingin membaca mouse normal, cukup gunakan fungsi Scene getMouseX () dan getMouseY () untuk menentukan perkiraan posisi mouse.
Sebagian besar waktu ketika Anda menginginkan posisi mouse, itu karena Anda akan memindahkan objek di mana mouse berada atau mengarahkan objek ke arah mouse.
Seringkali, Anda ingin menyembunyikan kursor mouse, sehingga Anda dapat menggunakan metode hideCursor () obyek Scene untuk menyembunyikan kursor. (Tentu saja, Anda dapat mengambil kursor dengan metode showCursor ())
Jika Anda ingin membaca layar sentuh, ada satu langkah sederhana lagi. Perpustakaan simpleGame memiliki objek joystick virtual yang disebut Joy. Buat sebuah instance dari kelas ini untuk mengaktifkan fitur membaca layar sentuh.
Perhatikan bahwa antarmuka sentuh perangkat mobile tidak persis seperti mouse, jadi perlu antarmuka yang berbeda. Namun, begitu Anda membuat objek Sukacita, fungsi getMouseX () dan getMouseY () akan membuat input sentuhan bertindak seperti mouse biasa.
sentuhMouse. html menyembunyikan kursor mouse normal dan memindahkan bola ke mana pun mouse saat ini menunjuk. Contoh khusus ini bekerja dengan browser tradisional dan perangkat layar sentuh.
Perpustakaan simpleGame secara dramatis menyederhanakan proses kerja dengan penunjuk mouse dengan memberikan beberapa metode pemanggilan yang mudah. Inilah kodenya:
touchMouse. bola var html; permainan var; kegembiraan var; fungsi init () {game = new Scene (); ball = new Sprite (permainan, "redBall. png", 25, 25); bola. setSpeed (0); permainan hideCursor (); sukacita = sukacita baru (); permainan start ();} // akhirin fungsi init update () {game. bersih(); followMouse (); bola update ();} // end update function followMouse () { x = game. getMouseX (); y = permainan getMouseY (); jika (permainan dapat disentuh) { // pindahkan benda sedikit lebih tinggi untuk layar sentuh y - = 100; } // akhiri tes layar sentuh bola. setPosition (x, y); }
Mendapatkan sprite untuk mengikuti mouse hanyalah soal mengetahui metode apa yang harus dihubungi.
-
Sembunyikan kursor mouse.
Objek Scene memiliki metode hideCursor ().Ini adalah cara termudah untuk menyembunyikan pointer mouse normal. Biasanya, saat Anda mengikuti mouse dengan objek, maksud Anda agar benda itu bertindak seperti penunjuk mouse baru, jadi Anda akan menyembunyikan panah normal.
-
Buat variabel untuk joystick virtual.
Jika Anda akan bekerja dengan perangkat touchpad, Anda memerlukan variabel berisi objek joystick virtual. (Jika permainan ini hanya akan digunakan pada mesin desktop dengan tikus normal, Anda tidak memerlukan benda joystick.)
-
Inisialisasi joystick.
Buat sebuah instance dari objek Joy di fungsi init (). Hanya dengan membuat joystick akan memberi tahu mesin untuk mengharapkan masukan sentuh dan memetakannya ke perintah mouse normal.
-
Tambahkan fungsi followMouse ().
Biasanya bagus untuk membuat fungsi baru untuk menangani input. Fungsi followMouse () akan memberitahu objek untuk mengikuti mouse. Tentu saja, jika Anda membangun objek yang mengikuti mouse, Anda dapat menjadikannya metode objek itu jika Anda mau.
-
Gunakan metode getMouseX () dan getMouseY ().
Objek Scene memiliki metode yang disebut getMouseX () dan getMouseY (). Gunakan metode ini untuk mendapatkan koordinat X dan Y mouse di tempat kejadian. Perhatikan bahwa koordinat tidak selalu tepat.
-
Periksa untuk melihat apakah Anda memiliki layar sentuh.
Objek Scene memiliki properti yang mudah disentuh yang benar jika browser memiliki layar sentuh. Anda biasanya tidak ingin objek disembunyikan oleh jari Anda, jadi sering Anda ingin mengimbangi sebuah benda saat menggunakan layar sentuh untuk masukan.
-
Pindahkan benda lebih tinggi dari jari Anda.
Di lingkungan layar sentuh, biasanya Anda ingin sprite tetap terlihat, sehingga Anda sering mengimbangi sumbu Y dengan jumlah tertentu sehingga tidak dikaburkan oleh jari pemain. Kurangi beberapa nilai dari Y untuk mendapatkan efek ini.