Langsung ke konten utama

Construct 2 Indonesia Manual: Bab Plugin Reference - 27. Touch

Object: Touch mendeteksi masukan dari perangkat layar sentuh seperti perangkat iPhone, iPad, Android, dan Windows 8. Layar sentuh untuk komputer desktop juga tersedia, namun ini jarang dibandingkan ponsel, jadi umumnya Object: Touch digunakan untuk mengantisipasi masukan pada perangkat mobile.

Object: Touch juga memberikan masukan dari Accelerometer (gerak) dan Inclinometer (Tilt/Compass Direction) jika perangkat mendukungnya.

Cara terbaik adalah mendukung masukan sentuhan sedapat mungkin. Pada web modern banyak user sekarang melakukan browsing di perangkat Mobile dengan input sentuh saja dan tidak ada mouse atau keyboard. Jika game Anda tidak mendukung kontrol sentuh, akan banyak user tidak dapat memainkan game Anda sama sekali. Untuk panduan tentang cara menerapkan kontrol sentuh di layar, lihat tutorial tentang Touch Control (http://www.scirra.com/tutorials/202/touch-controls-and-a-trick-to-detect-input-method).

Untuk beberapa contoh penggunaan masukan Sentuh, cari Touch di dialog Start.


Multi-touch

Object: Touch mendukung Multi-touch. Ini sangat berguna dengan Condition: On touched Object dan Condition: Is touching Object, yang dapat mendeteksi jika beberapa kontrol sentuh di layar sedang digunakan. Ini cukup untuk banyak jenis game.

Untuk penggunaan lebih lanjut, Expression: TouchID, XForID dan YForID dapat digunakan untuk menanggapi sentuhan secara individual untuk berbagai tujuan. Setiap sentuhan memiliki ID unik (yang merupakan nomor acak), dan dapat diakses menggunakan Expression: TouchID dalam Event seperti: On any touch start. ID sentuh kemudian dapat disimpan ke dalam Variable dan diambil menggunakan Expression: XForID dan YForID. Selanjutnya membandingkan Expression: TouchID pada Condition: On any touch end untuk menunjukkan kapan sentuhan itu dilepaskan.



Touch Properties

  • Use mouse input
    Jika diset ke YES, klik mouse akan mensimulasikan Event sentuhan.
    Mengklik dan menyeret (Click & Drag) tombol kiri mouse akan mensimulasikan sentuhan di mana mouse diseret, dan klik tunggal akan mensimulasikan ketukan (Tap).
    Ini bisa sangat berguna untuk menguji Touch Event bekerja dengan baik pada komputer desktop tanpa input sentuh yang didukung. Namun, hanya input sentuhan tunggal yang bisa disimulasikan dengan mouse, dan mouse jauh lebih akurat (Precise) dibandingkan sentuhan, jadi lebih baik melakukan pengujian pada perangkat layar sentuh asli.



Touch Conditions

  • Compare acceleration
    Bandingkan gerak perangkat saat ini sebagai percepatan pada setiap sumbu (Axis) dalam m/s2 (meter per detik per detik). Efek gravitasi dapat dimasukkan atau dikecualikan, namun perhatikan bahwa beberapa perangkat hanya mendukung nilai Accelerometer termasuk efek gravitasi dan akan selalu menghasilkan 0 untuk percepatan tanpa gravitasi.

  • Compare orientation
    Bandingkan orientasi perangkat saat ini, jika perangkat memiliki Inclinometer (Alat pengukur sudut/Angle) yang didukung. Alpha adalah arah kompas dalam derajat. Beta adalah kemiringan perangkat (Tilt) Front-to-back dalam derajat (yaitu miring ke depan menjauh dari Anda jika memegang di depan Anda). Nilai positif menunjukkan kemiringan depan dan nilai negatif menunjukkan kemiringan belakang. Gamma adalah kemiringan perangkat kiri-ke-kanan dalam derajat (yaitu memutar jika memegang di depan Anda). Nilai positif menunjukkan kemiringan kanan dan nilai negatif menunjukkan kemiringan kiri.

  • Compare touch speed
    Bandingkan kecepatan sentuhan tertentu (nilai dengan oleh indeks berbasis nol). Kecepatan sentuh diukur dalam pixel per detik pada Canvas, sehingga tidak terpengaruh oleh penskalaan layar.

  • Has Nth touch
    TRUE jika nomor sentuh yang dilakukan bersentuhan dengan layar. Misalnya: Has touch 1 akan TRUE jika ada 2 atau lebih sentuhan yang bersentuhan dengan layar (ini adalah indeks berbasis nol).

  • Is in touch
    TRUE jika ada sentuhan di layar.

  • Is touching Object
    TRUE jika ada sentuhan sedang menyentuh Object tertentu.

  • On any touch end
    Dipicu saat ada sentuhan yang terlepas dari layar.

  • On any touch start
    Dipicu pada sentuhan di layar.

  • On Nth touch end
    Dipicu saat nomor sentuh tertentu dilepaskan dari layar. Misalnya: On touch 1 end akan terpicu saat melepaskan sentuhan serentak kedua (ini adalah indeks berbasis nol).

  • On Nth touch start
    Dipicu saat nomor sentuh tertentu menyentuh layar. Misalnya: On touch 1 start akan terpicu saat sentuhan serentak kedua (ini adalah indeks berbasis nol).

  • On touched Object
    Dipicu saat Object tertentu disentuh.



Touch Actions

Object: Touch tidak memiliki Actions.


Touch Expressions

  • AccelerationX
  • AccelerationY
  • AccelerationZ
    Mendapatkan gerak perangkat sebagai percepatan pada setiap sumbu (Axis) dalam m/s2 (meter per detik per detik) tidak termasuk efek gravitasi. Expression yang menggunakan gravitasi lebih banyak didukung; Expression ini akan menghasilkan 0 setiap saat pada perangkat yang tidak mendukungnya.

  • AccelerationXWithG
  • AccelerationYWithG
  • AccelerationZWithG
    Mendapatkan gerak perangkat saat ini sebagai percepatan pada setiap sumbu (Axis) dalam m/s2 (meter per detik per detik) termasuk percepatan yang disebabkan oleh gravitasi, yaitu sekitar 9,8 m/s2 turun setiap saat. Misalnya: saat diam, perangkat akan melaporkan akselerasi ke bawah berdasarkan gaya gravitasi. Expression ini lebih sering didukung daripada Expression yang mengambil percepatan tanpa G (Gravity). Namun, tidak semua perangkat bisa menjamin dalam dukungan deteksi gerakan, jika begitu, maka akan menghasilkan 0 setiap saat.

  • Alpha
  • Beta
  • Gamma
    Mengambil orientasi perangkat, jika didukung, atau 0 setiap saat, jika tidak didukung. Alpha adalah arah kompas dalam derajat. Beta adalah kemiringan perangkat front-to-back dalam derajat (yaitu miring ke depan menjauh dari Anda jika memegang di depan Anda). Nilai positif menunjukkan kemiringan depan dan nilai negatif menunjukkan kemiringan belakang. Gamma adalah kemiringan perangkat kiri-ke-kanan dalam derajat (yaitu memutar jika memegang di depan Anda). Nilai positif menunjukkan kemiringan kanan dan nilai negatif menunjukkan kemiringan kiri.

  • AbsoluteX
  • AbsoluteY
  • AbsoluteXAt(index)
  • AbsoluteYAt(index)
  • AbsoluteXForID(id)
  • AbsoluteYForID(id)
    Mengambil posisi sentuhan saat ini di area kanvas. Ini adalah (0, 0) di kiri atas kanvas dan naik ke ukuran jendela. Hal ini tidak terpengaruh oleh Scrolling atau Scaling dalam game. Expression: At dapat digunakan untuk mengambil posisi absolut dari sentuhan apa pun dengan indeks berbasis nol, dan Expression: ForID digunakan untuk mengambil posisi sentuhan berdasarkan ID sentuhan tertentu.

  • X
  • Y
  • XAt(index)
  • YAt(index)
  • XForID(id)
  • YForID(id)
    Mengambil posisi sentuhan dalam koordinat Layout. Ini berubah untuk mencerminkan pengguliran (Scrolling) dan penskalaan. Namun, jika Layer telah digulir, diskalakan atau diputar, Expression ini tidak memperhitungkannya – untuk kasus tersebut, gunakan Expression versi Layer di bawah. Expression: At dapat digunakan untuk mengambil posisi sentuhan apa pun berdasarkan indeks berbasis nol, dan Expression: ForID digunakan untuk mengambil posisi sentuhan dengan Touch ID tertentu.

  • X("Layer")
  • Y("Layer")
  • XAt(index, "Layer")
  • YAt(index, "Layer")
  • XForID(id, "Layer")
  • YForID(id, "Layer")
    Mengambil posisi sentuhan saat ini dalam koordinat Layout, dengan pengguliran (Scrolling), penskalaan dan rotasi yang disertakan dalam memperhitungkan Layer tertentu. Layer dapat dIIDentifikasi berdasarkan String namanya atau indeks berbasis nol (misalnya: Touch.X (0)). Expression: At dapat digunakan untuk mengambil posisi sentuhan pada Layer dengan indeks berbasis nol, dan Expression: ForID digunakan untuk mengambil posisi sentuhan dengan Touch ID tertentu.

  • TouchCount
    Jumlah sentuhan dengan layar perangkat.

  • TouchID
    Mengambil ID unik dari sentuhan (yang merupakan nomor acak) dalam Event seperti: On any touch start atau On any touch end.

  • TouchIndex
    Mengambil indeks sentuhan berbasis nol dalam Event seperti: On any touch start atau On any touch end.

  • AngleAt(index)
  • AngleForID(id)
    Mendapatkan sudut gerak sentuhan tertentu, dalam derajat, dengan indeks berbasis nol atau ID unik. Sentuhan harus bergerak di layar perangkat agar Expression ini memberikan nilai.

  • SpeedAt(index)
  • SpeedForID(id)
    Mendapatkan kecepatan sentuhan tertentu dengan indeks berbasis nol atau ID unik. Kecepatan sentuh diukur dalam pixel kanvas per detik, sehingga tidak terpengaruh oleh penskalaan layar.



Komentar