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

FreeBSD Manual Pages

  
 
  

home | help
al_build_c...a_transform(3) Library Functions Manual al_build_c...a_transform(3)

NAME
     al_build_camera_transform - Allegro 5 API

SYNOPSIS
	    #include <allegro5/allegro.h>

	    void al_build_camera_transform(ALLEGRO_TRANSFORM *trans,
	       float position_x, float position_y, float position_z,
	       float look_x, float look_y, float look_z,
	       float up_x, float up_y, float up_z)

DESCRIPTION
     Builds  a	transformation	which can be used to transform 3D coordinates in
     world space to camera space.  This involves  translation  and  a  rotation.
     The  function expects three coordinate triplets: The camera's position, the
     position the camera is looking at and an up vector.  The up vector does not
     need to be of unit length and also does not need to be perpendicular to the
     view direction - it can usually just be the world up direction  (most  com-
     monly 0/1/0).

     For example:

	    al_build_camera_transform(&t,
		1, 1, 1,
		5, 5, 5,
		0, 1, 0);

     This create a transformation for a camera standing at 1/1/1 and looking to-
     wards 5/5/5.

	    Note:  If  the position and look parameters are identical, or if the
	    up direction is parallel to the view direction, an	identity  matrix
	    is created.

     Another example which will simply re-create the identity matrix:

	    al_build_camera_transform(&t,
		0, 0, 0,
		0, 0, -1,
		0, 1, 0);

     An  example  where the up vector will cause the camera to lean (roll) by 45
     degrees:

	    al_build_camera_transform(&t,
		1, 1, 1,
		5, 5, 5,
		1, 1, 0);

     Since 5.1.9

SEE ALSO
     al_translate_transform_3d(3),  al_rotate_transform_3d(3),	 al_scale_trans-
     form_3d(3), al_compose_transform(3), al_use_transform(3)

Allegro reference manual			     al_build_c...a_transform(3)

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

home | help