1al_use_projection_transform(3)                  al_use_projection_transform(3)
2
3
4

NAME

6       al_use_projection_transform - Allegro 5 API
7

SYNOPSIS

9              #include <allegro5/allegro.h>
10
11              void al_use_projection_transform(const ALLEGRO_TRANSFORM *trans)
12

DESCRIPTION

14       Sets  the  projection  transformation to be used for the drawing opera‐
15       tions on the target bitmap (each bitmap maintains  its  own  projection
16       transformation).   Every  drawing  operation  after  this  call will be
17       transformed using this transformation.   To  return  default  behavior,
18       call this function with an orthographic transform like so:
19
20              ALLEGRO_TRANSFORM trans;
21              al_identity_transform(&trans);
22              al_orthographic_transform(&trans, 0, 0, -1.0, al_get_bitmap_width(bitmap),
23                                        al_get_bitmap_height(bitmap), 1.0);
24
25              al_set_target_bitmap(bitmap);
26              al_use_projection_transform(&trans);
27
28       The  orthographic transformation above is the default projection trans‐
29       form.
30
31       This function does nothing if there is no target bitmap.  This function
32       also does nothing if the bitmap is a memory bitmap (i.e. memory bitmaps
33       always use an orthographic transform like  the  snippet  above).   Note
34       that  the projection transform will be reset to default if a video bit‐
35       map is converted to a memory bitmap.  Additionally, if  the  bitmap  in
36       question  is the backbuffer, it’s projection transformation will be re‐
37       set to default if it is resized.  Lastly, when you draw a memory bitmap
38       to  a video bitmap with a custom projection transform, this transforma‐
39       tion will be ignored (i.e. it’ll be as if the projection  transform  of
40       the target bitmap was temporarily reset to default).
41
42       The  parameter  is  passed by reference as an optimization to avoid the
43       overhead of stack copying.  The reference will not be stored in the Al‐
44       legro library so it is safe to pass references to local variables.
45

SINCE

47       5.1.9
48

SEE ALSO

50       al_get_current_projection_transform(3),    al_perspective_transform(3),
51       al_orthographic_transform(3)
52
53
54
55Allegro reference manual                        al_use_projection_transform(3)
Impressum