Video: Web Programming - Computer Science for Business Leaders 2016 2024
Perangkat mobile memiliki mekanisme masukan yang sangat menarik yang memungkinkan Anda mengendalikan objek dalam permainan HTML5 dengan memiringkan. Ini bekerja dengan alat on-board khusus yang disebut accelerometer , yang melacak gerak. Accelerometer sebenarnya mengukur rotasi, dan Anda dapat menggunakannya untuk mendapatkan kontrol kemiringan yang bagus dalam permainan Anda.
Perpustakaan simpleGame memiliki objek khusus yang disebut Accel yang merangkum accelerometer. Ini bekerja sangat mirip dengan objek Joy.
-
Buat objek Accel.
SimpleGame memiliki objek Accel. Buat objek ini untuk mengaktifkan pengujian accelerometer.
-
Gunakan metode untuk menentukan kemiringan.
Objek Accel memiliki metode khusus yang disebut getAX () dan getay () yang menunjukkan jumlah rotasi.
-
Ubah nilai akselerasi.
Nilai AX dan AY menampilkan jumlah rotasi di sekitar sumbu X dan Y. Nilai berkisar dari -9 sampai 9. Umumnya, Anda harus memodifikasi nilai kemiringan agar sesuai dengan perilaku yang Anda inginkan. Ini biasanya melibatkan beberapa perhitungan matematika sederhana.
Inilah kode untuk accel. html:
accel permainan var html; bola var; var accel fungsi init () {game = adegan baru (); bola = sprite baru (permainan, "redBall. png", 50, 50); accel = Accel baru (); permainan start ();} // akhirin fungsi init update () {game. bersih(); newDX = accel. getay (); newDY = accel. getAX (); newDX * = -5; newDY * = -5; bola setDX (newDX); bola setDY (newDY); bola update ();}
Accelerometer mudah digunakan:
-
Buat variabel untuk menahan objek accelerometer.
Anda dapat menghubungi accel variabel Anda.
-
Gunakan accel. getAX () untuk mendapatkan rotasi sekitar X.
Metode getAX () mengembalikan persentase kemiringan di sekitar sumbu X. Sumbu X bergerak dari sisi ke sisi pada layar, jadi putaran di sekitar X biasanya terikat pada gerak sepanjang sumbu Y!
-
Gunakan acccel. getere () untuk menentukan putaran di sekitar Y.
Demikian juga, metode getay () menggambarkan persentase kemiringan sepanjang sumbu Y (vertikal). Biasanya, Anda akan menggunakan getay () untuk mengendalikan gerakan horisontal.
-
Jangan khawatir tentang sumbu Z.
Anda juga bisa membaca rotasi sepanjang sumbu Z (yang masuk dari bagian tengah layar ke hidung Anda), namun ini umumnya tidak membantu.
-
Asumsikan (untuk sekarang) bahwa posisi netral terbaring rata di atas meja.
Anda akan mendapatkan nilai nol untuk getAX () dan getAY () saat perangkat benar-benar tergeletak di atas meja datar yang sempurna.
-
Percobaan dengan faktor penskalaan.
Biasanya Anda harus mengalikan hasil getAX () dan getAY () dengan jumlah tertentu untuk mendapatkan perilaku yang Anda inginkan. Jika Anda mengalikan keduanya dengan lima negatif, Anda akan mendapatkan nilai yang sesuai untuk dy dan dx. Anda harus bereksperimen untuk mendapatkan perilaku yang sebenarnya Anda inginkan.