Carga inicial muy lenta en Android

Previous topic - Next topic

hardyx

#15
Quote from: msx on 2013-Aug-16
Pues parece que el problema ya se expuso en el foro inglés.

http://www.glbasic.com/forum/index.php?topic=7949.0

¿Alguien con conocimiento me dice como puedo cambiar los puntitos por un loading...?

Pues según dicen, no se puede acceder a las imágenes en el .apk (no se sabe bien porqué), y por eso se copian en un directorio de datos de la aplicación la primera vez. En teoría editando el SDLActivity.java que está en el directorio del compilador de Android se podría cambiar ese mensaje. Parece ser que los puntintos lo han añadido hace poco, porque antes no estaba.

Hark0

Lo siento pero no tengo androide para ayudaros... :(
http://litiopixel.blogspot.com
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica Development Indie Videogames · Pixel-Art · Retrocomputing · Electronic

msx

Supongo que ésto en la mayoría de los casos no es un problema, pero cuando resulta que son 665 archivos... Claro que no es lo mismo copiar 1 archivo de 20 Mb por ejemplo que 700 archivos aunque sean de 1kb, como ocurre en mi caso.

Será cuestión de seguir indagando.

Hark0 por favor, no es posible que no tengas un androide todavía, si sólo falta que lo regalen con las magdalenas.

hardyx

Quote from: msx on 2013-Aug-17
Supongo que ésto en la mayoría de los casos no es un problema, pero cuando resulta que son 665 archivos... Claro que no es lo mismo copiar 1 archivo de 20 Mb por ejemplo que 700 archivos aunque sean de 1kb, como ocurre en mi caso.
¿No tienes manera de optimizar esas cientos de imágenes? Por ejemplo, si son animaciones, pues ponlas en archivos (por personajes o temas) y las cargas con LOADANIM.

También deberías probar a usar un archivo "shoebox" con todos los recursos, es como un comprimido que gestiona GLB automáticamente y no tienes que cambiar nada del código. Mirate la instrucción SETSHOEBOX.

msx

Recuerdo en los inicios de GLB que hice pruebas con shoebox y pensé en eso también como una solución, pero nunca lo he probado en android y no se como se comportará. De todas formas lo intentaré, gracias por la recomendación.

Hark0

Off Topic!

@msx, En verdad mi mujer tiene un ACE (pantalla muy pequeña)... y a mi hija le ha de llegar un clon del S3 desde China ;)
http://litiopixel.blogspot.com
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica Development Indie Videogames · Pixel-Art · Retrocomputing · Electronic

msx

Gracias hardyx, he conseguido reducir de 80 segundos a 40 con shoebox, algo es algo aunque sigue siendo bastante.

@Hark0. Es posible que tengas android hasta en el microondas y sin que lo sepas :).

mentalthink

Pues esto parece la batalla de los S.O de mobiles y teles, ahora Samnsung saca otro, meggo vuelve a la carga, sale el de Firefox, y para final de año salen los telefonos con Ubuntu, que a mi parcer va a estar realmente bien... Lo curioso como nadie compró el WebOS con lo bueno que era, o al menos a mi me lo pareció.

A mi lo que me extraña es que China no haya sacado, o si lo ha sacado aqui no se entera ni Dios, un sistema Operativo para hacer la competencia a los grandes basados en Linux... a mi personalmente Android me da un poco de full, eso de que sea virtualizado supongo que se come el telefono por la mitad, si no lo fuese supongo que el rendimiento comparado con el iPhone sería extremadamente superior...

Hark0

Quote from: mentalthink on 2013-Aug-18
Pues esto parece la batalla de los S.O de mobiles y teles, ahora Samnsung saca otro, meggo vuelve a la carga, sale el de Firefox, y para final de año salen los telefonos con Ubuntu, que a mi parcer va a estar realmente bien... Lo curioso como nadie compró el WebOS con lo bueno que era, o al menos a mi me lo pareció.

A mi lo que me extraña es que China no haya sacado, o si lo ha sacado aqui no se entera ni Dios, un sistema Operativo para hacer la competencia a los grandes basados en Linux... a mi personalmente Android me da un poco de full, eso de que sea virtualizado supongo que se come el telefono por la mitad, si no lo fuese supongo que el rendimiento comparado con el iPhone sería extremadamente superior...

