$touches - hoge1e3/Tonyu2 GitHub Wiki
$touches
タッチパネルのタッチされた座標を返します.
$touches[i] は,i番目(0が最初の指)の指がタッチした場所についての情報を格納するTouchFingerオブジェクトです.
$touches[i].xと$touches[i].yは,タッチされた場所のx,y座標(※)です.$touches[i].vxと$touches[i].vyは,タッチ後,スワイプした量(1フレームあたりの移動量)です$touches[i].touchedは,今その場所がタッチされたばかりなら1,タッチされ続けていればそのフレーム数,タッチされていなければ0を返します$touches.findWithin(obj,dist)メソッドは,オブジェクトobjから距離dist以内にタッチしている指があれば,それをオブジェクトで返します.- 返されたオブジェクトは,指が離れたときに
endedがtrueにセットされます.例:特定の位置をクリックした時に動作をする,オブジェクトをドラッグする
- 返されたオブジェクトは,指が離れたときに
※座標系は$InputDevice.defaultLayerで指定します。デフォルトでは$Screenの左上を(0,0)としています
マウス操作によるタッチエミュレーション
- タッチパネル非対応のデバイスでは,マウスのクリックをタッチ操作に見立てて,
$touches[0]の値を変化させることができます.(タッチエミュレーション) - タッチパネルとマウス両対応のデバイスでは,実行中に一度でもタッチパネルに触れると,タッチエミュレーションが無効になります.
- マウスカーソルの位置だけを判定する場合は,
$mouseX,$mouseYを使用します. - マウスのクリック判定だけを行う場合は getkey("leftbutton") などを用います.
使用例
- タッチした位置にオブジェクトを移動させる
- クリック/タッチした時に動作をする
- オブジェクトを動かす
- ドラッグやスワイプした量に応じてオブジェクトを動かす
- スクロールしたときのマウスやタッチの座標について
- オブジェクトをドラッグする2
その他
この機能は Tonyu2で新たに追加された機能です