Yesss, creo que en eso tienes toda la razón, es lo que venía pensando en el coche.
PERO, debo decir que la variable objeto la he añadido al final para hacer pruebas. Antes hacía el Instantiate directamente sobre cada objeto del array pajaros, sin utilizar la variable objeto, y el problema era el mismo. Añadí la variable objeto al final para hacer unas pruebas, y lo dejé así cuando hice la consulta (ahora la tengo quitada).
Es decir, en lugar de
Código:
objeto= Instantiate(Explosion, new Vector3(pajaro.transform.position.x, pajaro.transform.position.y, -1), pajaro.transform.rotation) as GameObject;
Estoy usando:
Código:
Instantiate(Explosion, new Vector3(pajaro.transform.position.x, pajaro.transform.position.y, -1), pajaro.transform.rotation);
Esto me funciona sin problemas generando varios Instantiate consecutivos al tener varias colisiones, pero sólo sobre un único objeto, no si hago un foreach con un array de objetos.
El nuevo objeto que se crea se destruye automáticamente al finalizar su animación.
-----Actualizado-----
Iniciado por
swapd0
Que conste que no tengo NPI de Unity pero supongo que pasaría eso si estuvieras usando java o algo así, con C++ tendrías memory leaks.
Estoy usando C#.
Marcadores