回り続けるオブジェクトを、クリックで停止。
もう一度クリックすれば、再び回転がはじまるように、スクリプトを作成しましょう。
関連記事:
オブジェクトの先端をマウスカーソルに向ける
90°回転して叩くような動き
クリックのたびにランダム数字を止める
サイコロの目をクリックで止める
オブジェクトの動きをクリックで中断・再開する
キーを押している間は動きを一時停止
クリックで回転をストップ・スタート
シリンダーを作成します。
サイズを変更し、横向けにします。
空のオブジェクトを作成します。
GameObject(空のオブジェクト)を、Cylinderの端に配置します。
Cylinderをドラッグ&ドロップして、GameObjectの子オブジェクトにします。
PoleRotate.csを作成し、GameObjectに追加します。
PoleRotate.csを記述します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
using System.Collections; using System.Collections.Generic; using UnityEngine; public class PoleRotate : MonoBehaviour { private bool isStop; void Update() { if (Input.GetMouseButtonDown (0) && !isStop) { isStop = true; } else if (Input.GetMouseButtonDown (0) && isStop) { isStop = false; } if (!isStop) { transform.Rotate(0,10,0); } } } |
ゲームプレイして、動きを確認しましょう。
クリックで回転をストップ。
もう一度クリックすれば、再び回転が始まります。
ルーレットを使ったゲームなどで、活用できそうな仕組みですね。
関連記事:
オブジェクトの先端をマウスカーソルに向ける
90°回転して叩くような動き
クリックのたびにランダム数字を止める
サイコロの目をクリックで止める
オブジェクトの動きをクリックで中断・再開する
キーを押している間は動きを一時停止