Touch Hodisalari va Virtual Analog Joystik
O'yinni smartfon va planshetlarga moslashtiramiz: Touch API hodisalari, sahifa parazit scrollini bloklash, virtual joystik vektor matematikasi va ikki qo'lli Multi-Touch boshqaruvi.
O'yinchilarning 70%+ qismi telefonda: Klaviatura qayerda?
- Faqat klaviatura o'qlari (`keydown`) bosilgandagina ishlaydi.
- Do'stlaringiz havolani smartfonda ochadi — qahramon qotib turadi.
- Har 10 ta foydalanuvchining 7 tasini darhol yo'qotish demakdir!
- Ekranda zamonaviy nurli virtual joystik va sakrash tugmalari chiqadi.
- Barmoq teginishlari, surish va bir vaqtda bosishni tushunadi.
- Ham telefon sensorida, ham kompyuter klaviaturasida birdek ishlaydi!
Touch Hodisalari: Qanday qilib barmoqni kuzatamiz?
Barmoq ekranga tegdi. Joystik markazi yoki sakrash boshlanishi aniqlanadi.
Barmoq ekranda surilmoqda. Joystik burchagi va og'ish kuchi hisoblanadi.
Barmoq ko'tarildi. Joystik tutqichi avtomatik markazga (0, 0) qaytadi.
e.clientX bo'ladi. Touch'da esa koordinata e.touches[0].clientX massivida bo'ladi, chunki ekranga bir vaqtda 10 ta barmoq tegishi mumkin!
Sahifa Qimirlashining Oldini Olish: touch-action: none
O'yinchi joystikni tepaga sursa, brauzer sahifani aylantirish (scroll) yoki kattalashtirish deb tushunib, butun o'yinni ekrandan chiqarib yuboradi!
Virtual Analog Joystik: Baza va Tutqich
- Baza (Joy Base): Radiusi
R = 65pxbo'lgan qo'zg'almas doira markazi (x0, y0). - Tutqich (Joy Knob): Barmoq bilan har tomonga tortiladigan harakatlanuvchi tugma.
Doirada Cheklash (Clamping): Tutqich Uchib Ketmasligi Shart!
Agar barmoq ekranning narigi burchagiga borsa, tutqich o'z bazasidan 400 pikselga chiqib ketadi. Boshqaruv buziladi!
Normalizatsiya: Piksellarni -1.0 dan +1.0 Oralig'iga O'tkazish
Fizika dvijogiga ekranning piksellari qiziq emas. Unga nisbiy tortish kuchi kerak: 0 = to'xtash, +1.0 = to'liq tezlikda o'ngga yugurish, -0.5 = sekin chapga qadam.
Multi-Touch: Qanday qilib bir vaqtda yugurish va otish mumkin?
Agar faqat birinchi barmoq (`e.touches[0]`) tekshirilsa, o'ng qo'l bilan sakrashni bosganingizda chap qo'ldagi joystik o'chib qoladi yoki o'ng tomonga sakrab ketadi!
Responsiv Canvas va Fullscreen API
To'liq Mobil Stek: Touch + Audio + Partikllar + Kamera
Barmog'ingiz bilan silliq analog tezlik va burilish.
Har bir sensorli sakrash va o'qda toza 0ms ovoz sintezi.
Lazer va portlashlarda neon zarrachalar sochilib ketishi.
Kamera silliq Lerp bilan cheksiz dunyoda ergashadi.
Mobile Touch Studiyasi: Virtual Joystik va Sensorli Boshqaruv
- Brauzerda
lab/index.htmlni oching. - Joystikni torting va telemetriyada InputX o'zgarishini ko'ring.
- Multi-touch'ni sinang: joystikni tortib turib bir vaqtda Sakrashni bosing.
- Baza radiusi va deadzone sliderlarini o'zgartirib ko'ring.
O'ng paneldagi jadvalda ekrandagi barmoqlar soni, normalizatsiya ko'rsatkichlari va scroll blokirovkasi jonli yangilanadi.
10 Ballik Baholash Mezoni
- Touch hodisalari farqi to'liq tushuntirilgan.
- Clamping va normalizatsiya to'g'ri yozilgan.
- Multi-touch identifier roli aniq ko'rsatilgan.
- Touch hodisalari to'g'ri.
- Joystik formulasida 1 ta kamchilik bor.
- Varaqa to'ldirilgan.
- Faqat nazariy savollar to'ldirilgan.
- Matematik formulalar qolib ketgan.