Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: rogerskate en Julio 31, 2017, 01:17:50 AM

Título: Error con view mayor que el room
Publicado por: rogerskate en Julio 31, 2017, 01:17:50 AM
Buenas a toda la comunidad! Esta vez se me presenta un bug que primera vez veo. Se trata de que tengo una room de 96x96 y una view de 160x128, al ejecutar el room sale a un lado de la ventana dejando un espacio en negro en el lateral izquierdo y superior. El punto es que quiero que esos espacios estén distribuidos al rededor del room y no solo en esas posiciones. ¿Alguien me puede ayudar?
Título: Re:Error con view mayor que el room
Publicado por: bygdle en Julio 31, 2017, 01:38:50 AM
No es posible distribuir igualmente los márgenes en los cuatro laterales sin dañar la razón de la sala o la vista, pues estas dos no son proporcionales.
PD: Sólo por curiosidad, ¿cuál es el fin de una vista mayor a la sala?
Título: Re:Error con ventana* mayor que el room
Publicado por: rogerskate en Julio 31, 2017, 04:30:55 AM
Bueno ahora que veo si no tiene nada que ver las view xD el problema es el room y la ventana, la ventana es de 640x480 y el room de 96x96. ¿Como podría ajustar el room al centro?
Título: Re:Error con view mayor que el room
Publicado por: Zapdos43 en Julio 31, 2017, 11:07:26 AM
No sé que fin puede tener una room más pequeña que la view pero he probado el siguiente código y me ha funcionado en GM Studio :

Lo primero es entrar en las propiedades de la room:
Ancho de room = 96
Alto de room = 96

En la Pestaña Views:
Apartado View in room:
W=96;
H=96

Apartado Port on screen:
W=640
H=480

Luego creas un objeto que controlará la vista:

CREATE:
dw = view_wport[0]; // ancho de viewport
dh = view_hport[0]; // alto de viewport

ww = room_width; // ancho de la room
hh = room_height; // alto de la room

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

POST DRAW:
draw_surface(application_surface,floor(dw/2-ww/2),floor(dh/2-hh/2)); // dibujar la room en el centro