Jump to content
UnitySpain
Sign in to follow this  
power

Snapshot de un gameobject

Recommended Posts

Hola a todos, 

Estoy haciendo un rpg 2d para movil, y cuando mato un enemigo hago que desaparezca pasados unos segundos, para poder reutilizarlo luego. Había pensado, aunque no se si sería posible o recomendable, hacer un pantallazo de ese enemigo muerto, posicionarlo como un sprite encima del enemigo muerto, y desactivar este prefab. Y para rizar el rizo, según se hicieran los pantallazos, meterlos todos en un atlas para que solo genere un drawcall si hay por ejemplo 5 enemigos muertos en el suelo.

Primero, no se si es posible hacerlo, y segundo, no se que impacto de rendimiento tendrá esto.¿Alguien se ha visto en algo parecido? Es por no pegarme el curro y luego tener que deshacerlo todo porque consume demasiado.

Esta duda se extienda a los decals (manchas de sangre en el suelo, manchas de explosiones, etc). Me gustaría poder dejarlos en el suelo y no tener que hacerlos desaparecer. ¿Alguien saber hasta que punto es posible hacer esto sin que impacte mucho en el rendimiento, o trucos - recomendaciones para hacerlo?

Un saludo

Share this post


Link to post
Share on other sites

No me he planteado nunca hacerlo así. Dado todo el rendimiento en occlusion que hay y dejar el instance del prefab y mejor marcarlo static y kinematic si prefieres, no creo que tengas problemas de rendimiento. También es cierto que no sé si hablas de 10 o de 10K y cuántos se pueden llegar a ver simultáneamente por la camera del player.

Share this post


Link to post
Share on other sites

Es lo mismo que hacer un Imposter (aunque mal hecho y a lo guarro), y para un juego 2D no mejorará el rendimiento global, a menos que tengas que hacerlo con muchos enemigos en pantalla al mismo tiempo. No merece la pena...

Recuerda, es un juego 2D. Basta con tener ya hecho el correspondiente sprite de enemigo muerto dentro del Atlas, previamente. El único caso que se me ocurre para que lo quieras hacer así, es que tu "juego 2D" se base en Spiner2D o personaje con animación esquelética , hecho por partes como en un Rayman Legends o un Dungeon Crown.

 

Hay algunos trucos, cómo ir grabando la información de esos "decals", como si fueran tiles, en plan información de tile estático predefinido dentro de tu TileMap (si tus niveles se basa en eso). Para luego regrabar eso dentro del TileMap y que al leerlo ya aparezcan las manchas de sangre como si siempre hubieran estado allí en un principio.

De nuevo, creo que no es necesario y acabarías saturando el mapa más de lo necesario. Mejor céntrate en lo que es el juego, no en su estética...

 

 

Share this post


Link to post
Share on other sites
Sign in to follow this  

×
×
  • Create New...