1al_build_camera_transform(3)                      al_build_camera_transform(3)
2
3
4

NAME

6       al_build_camera_transform - Allegro 5 API
7

SYNOPSIS

9              #include <allegro5/allegro.h>
10
11              void al_build_camera_transform(ALLEGRO_TRANSFORM *trans,
12                 float position_x, float position_y, float position_z,
13                 float look_x, float look_y, float look_z,
14                 float up_x, float up_y, float up_z)
15

DESCRIPTION

17       Builds  a  transformation which can be used to transform 3D coordinates
18       in world space to camera space.  This involves translation and a  rota‐
19       tion.  The function expects three coordinate triplets: The camera’s po‐
20       sition, the position the camera is looking at and an up vector.  The up
21       vector  does not need to be of unit length and also does not need to be
22       perpendicular to the view direction - it can usually just be the  world
23       up direction (most commonly 0/1/0).
24
25       For example:
26
27              al_build_camera_transform(&t,
28                  1, 1, 1,
29                  5, 5, 5,
30                  0, 1, 0);
31
32       This create a transformation for a camera standing at 1/1/1 and looking
33       towards 5/5/5.
34
35              Note: If the position and look parameters are identical,  or  if
36              the  up direction is parallel to the view direction, an identity
37              matrix is created.
38
39       Another example which will simply re-create the identity matrix:
40
41              al_build_camera_transform(&t,
42                  0, 0, 0,
43                  0, 0, -1,
44                  0, 1, 0);
45
46       An example where the up vector will cause the camera to lean (roll)  by
47       45 degrees:
48
49              al_build_camera_transform(&t,
50                  1, 1, 1,
51                  5, 5, 5,
52                  1, 1, 0);
53
54       Since 5.1.9
55

SEE ALSO

57       al_translate_transform_3d(3),                al_rotate_transform_3d(3),
58       al_scale_transform_3d(3), al_compose_transform(3), al_use_transform(3)
59
60
61
62Allegro reference manual                          al_build_camera_transform(3)
Impressum