China=copia, creo que Departamento de I+D como tal no saben ni que es...

@msx...  :D
http://litiopixel.blogspot.com
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica Development Indie Videogames · Pixel-Art · Retrocomputing · Electronic

hardyx

Quote from: msx on 2013-Aug-18
Gracias hardyx, he conseguido reducir de 80 segundos a 40 con shoebox, algo es algo aunque sigue siendo bastante.
Bien, ahora intenta agrupar las imágenes en archivos de tiles si es posible.

Otra cosa que creo es que en teléfonos con poca memoria como el Galaxy Mini o el Ace puede fallar la instalación en el proceso de copiar las imágenes si ya hay varias aplicaciones instaladas. Eso puede ser un problema.

Hark0

Como dice @Hardyx, creo que vas a tener que pasar de sprites a anims SI o SI...

Readaptar la rutina de graficos no deberia ser un problema... ;)
http://litiopixel.blogspot.com
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica Development Indie Videogames · Pixel-Art · Retrocomputing · Electronic

msx

No creo que eso solucione nada. Ahora el vez de 665 archivos tengo solo 1. Aunque lo agrupe en tiles seguiré teniendo 1 solo archivo, y el tamaño será más o menos el mismo. El problema es que tarda en copiar 7Mb quizás dependiendo del móvil tardará más o menos. La prueba la he hecho en una HP touchpad con android.

Hark0

#27
Quote from: msx on 2013-Aug-19
No creo que eso solucione nada. Ahora el vez de 665 archivos tengo solo 1. Aunque lo agrupe en tiles seguiré teniendo 1 solo archivo, y el tamaño será más o menos el mismo. El problema es que tarda en copiar 7Mb quizás dependiendo del móvil tardará más o menos. La prueba la he hecho en una HP touchpad con android.

No estoy del todo de acuerdo...

Ninguna máquina tarda lo mismo en copiar 1 fichero de 7mb, que 600 ficheros de X Kb....

Ahora bien, lo que dices acerca de la velocidad de copiado del dispositivo de turno me lo creo...

No todos los smarphones, son smarphones... me explico...

Hay máquinas con Androide, que si, se supone son smarphones... en la práctica... impracticables de usar... mi hija gastaba un Toshiba Android... que ni con pedales....

hmmmm

¿puedes poner una muestra de los gráficos?
¿has pensado en pasarlos a 256 colores en lugar de 16/24 bits?

¿Cuando se descarga una aplicación desde la Store no se instala del tirón?
http://litiopixel.blogspot.com
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica Development Indie Videogames · Pixel-Art · Retrocomputing · Electronic

hardyx

#28
Quote from: msx on 2013-Aug-19
No creo que eso solucione nada. Ahora el vez de 665 archivos tengo solo 1. Aunque lo agrupe en tiles seguiré teniendo 1 solo archivo, y el tamaño será más o menos el mismo. El problema es que tarda en copiar 7Mb quizás dependiendo del móvil tardará más o menos. La prueba la he hecho en una HP touchpad con android.

Bueno, 7 megas no es mucho para un juego. Si un móvil tarda mucho en copiarlos, es que es un móvil lento  =D, investiga para cambiar los puntitos de carga, tiene que estar en el código de SDLActivity.java. Aún así, shoebox no es la panacea, tienes un archivo, pero es un poquito más lento que usar archivos sueltos. La copia será más rápida, pero si cargas 50 gráficos en tu juego de un golpe, tendrás 50 accesos al disco con shoebox también.

Si organizas los gráficos por ficheros de tiles, en vez de 50 accesos al disco podrías tener dos o tres. Ganas en velocidad. También puedes optimizar los gráficos, recortando sólo la parte imprescindible sin bordes que no se usen, usando 16 bits de color en vez de 24 o 32, o usando PNG en vez de BMP, por ejemplo.

Hark0

Si pudieras bajar a png 256 colores, fijo que bajas de 7mb.

:good:
http://litiopixel.blogspot.com
litiopixel.blogspot.com - Desarrollo videojuegos Indie · Pixel-Art · Retroinformática · Electrónica Development Indie Videogames · Pixel-Art · Retrocomputing · Electronic