• Braulio Madrid

Como optimizar partículas



Actualmente me encuentro aumentando el pack de árboles y arbustos que publique en la pagina hace mas o menos un mes. pero vi que podía mejorarlo y que podía incluir otros tipos de plantas para diferentes hábitats, hasta que vi en un ejemplo, un parque otoñal que tenía algunas partículas de hojas cayendo. ahí se me ocurrio que podia agregar algunos modelos de hojas como partículas a este pack y pensè de qué maneras puedo yo aprovechar algo de rendimiento. Al momento de hacer este tutorial me encuentro en tiempo real probando cómo hacerlo así que puedo fallar en las conclusiones, permítanme actualizar este blog con el tiempo si me quedo corto.


Nota: Este método solo permite un solo tipo de partícula, otros modos de partículas como un billboard horizontal o vertical tendrán que implementarse usando un shader especial que aun no poseo.

Manos a la obra

  • Haga un lienzo de photoshop de 4096x4096 píxeles, esta medida es la máxima permitida en algunos móviles, pero si su juego es para otra plataforma más poderosa, puede usar tamaños más grandes o más pequeños según las necesidades del proyecto, En esta imagen deberán poner las imágenes de sus particulas juntas en el lienzo.

  • Las imágenes que ingrese en el lienzo procura que sean transparentes y las capas donde se encuentra estas imágenes asegurate de convertirlas en objetos inteligentes antes de modificar su tamaño, para que conserve la calidad si algo sale mal.

  • Como se puede ver en la imagen inicial del blog, el lado izquierdo es el resultado final de la imagen.

  • Abrimos blender o cualquier programa que estemos acostumbrados a usar para modelar y haremos un simple Quad que mide 1x1 metro mirando hacia arriba y le haremos un despliegue de coordenadas UV, cargamos nuestro lienzo en PSD o una imagen resultante en PNG o cualquiera que pueda conservar transparencia y ubicamos allí nuestra UV del Quad.

  • Hacemos lo mismo con cada uno de las imágenes dentro del lienzo y así tener varias mallas de partículas distintas.

  • guardamos el resultado y abrimos unity, crearemos una escena y un nuevo sistema de partículas.

  • Creamos dentro del proyecto un nuevo material y le añadimos el lienzo que creamos en photoshop.

  • Seleccionamos dentro de Render Mode, el tipo Mesh, y en Mesh seleccionamos un Quad de los que hicimos en el programa de modelado, y seleccionamos el material que contenga el lienzo que creamos en photoshop previamente.

  • Ajustamos todas las demás opciones a nuestro gusto. en mi caso como decidí hacer partículas de hojas cayendo, elegí la forma de un circulo, sin velocidad inicial, usando la fuerza de la gravedad, activando las fuerzas externas para que sea afectado por el viento y le añadi rotación a través del tiempo y ajustando el tamaño inicial a 0.25%.

  • Ahora es solo duplicar partículas y cambiar en cada una de ellas el Quad para obtener distintos tipos de hojas.




Conclusión

  • Me hubiera gustado que se pudiera hacer todo tipo de partículas compartiendo una misma textura.

  • Este método es barato y garantiza que no haya sobrecarga de recursos y simple de implementar en algunos casos.

  • Al menos buscaré en otra oportunidad la manera de hacerlo tipo billboard con un shader, para garantizar una amplia mayoría de usos.

© 2023 por Darkcom. Proudly created with Wix.com | Peñol, Antioquia, Colombia| +57 3113389725 | Politica de privacidad

  • GitHub
  • BMadrid
  • DarkcomDev
  • Darkcom.dev
  • Braulio-Madrid
  • YouTube Darkcom Tech
This site was designed with the
.com
website builder. Create your website today.
Start Now