Creare un oggetto basato su un prefabbricato da uno script
Ambiente di verifica
- Finestre
-
- Windows 11
- Unity Editor
-
- 2021.3.3f1
- Pacchetto del sistema di input
-
- 1.3.0
Prerequisiti per questo suggerimento
Le seguenti impostazioni sono state effettuate in anticipo come premessa per la descrizione di questo suggerimento.
Creare un oggetto basato su un prefabbricato in uno script
Nei suggerimenti precedenti, abbiamo posizionato gli oggetti dal Prefabbricato alla vista, ma in questo caso posizioniamo un numero predeterminato di oggetti e avviamo il gioco. Tuttavia, alcuni giochi potrebbero voler aggiungere oggetti dinamicamente mentre il gioco è in esecuzione. In tal caso, dovrai aggiungerlo dal prefabbricato nello script.
Creazione di esempi
Dopo aver distribuito il nuovo progetto, posizionare il pulsante. Proviamo a generare un oggetto dal prefabbricato ogni volta che facciamo clic sul pulsante.
Creare un prefabbricato. Questa è la stessa procedura dei suggerimenti precedenti.
Creare uno script per aggiungere l'oggetto al successivo clic sul pulsante. ButtonEvent
Lasciare il nome come .
using UnityEngine;
public class ButtonEvent : MonoBehaviour
{
[SerializeField] private GameObject SpritePrefab;
public void OnClick()
{
// Instantiate にプレハブを渡すとそれをもとに新しいオブジェクトを生成する
var obj = Instantiate(SpritePrefab);
// 配置位置はランダムに
obj.transform.localPosition = new Vector3(Random.value * 6 - 3, Random.value * 6 - 3);
}
}
GameObject
Definire il campo in modo da poter impostare in anticipo su quale prefabbricato generare in base a questo.
Instantiate
È possibile passare un metodo per creare un GameObject
nuovo oggetto basato su tale oggetto.
La posizione dell'oggetto creato diventa l'origine e, indipendentemente dal numero di oggetti creati, gli oggetti si sovrappongono ed è difficile da capire, quindi la posizione viene impostata in modo casuale dopo la creazione. Il valore di regolazione della posizione è appropriato perché è un campione.
Allegare lo script a EventSystem.
GameObject
è impostato in modo da rilasciare il prefabbricato qui.
Quando si fa clic sul pulsante, viene OnClick
chiamato il metodo.
Esecuzione di campioni
Una volta creato, esegui il gioco e fai clic sul pulsante. Ogni clic dovrebbe generare un oggetto.
Naturalmente, poiché viene generato in base al prefabbricato, se il valore del prefabbricato cambia, l'oggetto generato verrà generato in base a quel valore.