Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: desplo en Julio 16, 2017, 10:29:37 PM

Título: Cambiar tamaño de la room en pantalla completa?
Publicado por: desplo en Julio 16, 2017, 10:29:37 PM
Estuve investigando un poco sobre como hacerlo y he visto que utilizan surface_resize pero aun no entiendo muy bien como hacerlo
Título: Re:Cambiar tamaño de la room en pantalla completa?
Publicado por: Zapdos43 en Julio 17, 2017, 01:33:42 AM
He encontrado un código que puede te sirva. Está sacado del siguiente tema resuelto del foro yoyogames: https://forum.yoyogames.com/index.php?threads/application-surface-fullscreen-windowed-fixed-scale.942/ (https://forum.yoyogames.com/index.php?threads/application-surface-fullscreen-windowed-fixed-scale.942/)

En resumen, el objeto que controla el tamaño de la room cuando hay pantalla completa debe tener:
Evento create:
dw = display_get_width(); // ancho de pantalla de monitor, movil...
dh = display_get_height(); // alto de pantalla de monitor, movil...
ww = 1280; // ancho de la room
hh = 600; // alto de la room

application_surface_draw_enable(false);
surface_resize(application_surface,ww,hh);

Evento Post Draw:
if window_get_fullscreen() // si el juego corre en pantalla completa
{
    draw_surface(application_surface,floor(dw/2-ww/2),floor(dh/2-hh/2)); // dibujar la room en el centro
} else {
    draw_surface(application_surface,0,0);
}

;)
Título: Re:Cambiar tamaño de la room en pantalla completa?
Publicado por: desplo en Julio 17, 2017, 03:17:46 AM
Cita de: Zapdos43 en Julio 17, 2017, 01:33:42 AM
He encontrado un código que puede te sirva. Está sacado del siguiente tema resuelto del foro yoyogames: https://forum.yoyogames.com/index.php?threads/application-surface-fullscreen-windowed-fixed-scale.942/ (https://forum.yoyogames.com/index.php?threads/application-surface-fullscreen-windowed-fixed-scale.942/)

En resumen, el objeto que controla el tamaño de la room cuando hay pantalla completa debe tener:
Evento create:
dw = display_get_width(); // ancho de pantalla de monitor, movil...
dh = display_get_height(); // alto de pantalla de monitor, movil...
ww = 1280; // ancho de la room
hh = 600; // alto de la room

application_surface_draw_enable(false);
surface_resize(application_surface,ww,hh);

Evento Post Draw:
if window_get_fullscreen() // si el juego corre en pantalla completa
{
    draw_surface(application_surface,floor(dw/2-ww/2),floor(dh/2-hh/2)); // dibujar la room en el centro
} else {
    draw_surface(application_surface,0,0);
}

;)

Gracias por tu ayuda, me ayudaste bastante  ;D

Solo tengo una pregunta mas.

Entonces solamente se cambia el tamaño de la surface?
El tamaño de la room se deja como está? Ya que no veo ningún room_width o room_height.
Título: Re:Cambiar tamaño de la room en pantalla completa?
Publicado por: 3dgeminis en Julio 17, 2017, 06:03:40 AM
Por curiosidad, porque quieres cambia el tamaño del room durante el juego?
Título: Re:Cambiar tamaño de la room en pantalla completa?
Publicado por: desplo en Julio 17, 2017, 06:45:58 AM
Cita de: 3dgeminis en Julio 17, 2017, 06:03:40 AM
Por curiosidad, porque quieres cambia el tamaño del room durante el juego?

No, mi idea es ajustar el juego según la pantalla cuando se inicia
Título: Re:Cambiar tamaño de la room en pantalla completa?
Publicado por: Zapdos43 en Julio 17, 2017, 12:11:05 PM
¿Quieres que aparezcan las bandas negras o necesitas estirar la vista de la room hasta ocupar toda la pantalla?