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

FreeBSD Manual Pages

  
 
  

home | help
al_orthogr...c_transform(3) Library Functions Manual al_orthogr...c_transform(3)

NAME
     al_orthographic_transform - Allegro 5 API

SYNOPSIS
	    #include <allegro5/allegro.h>

	    void al_orthographic_transform(ALLEGRO_TRANSFORM *trans,
	       float left, float top, float n,
	       float right, float bottom, float f)

DESCRIPTION
     Combines the given transformation with an orthographic transformation which
     maps  the	screen	rectangle to the given left/top and right/bottom coordi-
     nates.

     near/far is the z	range,	coordinates  outside  of  that	range  will  get
     clipped.  Normally -1/1 is fine because all 2D graphics will have a z coor-
     dinate  of  0.   However if you for example do al_draw_rectangle(0, 0, 100,
     100) and rotate around the x axis ("towards the screen") make sure  your  z
     range  allows  values  from  -100	to 100 or the rotated rectangle will get
     clipped.

     Also, if you are using a depth buffer the z range decides the depth resolu-
     tion.  For example if you have a 16 bit depth buffer there are  only  65536
     discrete depth values.  So if your near/far is set to -1000000/1000000 most
     of  the  z  positions would not result in separate depth values which could
     lead to artifacts.

     The result of applying this transformation to coordinates will be	to  nor-
     malize  visible  coordinates  into the cube from -1/-1/-1 to 1/1/1.  Such a
     transformation is mostly useful for passing it to	al_use_projection_trans-
     form(3) - see that function for an example use.

SINCE
     5.1.3

SEE ALSO
     al_use_projection_transform(3), al_perspective_transform(3)

Allegro reference manual			     al_orthogr...c_transform(3)

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

home | help