Buenas!
Veréis, estoy haciendo un juego con aspecto "profesional". A 1080p, usando DragonBones, Photoshop, etc.
Total... la cosa pinta bien, pero ha llegado un punto en el que al entrar en un room... los primeros 5-10 segundos todo va relentizado.
En principio no hay problema con eso, me parece lo normal, pero ahora toca hacer un poco de "magia" para el público, y esconder el contenido del room hasta que todo vaya fluido con una pantalla de carga.
No tengo ni idea de como hacer una... Quizás consiga facilmente poner una con un temporizador del tiempo que "creo" que será necesario y listo; Pero eso me parece "un parche" poco fiable, porque según el hardware en el que se esté ejecutando, ese tiempo aumentará o disminuirá.
Entonces mi pregunta es, si alguien sabría hacer que la pantalla de carga desaparezca cuando el room contenga todos los objetos requeridos, o mejor aún... cuando la room consiga llegar a 30fps (que es la velocidad a la que tengo el proyecto)
Un saludo
basicamente tienes que hacer que el jugador pueda jugar cuando se carguen tus recursos, hay varias maneras que se me vienen a la mente:
1.- hay alguna manera de cargar recursos externos en GMS, en tu objecto que cargara los recursos pon algunos valores y muestra estos valores en el evento draw para saber si ya se cargo al 100%, por ejemplo:
val = 0;
cargar_imagenes();
val = 20;
cargar_sonidos();
val =30;
cargar_otros();
val =100;
EV. DRAW:
mostrar " cargando "+string( val )+" / 100"
puedes hacer una barra o un circulo, lo importante es el valor que se encrementa cuando se carguen los recursos.
2.- puedes crear un objeto que se espere aproximadamente unos segundos hasta cuando tu consideres que tu juego ya tiene todos los recursos necesarios cargados, este simplemente hara esperar al usuario unos segundos aparentando que realmente se esta cargando algo en el juego
se puede hacer con una alarma, dibujar en pantalla un circulo rotando indicando proceso, al terminar la alarma, ese objeto de destruye y puedes seguir con tu juego