タッチ入力
タッチの入力を受け取る
マウスのボタンが押された入力を受け取る場合、love.touchpressedコールバック関数を使用します。
touchX = 0
touchY = 0
function love.draw()
love.graphics.print("x:" .. touchX .. ", y:" .. touchY, 20, 20)
end
function love.touchpressed(id, x, y, dx, dy, pressure)
inX = x
inY = y
end
スクリーンをタッチすると、タッチした座標の情報が表示されます。
タッチの状態を詳しく受け取る
Love2Dでは「タッチが開始されたとき」「タッチが終了したとき」「タッチしながら移動したとき」の状態を取得することができます。
text = ""
function love.draw()
love.graphics.print(text, 20, 20)
end
function love.touchpressed(id, x, y, dx, dy, pressure)
text = "touchpressed:(" .. id .. "," .. x .. "," .. y .. ")"
end
function love.touchreleased(id, x, y, dx, dy, pressure)
text = "touchreleased:(" .. id .. "," .. x .. "," .. y .. ")"
end
function love.touchmoved(id, x, y, dx, dy, pressure)
text = "touchmoved:(" .. id .. "," .. x .. "," .. y .. ")"
end
タッチの状態が文字列で表示されています。
タッチの圧力について
love.touchpressed, love.touchreleased, love.touchmovedの引数の最後にpressureがあります。preassureはタッチの圧力の情報を保持しています。
ただし、現在の多くのタッチスクリーンは感圧式ではありません。そのため、タッチの圧力を正しく取得できないことの方が圧倒的に多いです。preassureはなるべく使わない方が良いでしょう。