クリックで壊したオブジェクトの名前を、テキスト出力してみましょう。
オブジェクトを順番に壊し、消えたオブジェクトの名前を取得して、表示します。
関連記事:
3つのオブジェクトを削除すればテキストを表示
オブジェクト名をカンマ区切りでテキスト表示
Textオブジェクトの作成
まずはテキストを作成しましょう。
Textの位置、大きさ、カラーなどを設定します。
ゲームビューにはこのように配置されています。
テキストフィールドの「New Text」の文字は消しておきましょう。
オブジェクト名を表示するスクリプト
Cube、Sphere、Capsuleの3種類のオブジェクトを作成します。
作成したオブジェクトを横並びに配置します。
続いて、空のオブジェクトを作成しましょう。
ClickDelete.csを作成して、GameObjectに追加します。
ClickDelete.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 |
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class ClickDelete : MonoBehaviour { public Text clearText; void Update () { Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition); RaycastHit hit; if (Input.GetMouseButtonDown(0)) { if (Physics.Raycast(ray, out hit)) { string objectName = hit.collider.gameObject.name; Destroy(hit.collider.gameObject); clearText.text = objectName; } } } } |
GameObjectを選択し、ClearTextフィールドに、Textを入れます。
ゲームプレイして、動作を確認しましょう。
オブジェクトを壊すと、その名前がテキストとして表示されます。
Ray(光線)の当たったオブジェクトの名前を取得し、objectNameに格納。
その後、オブジェクトを削除して、objectNameをテキスト出力します。