Unity Spain
Mesa de ayuda => Unity3D => Scripting => Mensaje iniciado por: zelleGames en Septiembre 13, 2019, 04:04:42 AM
Buenas gente,
Llevo unos días optimizando algunos juegos para movil y me he dado cuenta que el proceso MonoBehaviour.Print() toma muchísimo tiempo de CPU.
La verdad que no hay mayor problema porque quito todos los print("*****"); del código y listo, pero me parecía raro que tomase tanto tiempo una función que en principio parece sencilla...
Así que ya sabéis echarle un ojo a vuestro código y quitar todos esos prints.
Un saludo
Toma mucho tiempo por la escritura del archivo .log.
El problema es que se está utilizando un FileStream esto hace una llamada a GC y un retraso en el ciclo.
La solución sería implementar tu propia consola de LOG con un buffer corto y sin un log persistente.
¡Muchas gracias por la explicación!
La solución sería implementar tu propia consola de LOG con un buffer corto y sin un log persistente.
[/quote]
La verdad que la funcion print() la uso solo en el desarrollo para ver que se va ejecutando bien el codigo, pero me lo apunto por si alguna vez lo necesito.
Un saludo
El Debug.Log no se debe implementar en un producto final. Si quieres una cónsola para móvil yo utilizo la versión PRO del siguiente componente que tiene una versión FREE también:
https://assetstore.unity.com/packages/tools/gui/lunar-mobile-console-free-82881 (https://assetstore.unity.com/packages/tools/gui/lunar-mobile-console-free-82881)