Objekta izveide, pamatojoties uz priekšvārdu no skripta
Verifikācijas vide
- Windows
-
- Operētājsistēmā Windows 11
- Vienotības redaktors
-
- 2021.3.3f1
- Ievades sistēmas pakete
-
- 1.3.0
Priekšnoteikumi šim padomam
Tālāk norādītie iestatījumi ir veikti iepriekš kā priekšnoteikums šī padoma aprakstam.
Objekta izveide, pamatojoties uz priekšvārdu skriptā
Iepriekšējos padomos mēs ievietojām objektus no paneļu uz skatu, bet šajā gadījumā mēs ievietojam iepriekš noteiktu objektu skaitu un palaižam spēli. Tomēr dažas spēles var vēlēties dinamiski pievienot objektus, kamēr spēle darbojas. Tādā gadījumā jums tas būs jāpievieno no skripta paneļa.
Paraugu izveide
Pēc jaunā projekta izvietošanas novietojiet pogu. Mēģināsim ģenerēt objektu no paneļa katru reizi, kad noklikšķinām uz pogas.
Izveidojiet paneļu. Šī ir tāda pati procedūra kā iepriekšējie padomi.
Izveidojiet skriptu, lai pievienotu objektu nākamajā reizē, kad noklikšķināsit uz pogas. ButtonEvent
Atstājiet vārdu kā .
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
Definējiet lauku, lai varētu iestatīt, kurš sagatave jāģenerē, pamatojoties uz iepriekš.
Instantiate
Varat izmantot metodi, lai izveidotu jaunu objektu, GameObject
pamatojoties uz šo objektu.
Izveidotā objekta pozīcija kļūst par izcelsmi, un neatkarīgi no tā, cik daudz objektu ir izveidoti, objekti pārklājas un ir grūti saprast, tāpēc pozīcija tiek iestatīta nejauši pēc izveidošanas. Pozīcijas korekcijas vērtība ir piemērota, jo tas ir paraugs.
Pievienojiet skriptu EventSystem.
GameObject
ir iestatīts, tāpēc nometiet priekšvārdu šeit.
Noklikšķinot uz pogas, tiek OnClick
izsaukta metode.
Parauga izpilde
Kad esat izveidojis, palaidiet spēli un noklikšķiniet uz pogas. Katram klikšķim ir jāģenerē objekts.
Protams, tā kā tas tiek ģenerēts, pamatojoties uz paneļu, ja mainās paneļa vērtība, ģenerētais objekts tiks ģenerēts atbilstoši šai vērtībai.