Estoy creando un clon de asteroides, pero con algunas campanas y silbatos más.¿Cómo hacer esto más eficiente?
A partir de ahora tengo un ArrayList<Asteroid>
que contiene todos los asteroides en la pantalla. Cada uno tiene un Vector
asociado y amplía mi clase genereic GameObject
que maneja el dibujo y la actualización y otras cosas comunes que cada objeto del juego tiene en común.
Dicho esto cada vez que destruyo un asteroide, creo un nuevo objeto Asteroid
y lo agrego al ArrayList<Asteroid>
... Hay un retraso notable cuando esto sucede, ya que también creo partículas de explosión y supongo que este es el GC.
Mi idea era crear en lugar de nuevos objetos sobre la marcha, que puedo precrear un grupo de ellos y simplemente volver a usarlos.
¿Es esta la idea correcta? Además, ¿cuál es la forma más organizada y eficiente de hacerlo?
Cualquier otra idea sería genial también. Solo intento reducir la creación de todos estos objetos porque definitivamente está causando un retraso notable. ¡Gracias!
¿Has intentado averiguar qué lleva tiempo con DDMS? – dan
Supongo que la demora es causada por el código que espera que la explosión termine antes de crear un nuevo objeto de asteroide. Intenta hacer asincrónica la explosión de la animación de asteroides. – deed02392
@dan: No he hecho esto, aunque creo que ayudará. No uso demasiado el DDMS, ¿cómo puedo usarlo para ver qué tarda más? –