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

FreeBSD Manual Pages

  
 
  

home | help
get_camera_matrix(3)		Allegro	manual		  get_camera_matrix(3)

NAME
       get_camera_matrix  - Constructs a camera	matrix for perspective projec-
       tion. Allegro game programming library.

SYNOPSIS
       #include	<allegro.h>

       void get_camera_matrix(MATRIX  *m,  fixed  x,  y,  z,  xfront,  yfront,
       zfront, fixed xup, yup, zup, fov, aspect);

DESCRIPTION
       Constructs  a  camera matrix for	translating world-space	objects	into a
       normalised view space, ready for	the perspective	projection. The	x,  y,
       and  z  parameters  specify  the	 camera	 position, xfront, yfront, and
       zfront are the 'in front' vector	specifying which  way  the  camera  is
       facing  (this  can  be  any length: normalisation is not	required), and
       xup, yup, and zup are the 'up' direction	vector.

       The fov parameter specifies the field of	view (ie. width	of the	camera
       focus) in binary, 256 degrees to	the circle format. For typical projec-
       tions,  a field of view in the region 32-48 will	work well. 64 (90) ap-
       plies no	extra scaling -	so something which is one unit away  from  the
       viewer  will be directly	scaled to the viewport.	A bigger FOV moves you
       closer to the viewing plane, so more objects will appear. A smaller FOV
       moves you away from the viewing plane, which means you  see  a  smaller
       part of the world.

       Finally,	 the aspect ratio is used to scale the Y dimensions of the im-
       age relative to the X axis, so you can use it to	adjust the proportions
       of the output image (set	it to 1	for no scaling - but keep in mind that
       the projection also performs scaling according to the  viewport	size).
       Typically, you will pass	(float)w/(float)h, where w and h are the para-
       meters you passed to set_projection_viewport.

       Note that versions prior	to 4.1.0 multiplied this aspect	ratio by 4/3.

SEE ALSO
       apply_matrix(3),	   get_align_matrix(3),	   set_projection_viewport(3),
       persp_project(3)

Allegro				 version 4.4.3		  get_camera_matrix(3)

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

home | help