Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Tekon en Septiembre 04, 2012, 11:59:52 PM

Título: Insertar gif como fondo
Publicado por: Tekon en Septiembre 04, 2012, 11:59:52 PM
Buenas, hoy vengo con una duda muy simple.
Hay alguna manera de poner un gif como background de tu juego?

He probado metiendo el gif como si fuera una imagen normal pero como me temía no se mueve, pero me parece bastante raro que no se puedan añadir imágenes en movimiento al fondo y por eso venia a que me resolvierais la duda.

La imagen concretamente es esta:
(http://www.ondaimagen.com/_media/7/2631279009059334569.gif)

Estoy haciendo un juego simple de platafortmas llamado "one minute to die" (inspirado en el juego You Have Only 30 Seconds, en cuento vi el tipo de juego me enamore y quise hacer uno parecido xD) solo k ambientado dentro de un PC, por eso quiero meter ese fondo. ^^
En cuento lo tenga mas avanzado hago un post e_e

Bueno, pues eso. Espero que podais resolver mi duda.
SalU2!
Título: Re:Insertar gif como fondo
Publicado por: Texic en Septiembre 05, 2012, 12:02:58 AM
Tenés dos opciones, creas tu propio sistema para cambiar el background en cada step al siguiente que corresponda, o te dejás de complicar la vida y lo cargás como sprite, se lo asignás a un objeto y le ponés depth -999999. Después es cuestión de dibujarlo con draw_sprite_tiled
Título: Re:Insertar gif como fondo
Publicado por: SobacoEnLlamas en Septiembre 05, 2012, 09:54:41 AM
nunca llegué a pensar que hubiese una limitación tan bestia de esa manera O_o, ok se puede hacer, pero anda que ya lo podrían poner en el mismo background normal, no solo scroll xd
Título: Re:Insertar gif como fondo
Publicado por: Tekon en Septiembre 05, 2012, 02:37:10 PM
Ok ahora lo pruebo ^^

Cita de: SobacoEnLlamas en Septiembre 05, 2012, 09:54:41 AM
nunca llegué a pensar que hubiese una limitación tan bestia de esa manera O_o, ok se puede hacer, pero anda que ya lo podrían poner en el mismo background normal, no solo scroll xd

Ya, es una cosa tonta pero que realmente es necesaria xD
Título: Re:Insertar gif como fondo
Publicado por: SobacoEnLlamas en Septiembre 05, 2012, 02:58:45 PM
por cierto tekon, si es esa la imagen, si pillas esa misma sin animar, encajaría como scroll creo eh...
Título: Re:Insertar gif como fondo
Publicado por: elviskelley en Septiembre 05, 2012, 03:09:36 PM
Los backgrounds con movimiento se hace con arrays de la siguiente manera
Event create de algun object supongamos objBackCambio
alarm[0]=0.1*room_speed;
i=0;
//cadena de arrays con sub imagenes del fondo
bkc[0]=bk_1;
bkc[1]=bk_2;
bkc[2]=bk_3;
bkc[3]=bk_4;
bkc[4]=bk_5;
//son tantos arrays como subimagenes tenga el gif, y lo subes en Bacground pero cada subimagen por separado.
//bk_# es el nombre de cada subimagen subida como backgound que lo coloque asi por comodidad.

Event alarm 0
alarm[0]=0.1*room_speed; //reinicia la alarm
if i <4 then {i+=1;}else{i=0;} //Suma 1 y examina si llego al maximo de array y reinicia el indice osea "i"
background_index[0]=bkc[ i ] ;  //cambia la subimagen del fondo.

De todas maneras de tejo adjunto el editable.
Título: Re:Insertar gif como fondo
Publicado por: SobacoEnLlamas en Septiembre 05, 2012, 11:39:15 PM
ostiii no lo había pensado, claro separar los frames te refieres elvis???
Título: Re:Insertar gif como fondo
Publicado por: Texic en Septiembre 06, 2012, 01:23:20 AM
Es lo mismo que puse en la primera oración del mensaje de arriba (de hecho hay mil sistemas que se pueden inventar, con listas, con un recorrido por step de los frames, etc etc etc)
Título: Re:Insertar gif como fondo
Publicado por: SobacoEnLlamas en Septiembre 06, 2012, 02:01:21 PM
pero una preguntita, eso no causaría mucho lag? sobretodo si cambia constante mente con loop y todo? ://
Título: Re:Insertar gif como fondo
Publicado por: Texic en Septiembre 06, 2012, 05:07:26 PM
Es simple cuestión de guardar el valor máximo, y un contador, si el contador supera el valor máximo reiniciar el contador. Así que no, no consumiría casi nada. Aunque sigo recomendando un objeto que dibuje una sprite en un depth profundo