ゲーム制作3本目 実装編
スワイプ判定
今回のゲームの操作は「スワイプ」。
上下左右に指を動かすだけでOK/NGを判定するシンプルなルールですが、その裏では細かい調整が必要でした。
方向をどう判定するか
スワイプ判定は「指を置いた位置」と「指を離した位置」を比べて、どの方向に動いたかを計算します。
-
縦方向の移動が大きい → 上スワイプ or 下スワイプ
-
横方向の移動が大きい → 左スワイプ or 右スワイプ
つまり、どちらの移動量が大きいかを見て、方向を決めています。
判定のしきい値
実際には、ちょっと指が斜めになったり、あまり動かさなかったりすることがあります。
そのため「何ピクセル以上動いたらスワイプとみなす」という しきい値 を設定しました。
これを小さくすると誤判定が増え、大きくすると今度はスワイプとして認識されない…。
このバランス調整が地味に大変でした。
判定タイミング
入力チェックは毎フレームごとに行っています。
Unityでは Update() という仕組みで常に状態を監視していて、
「指を置いた」「動かした」「離した」を逐一追いかけて判定しています。
エフェクト演出
ゲームを遊んでいて気持ちよいかどうかは、「判定」そのものよりも「演出」に左右されます。
そこで今回は、スワイプの成功/失敗に応じて、視覚効果(エフェクト) を加えました。
スワイプが正解だったときには、パーティクル(粒子) を使ってキラキラした光を出しています。
Unityでは「ParticleSystem」という仕組みがあり、星のような光や煙のようなモヤを簡単に作れます。
これを「成功時のイベント」に組み込むだけで、ゲームが一気に華やかになりました。
音との組み合わせ
エフェクト単体では弱いので、同時に効果音も鳴らしています。
-
成功 → 高い音で「シャキーン」
-
失敗 → 低い音で「ポヨン」
この「光と音の組み合わせ」が、スワイプの爽快感を倍増させてくれました。
コメント
コメントを投稿