Unity事例ノート

UNITY

アクティブ状態のオブジェクトに当たれば消える

クリックした瞬間だけアクティブ状態になり、他のオブジェクトがそこにぶつかった場合のみ、消えるようにしましょう。

クリックすれば0.5秒だけ色が変わり、その間にボールがぶつかった時だけ、削除されます。

プロセカのような音ゲーで、ノーツを破壊したい時などに、使えそうな機能です。

関連記事:
他のスクリプトのBoolを取得する
向かってくるオブジェクトをクリックで破壊
音ゲーのノーツみたいなオブジェクト動作
クリックすると1秒間だけ実行
キー入力によってn秒間だけ実行
アクティブ状態の時間をはかる

クリックで反応するCubeの作成

Cubeを作成し、トリガーにするにチェック。

横方向を伸ばしてサイズを変えます。

MainCameraの位置と角度を変え、見下ろすような視野にします。

ゲームビューではこのように見えています。

CubeClick.csを作成し、Cubeに追加します。

CubeClick.csを記述します。

ゲームプレイして、Cubeをクリックしてみましょう。

0.5秒間だけ、色が変化します。

ノーツを破壊するような操作

空のオブジェクトを作成し、座標を10にします。

ClonePoint.csを作成し、GameObjectに追加します。

ClonePoint.csを記述します。

Sphereを作成し、リジッドボディを追加します。

UseGravityのチェックを外します。

SphereMove.csを作成し、Sphereに追加します。

SphereMove.csを記述します。

Sphereをプロジェクトビューにドラッグ&ドロップし、プレハブ化します。

Sphereの元データは削除しておきます。

スフィアのフィールドに、Sphereを入れましょう。

ゲームプレイして、動きを確認します。

そのまま何もしなければ、ボールが通過します。

Cubeをクリックして、赤色になった時だけ、ボールが削除。

Cubeをクリックして、黄色に戻ったら、そのまま通過していきます。

関連記事:
他のスクリプトのBoolを取得する
向かってくるオブジェクトをクリックで破壊
音ゲーのノーツみたいなオブジェクト動作
クリックすると1秒間だけ実行
キー入力によってn秒間だけ実行
アクティブ状態の時間をはかる

SCHOOL教室案内