# al_compose_transform

void al_compose_transform(ALLEGRO_TRANSFORM *trans, const ALLEGRO_TRANSFORM *other)

Introduced in **5.0.0**

Compose (combine) two transformations by a matrix multiplication.

`trans := trans other`

Note that the order of matrix multiplications is important. The effect of applying the combined transform will be as if first applying `trans`

and then applying `other`

and not the other way around.

*Parameters:*

- trans - Transformation to alter
- other - Transformation used to transform
`trans`

*Most helpful discussions:*

- [A5] Trying to understand projection transformations
- [A5] Trying to understand transformations
- Transformations in allegro
- Is composing horz + vert shear the same thing as shearing both?
- Pushing allegro performance (sprites per second) to its limits
- [A5] al_draw_bitmap() vs al_draw_rotated_bitmap()
- Allegro Fonts in 3D space and with a custom frustum
- fastest way to plot pixels A5
- [5.0rc2] OpenGL/Deferred drawing CPU use