こんにちは、カバゴトです!今回はUIボタンUIボタンを使ってオブジェクトを生成する方法について解説したいと思います!
ボタンの作成
「Game Object」→「UI」→「Button-TextMeshPro」をクリックします。
すると、UIボタンが出てくるので、画面操作や右側の座標(Position)の値を変えていい感じの場所にUIボタンを移動させます。
オブジェクトの作成
「Game Object」→「3DObject」→「Cube」で今回はオブジェクトキューブを作成します。
Positionは(0,0,0)にしています。
キューブができたら、下のProjectビューにドラッグ&ドロップしてPrefab化します。
こんな感じになればOKです!
「Cube」は最初画面に映す必要はないので右クリック→「Delete」で消しておきましょう。
スクリプト作成
using UnityEngine;
using UnityEngine.UI;
public class CubeGenerator : MonoBehaviour
{
public Button generateButton; // ボタンの参照
public GameObject cubePrefab; // キューブのプレハブ
void Start()
{
// ボタンにリスナーを追加して、クリック時にGenerateCubeメソッドを呼び出す
generateButton.onClick.AddListener(GenerateCube);
}
void GenerateCube()
{
// キューブを生成し、ランダムな位置に配置する
Vector3 randomPosition = new Vector3(Random.Range(-5.0f, 5.0f), Random.Range(-5.0f, 5.0f), Random.Range(-5.0f, 5.0f));
Instantiate(cubePrefab, randomPosition, Quaternion.identity);
}
}
このスクリプトはボタンをクリックすると、先ほど作ったキューブをある範囲内でランダムな位置に配置するというスクリプトです。
「Assets」→「Create」→「C#Script」でスクリプトを作り、先ほどのコードを書きます。コードは左の「Button」にドラッグ&ドロップします。
右側の「Generate Button」に左の「Button」、「Cube Prefab」に下にある「Cube」Prefabをドラッグ&ドロップします。
こんな感じになればOKです!
実際に動かしてみる
では実際に動かしてみます!
ボタンをクリックするとキューブが出現しました!
終わりに
最後まで読んでくださりありがとうございます!今回は、今回はUIボタンUIボタンを使ってオブジェクトを生成する方法について解説しました。もし、うまくいない場合や意見等あればコメントの方をよろしくお願いします!
この記事が参考になれば幸いです。また、次回のブログでお会いしましょう!
コメント