GML Functions: The Display

The display represents the whole area on the monitor. It has a size (typically 1024x768, or 1280x1024), a color depth, that is, the number of bits that are used to represent a single pixel (typically 16 = High Color or 32 = Full Color) and a refresh frequency, that is, the number of times per second the display is refreshed (typically between 60 and 120).

These settings can normally be changed though the display properties. For games though, in particular when they run in full-screen mode, it is important to be able to change these settings. All these settings can be initialized for the game in the Game Settings. For use during game play the following functions exist. Note though that changing the settings during game play will result in a time delay as things has to be rebuilt. The functions to set the mode are only available in the Pro Edition.


 * display_get_width Returns the width of the display in pixels.
 * display_get_height Returns the height of the display in pixels.
 * display_get_colordepth Returns the color depth in bits.
 * display_get_frequency Returns the refresh frequency of the display.
 * display_set_size(w,h) Sets the width and height of the display in pixels. Returns whether this was successful. (Realize that only certain combinations are allowed.)
 * display_set_colordepth(coldepth) Sets the color depth. In general only 16 and 32 are allowed values. Returns whether successful.
 * display_set_frequency(frequency) Sets the refresh frequency for the display. Only few frequencies are allowed. Typically you could set this to 60 with a same room speed to get smooth 60 frames per second motion. Returns whether successful.
 * display_set_all(w,h,frequency,coldepth) Sets all at once. Use -1 for values you do not want to change. Returns whether successful.
 * display_test_all(w,h,frequency,coldepth) Tests whether the indicated settings are allowed. It does not change the settings. Use -1 for values you do not want to change. Returns whether the settings are allowed.
 * display_reset Resets the display settings to the ones when the program was started.

Sometimes it is useful to get information about the position of the mouse on the display or to change this position. For this the following functions exist:


 * display_mouse_get_x Returns the x-coordinate of the mouse on the display.
 * display_mouse_get_y Returns the y-coordinate of the mouse on the display.
 * display_mouse_set(x,y) Sets the position of the mouse on the display to the indicated values.