【Unity】クリックでオブジェクトを選択するコードの書き方!

マウスクリックでオブジェクトを選択するスクリプトです。選択したオブジェクトに特定のアクションを実行できます。

using UnityEngine;

public class ObjectSelector : MonoBehaviour
{
    private GameObject selectedObject;

    void Update()
    {
        if (Input.GetMouseButtonDown(0))
        {
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
            RaycastHit hit;

            if (Physics.Raycast(ray, out hit))
            {
                if (selectedObject != null)
                {
                    // 選択解除の処理
                    DeselectObject();
                }

                selectedObject = hit.collider.gameObject;
                // 選択されたオブジェクトに対する処理
                SelectObject();
            }
        }
    }

    void SelectObject()
    {
        // 選択時の処理
        selectedObject.GetComponent<Renderer>().material.color = Color.red;
    }

    void DeselectObject()
    {
        // 選択解除時の処理
        selectedObject.GetComponent<Renderer>().material.color = Color.white;
    }
}

コメント

タイトルとURLをコピーしました