diff --git a/clutter/cogl/cogl/cogl.c b/clutter/cogl/cogl/cogl.c index 106c229c9..9632ce529 100644 --- a/clutter/cogl/cogl/cogl.c +++ b/clutter/cogl/cogl/cogl.c @@ -937,6 +937,14 @@ cogl_rotate (float angle, float x, float y, float z) _cogl_matrix_stack_rotate (modelview_stack, angle, x, y, z); } +void +cogl_multiply_matrix (const CoglMatrix *matrix) +{ + CoglMatrixStack *modelview_stack = + _cogl_framebuffer_get_modelview_stack (_cogl_get_framebuffer ()); + _cogl_matrix_stack_multiply (modelview_stack, matrix); +} + void cogl_perspective (float fov_y, float aspect, diff --git a/clutter/cogl/cogl/cogl.h b/clutter/cogl/cogl/cogl.h index 53ddec2de..b2e244736 100644 --- a/clutter/cogl/cogl/cogl.h +++ b/clutter/cogl/cogl/cogl.h @@ -347,6 +347,17 @@ cogl_rotate (float angle, float y, float z); +/** + * cogl_multiply_matrix: + * @matrix: the matrix to multiply with the current model-view + * + * Multiplies the current model-view matrix by the given matrix. + * + * Since: 1.4 + */ +void +cogl_multiply_matrix (const CoglMatrix *matrix); + /** * cogl_get_modelview_matrix: * @matrix: (out): return location for the model-view matrix