Jump to content
Sign in to follow this  
ebenknot

Optimizar mi juego para mas dispositivos

Recommended Posts

Hola! necesito un poco de ayuda para aumentar el rendimiento de mi juego en moviles de baja gama. Tengo un juego en google play llamado Zombeat.io y mucha gente que tiene moviles de baja gama no pueden entrar al juego. Como podria bajarle los recursos para que funcione en mas moviles? Muchas gracias de antemano. un saludo!

Aqui el juego por si quereis ver como es:

https://play.google.com/store/apps/details?id=com.FrenzyFrameStudio.Zombeat.io

Share this post


Link to post
Share on other sites

Es una pregunta tan compleja de contestar! Es cómo si te preguntara como diseñador, "Cómo puedo diseñar un juego de zombies?"

Es mejor que hagas preguntas mucho más concretas. Además, y me sorprende. Cómo has hecho un juego multiplayer y en cambio tienes problemas para optimizar un juego 2D?

Share this post


Link to post
Share on other sites

primero deverias buscar el problema.

por que tiene bajo rendimiento?

- es por culpa de los scripts? trata de simplificar cosas, igual alguna cosa se puede hacer en coroutines a la largo de varios frames en vez? almacena variables que vallas a utilizar varias veces en vez de buscarlas, calcularlas, o cogerlas con getComponent.... y hay muchas mas formas de "optimizar" el codigo...

- es por culpa de los graficos? reduce el tamaño de algunas texturas (en movil es mejor que ninguna supere los 512*512).  optimiza los mesh (si los hay) siempre se puede borrar poligonos que no se ven, porejemplo los que dan cara al suelo...  utiliza shaders mas simples que le cueste menos de calcular....  y, igual que con los scripts, hay mas formas de optimizar los graficos...

- ...o puedes ser cosa de las physics, del garbage collector... o incluso de la version de unity que utilices (en algunas los builds para movil tienen mejor rendimiento que en otras)

 

como dice @iRobb es una pregunta muy compleja, habria que tener acceso al proyecto entero y tirarte mucho rato para ver como optimizarlo bien...

  • Like 1

Share this post


Link to post
Share on other sites

Es imposible saber qué está fallando y cuándo lo está haciendo. Para eso tenés herramientas como el profiler, que te dice cuanta memoria estás usando, procesamiento en general (script por script, por ej podés hasta sacar cuando tarda un Raycast en procesar una order, usando Deep Profile) y más. Existen cosas generales que podés hacer, como por ejemplo:

  • Usar un sprite atlas (o sheet?) en vez de muchos sprites por separado.
  • Si un sprite es muy pequeño no necesita estar super detallado (alta resolución).
  • usar físicas menos complejas donde no se requieran (si fuera el caso). Ej no es lo mismo evaluar cientos de circulos vs circulos que evaluar polígonos vs polígonos.
  • No generar basura constantemente (por ej llamar a Camera.main o GetComponent cuadro a cuadro).
  • Like 1

Share this post


Link to post
Share on other sites
On 9/12/2020 at 10:29 AM, Igor said:

primero deverias buscar el problema.

por que tiene bajo rendimiento?

- es por culpa de los scripts? trata de simplificar cosas, igual alguna cosa se puede hacer en coroutines a la largo de varios frames en vez? almacena variables que vallas a utilizar varias veces en vez de buscarlas, calcularlas, o cogerlas con getComponent.... y hay muchas mas formas de "optimizar" el codigo...

- es por culpa de los graficos? reduce el tamaño de algunas texturas (en movil es mejor que ninguna supere los 512*512).  optimiza los mesh (si los hay) siempre se puede borrar poligonos que no se ven, porejemplo los que dan cara al suelo...  utiliza shaders mas simples que le cueste menos de calcular....  y, igual que con los scripts, hay mas formas de optimizar los graficos...

- ...o puedes ser cosa de las physics, del garbage collector... o incluso de la version de unity que utilices (en algunas los builds para movil tienen mejor rendimiento que en otras)

 

como dice @iRobb es una pregunta muy compleja, habria que tener acceso al proyecto entero y tirarte mucho rato para ver como optimizarlo bien...

Muchas gracias por la repsuesta! echaré vistazo a todo lo que comentas. 

On 9/12/2020 at 5:47 PM, lightbug said:

Es imposible saber qué está fallando y cuándo lo está haciendo. Para eso tenés herramientas como el profiler, que te dice cuanta memoria estás usando, procesamiento en general (script por script, por ej podés hasta sacar cuando tarda un Raycast en procesar una order, usando Deep Profile) y más. Existen cosas generales que podés hacer, como por ejemplo:

  • Usar un sprite atlas (o sheet?) en vez de muchos sprites por separado.
  • Si un sprite es muy pequeño no necesita estar super detallado (alta resolución).
  • usar físicas menos complejas donde no se requieran (si fuera el caso). Ej no es lo mismo evaluar cientos de circulos vs circulos que evaluar polígonos vs polígonos.
  • No generar basura constantemente (por ej llamar a Camera.main o GetComponent cuadro a cuadro).

Muchas gracias tambien por estos puntos. Iré poniendo en fila todo para ir viendo. 

Share this post


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

UnitySpain © Todos los derechos reservados 2020
×
×
  • Create New...