Unity-ben hogy tudom megkapni az összes Prefab-et, amin egy bizonyos Tag van?
Egy megoldást találtam rá, de csak akkor működik valamiért ha gépen indítom el Unity-n belül, de telefonon csak egyet kap meg az 5 prefab közül. Azért szeretném így, hogy később ha esetleg csinálok még ilyen vagy hasonló elemeket, akkor azokat egyszerűen csak létrehozom prefab-ként, és automatikusan beveszi magának a játékba. Működik is, csak valamiért egyedül az editoron belül.
A kódom:
ObjectPool[] platformPools;
float[] platformWidths;
void Start()
{
var taggedObjects = Resources.FindObjectsOfTypeAll(typeof(GameObject)).Cast<GameObject>().Where(g => g.CompareTag("Prefabs")).ToArray();
platformPools = new ObjectPool[taggedObjects.Length];
platformWidths = new float[platformPools.Length];
for (int i = 0; i < platformPools.Length; i++)
{
platformPools[i] = gameObject.AddComponent<ObjectPool>();
platformPools[i].PooledObject = taggedObjects[i];
platformWidths[i] = platformPools[i].PooledObject.GetComponent<BoxCollider2D>().size.x;
}
}
https://www.youtube.com/watch?v=uNpBS0LPhaU&t=1564s
probald meg ezzel
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!