Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
al_set_ne...lay_option(3)  Library Functions Manual  al_set_ne...lay_option(3)

NAME
       al_set_new_display_option - Allegro 5 API

SYNOPSIS
	      #include <allegro5/allegro.h>

	      void al_set_new_display_option(int option, int value, int	importance)

DESCRIPTION
       Set  an	extra display option, to be used when creating new displays on
       the calling thread.  Display options differ  from  display  flags,  and
       specify some details of the context to be created within	the window it-
       self.   These mainly have no effect on Allegro itself, but you may want
       to specify them,	for example if you want	to use multisampling.

       The `importance'	parameter can be either:

        ALLEGRO_REQUIRE - The display will not	be created if the setting  can
	 not be	met.

        ALLEGRO_SUGGEST  -  If	the setting is not available, the display will
	 be created anyway with	a setting as close  as	possible  to  the  re-
	 quested  one.	 You  can  query the actual value used in that case by
	 calling al_get_display_option(3) after	the display has	been created.

        ALLEGRO_DONTCARE - If you added a display  option  with  one  of  the
	 above	two settings before, it	will be	removed	again.	Else this does
	 nothing.

       The supported options are:

       ALLEGRO_COLOR_SIZE
	      This can be used to ask for a specific bit depth.	  For  example
	      to force a 16-bit	framebuffer set	this to	16.

       ALLEGRO_RED_SIZE, ALLEGRO_GREEN_SIZE, ALLEGRO_BLUE_SIZE,	ALLEGRO_AL-
       PHA_SIZE
	      Individual color component size in bits.

       ALLEGRO_RED_SHIFT, ALLEGRO_GREEN_SHIFT, ALLEGRO_BLUE_SHIFT, ALLEGRO_AL-
       PHA_SHIFT
	      Together with the	previous settings these	can be used to specify
	      the  exact  pixel	layout the display should use.	Normally there
	      is no reason to use these.

       ALLEGRO_ACC_RED_SIZE, ALLEGRO_ACC_GREEN_SIZE, ALLEGRO_ACC_BLUE_SIZE,
       ALLEGRO_ACC_ALPHA_SIZE
	      This can be used to  define  the	required  accumulation	buffer
	      size.

       ALLEGRO_STEREO
	      Whether the display is a stereo display.

       ALLEGRO_AUX_BUFFERS
	      Number of	auxiliary buffers the display should have.

       ALLEGRO_DEPTH_SIZE
	      How many depth buffer (z-buffer) bits to use.

       ALLEGRO_STENCIL_SIZE
	      How many bits to use for the stencil buffer.

       ALLEGRO_SAMPLE_BUFFERS
	      Whether to use multisampling (1) or not (0).

       ALLEGRO_SAMPLES
	      If the above is 1, the number of samples to use per pixel.  Else
	      0.

       ALLEGRO_RENDER_METHOD:
	      0	if hardware acceleration is not	used with this display.

       ALLEGRO_FLOAT_COLOR
	      Whether to use floating point color components.

       ALLEGRO_FLOAT_DEPTH
	      Whether to use a floating	point depth buffer.

       ALLEGRO_SINGLE_BUFFER
	      Whether  the  display uses a single buffer (1) or	another	update
	      method (0).

       ALLEGRO_SWAP_METHOD
	      If the above is 0, this is set to	1 to indicate the  display  is
	      using a copying method to	make the next buffer in	the flip chain
	      available, or to 2 to indicate a flipping	or other method.

       ALLEGRO_COMPATIBLE_DISPLAY
	      Indicates	 if Allegro's graphics functions can use this display.
	      If you request a display not useable by Allegro, you  can	 still
	      use for example OpenGL to	draw graphics.

       ALLEGRO_UPDATE_DISPLAY_REGION
	      Set  to  1  if the display is capable of updating	just a region,
	      and 0 if calling al_update_display_region(3)  is	equivalent  to
	      al_flip_display(3).

       ALLEGRO_VSYNC
	      Set  to  1  to tell the driver to	wait for vsync in al_flip_dis-
	      play(3), or to 2 to force	vsync off.  The	 default  of  0	 means
	      that Allegro does	not try	to modify the vsync behavior so	it may
	      be on or off.  Note that even in the case	of 1 or	2 it is	possi-
	      ble to override the vsync	behavior in the	graphics driver	so you
	      should not rely on it.

       ALLEGRO_MAX_BITMAP_SIZE
	      When  queried  this  returns  the	maximum	size (width as well as
	      height) a	bitmap can have	for this display.   Calls  to  al_cre-
	      ate_bitmap(3)  or	al_load_bitmap(3) for bitmaps larger than this
	      size will	fail.  It does not apply to memory bitmaps  which  al-
	      ways can have arbitrary size (but	are slow for drawing).

       ALLEGRO_SUPPORT_NPOT_BITMAP
	      Set to 1 if textures used	for bitmaps on this display can	have a
	      size  which is not a power of two.  This is mostly useful	if you
	      use Allegro to load textures as otherwise	only power-of-two tex-
	      tures will be used internally as bitmap storage.

       ALLEGRO_CAN_DRAW_INTO_BITMAP
	      Set to 1 if you can use al_set_target_bitmap(3)  on  bitmaps  of
	      this  display  to	draw into them.	 If this is not	the case soft-
	      ware emulation will be used when drawing	into  display  bitmaps
	      (which can be very slow).

       ALLEGRO_SUPPORT_SEPARATE_ALPHA
	      This  is	set to 1 if the	al_set_separate_blender(3) function is
	      supported.  Otherwise the	alpha parameters will be ignored.

       ALLEGRO_AUTO_CONVERT_BITMAPS
	      This is on by default.  It causes	any  existing  memory  bitmaps
	      with  the	 ALLEGRO_CONVERT_BITMAP	flag to	be converted to	a dis-
	      play bitmap of the newly created display with the	option set.

	      Since: 5.1.0

       ALLEGRO_SUPPORTED_ORIENTATIONS
	      This is a	bit-combination	of the orientations supported  by  the
	      application.   The  orientations are the same as for al_get_dis-
	      play_orientation(3) with the additional possibilities:

	      	ALLEGRO_DISPLAY_ORIENTATION_PORTRAIT

	      	ALLEGRO_DISPLAY_ORIENTATION_LANDSCAPE

	      	ALLEGRO_DISPLAY_ORIENTATION_ALL

	      PORTRAIT means only the two portrait orientations	are supported,
	      LANDSCAPE	means only the two landscape orientations and ALL  al-
	      lows  all	 four  orientations.  When the orientation changes be-
	      tween a portrait and a landscape orientation the	display	 needs
	      to  be  resized.	 This is done by sending an ALLEGRO_EVENT_DIS-
	      PLAY_RESIZE(3) message which should be handled by	calling	al_ac-
	      knowledge_resize(3).

	      Since: 5.1.0

       ALLEGRO_OPENGL_MAJOR_VERSION
	      Request a	specific OpenGL	major version.

	      Since: 5.1.13

       ALLEGRO_OPENGL_MINOR_VERSION
	      Request a	specific OpenGL	minor version.

	      Since: 5.1.13

SEE ALSO
       al_set_new_display_flags(3), al_get_display_option(3)

Allegro	reference manual			     al_set_ne...lay_option(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=al_set_new_display_option&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help