Cómo ocultar el buzón de gamemaker: estudio

Video: Functions - GameMaker: Studio - Path Functions

La opción Mantener relación de aspecto en GameMaker: ventana Configuración Global Game Studio es una solución rápida fantástica para dispositivos móviles o juegos de escritorio de pantalla completa. Sin embargo, si usted tiene el efecto de buzón, los elementos de la GUI se dibujará sobre ellos debido a que tomen todas sus posiciones de coordenadas de la posición (0,0) de la pantalla.

Video: Game Maker Studio: Checkpoints Tutorial [Platformer]

Aquí es donde el application_get_position () función entra en juego. Esta función devuelve una matriz de valores que indican donde en la pantalla de la superficie de aplicación se está elaborando de forma predeterminada. Puede utilizar estos valores para definir una posición relativa en la capa de interfaz gráfica de usuario, sin importar el tamaño de la interfaz gráfica de usuario.

Los siguientes usos de procedimientos The_Application_Surface_Scaling tutorial.

  1. obj_Control abierta desde el árbol de recursos.

  2. Elija Añadir eventos → → Draw Draw interfaz gráfica de usuario.

    El sorteo GUI evento aparece en la sección de Eventos.

  3. Desde el control de ficha, arrastrar y soltar una acción Ejecutar Código en la sección Acciones.

    Video: Data Structures DS_Grid | Game Maker Studio

    Aparece la ventana de código.

  4. En la ventana de código, escriba lo siguiente:

    draw_set_color (c_white) pos -VAR = application_get_position () - si pos [0] gt; 0 {tasa de var = window_get_width () / window_get_height () - display_set_gui_size ((view_hview [0] * 1,5) * ratio, (view_hview [0] * 1,5)) -} else {var ratio = window_get_height () / window_get_width () display_set_gui_size ((view_wview * 1,5), (view_wview [0] * 1,5) * ratio) -} var gui_w = display_get_gui_width () - var gui_h = display_get_gui_height () - interruptor (tipo_sistema_operativo) {case os_windows: caso os_macosx: caso os_linux: os_win8native caso : var win_w = window_get_width () - var win_h = window_get_height () - romper-caso os_android: os_ios: estuche os_winphone: caso os_tizen: var win_w = display_get_width () - var win_h = display_get_height () - Break}

    Este código configura las variables apropiadas basadas en el tipo de dispositivo, y también fija la capa de interfaz gráfica de usuario para estar siempre 1,5 veces el tamaño de la vista. (Tenga en cuenta que normalmente tendría un cheque por aquí para ver si la pantalla ha cambiado y sólo establecer la capa GUI si tiene, pero para este tutorial que no es necesario.)

    var x1 = (pos [0] / win_w) * gui_w-var x2 = (pos [2] / win_w) * gui_w-var Y1 = (pos [1] / win_h) * gui_h-var y2 = (pos [3] / win_h) * gui_h-si pos [0] gt; 0 {draw_rectangle (0, 0, x1, gui_h, falsa) -draw_rectangle (x2, 0, gui_w, gui_h, false) -} else {draw_rectangle (0, 0, gui_w, y1, falsa) -draw_rectangle (0, y2, gui_w, gui_h, false) -}

    Este código dibuja rectángulos blancos para cubrir el buzón.

  5. Haga clic en la marca de verificación verde para guardar y cerrar la ventana de código.

Si el resultado es el juego ahora, debería ver rectángulos blancos, ya sea en la parte superior e inferior, o en la izquierda y la derecha, dependiendo de cómo cambia el tamaño de la ventana (ver esta figura). También puede cambiar la configuración global del juego con el paisaje y el retrato para ver cómo afecta a su juego.

Los rectángulos blancos aparecen sobre el efecto de buzón.

Los rectángulos blancos aparecen sobre el efecto de buzón.

Lo más probable es todavía ver algunas de las barras negras de los efectos de buzón. Esto demuestra que los rectángulos blancos no sustituir el buzón efecto- que sólo trataron de encubrirlos. Ahora, le toca a usted para volver atrás y poner a punto el código para referirse, por ejemplo, 2 veces el área en lugar de 1,5 veces el área, para ver lo que hace una diferencia.

Usted no tiene que usar blanco rectangles- se puede utilizar cualquier color o incluso una Sprite.

Artículos Relacionados