mutter/cogl
Robert Bragg d153316045 [matrix-stack] avoid redundant clearing of matrix when using load_identity
The journal always uses an identity matrix since it uses software
transformation.  Currently it manually uses glLoadMatrix since previous
experimentation showed that the cogl-matrix-stack gave bad performance, but
it would be nice to fix performance so we only have to care about one path
for loading matrices.

For the common case where we do:
cogl_matrix_stack_push()
cogl_matrix_stack_load_identity()
we were effectively initializing the matrix 3 times. Once due to use of
g_slice_new0, then we had a cogl_matrix_init_identity in
_cogl_matrix_state_new for good measure, and then finally in
cogl_matrix_stack_load_identity we did another cogl_matrix_init_identity.

We don't use g_slice_new0 anymore, _cogl_matrix_state_new is documented as
not initializing the matrix (instead _cogl_matrix_stack_top_mutable now
takes a boolean to choose if new stack entries should be initialised) and so
we now only initialize once in cogl_matrix_stack_load_identity.
2009-10-20 12:32:49 +01:00
..
driver [cogl-texture] Split CoglTexture into an abstract class + CoglTexture2dSliced 2009-10-16 18:58:51 +01:00
winsys Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-bitmap-fallback.c Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-bitmap-pixbuf.c Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-bitmap-private.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-bitmap.c Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-bitmap.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-blend-string.c Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-blend-string.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-clip-stack.c Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-clip-stack.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-color.c Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-color.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-context.c [current-matrix] Adds texture matrix stacks + removes GL matrix API usage 2009-10-20 12:32:45 +01:00
cogl-context.h [current-matrix] Adds texture matrix stacks + removes GL matrix API usage 2009-10-20 12:32:45 +01:00
cogl-current-matrix.c [current-matrix] Adds texture matrix stacks + removes GL matrix API usage 2009-10-20 12:32:45 +01:00
cogl-current-matrix.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-debug.c Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-debug.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-deprecated.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-enum-types.c.in Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-enum-types.h.in Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-fixed.c Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-fixed.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-handle.h [cogl-texture] Split CoglTexture into an abstract class + CoglTexture2dSliced 2009-10-16 18:58:51 +01:00
cogl-internal.h [current-matrix] Adds texture matrix stacks + removes GL matrix API usage 2009-10-20 12:32:45 +01:00
cogl-journal-private.h [cogl-primitives] Split the journal out from cogl-primitives.c 2009-10-16 18:58:52 +01:00
cogl-journal.c [current-matrix] Adds texture matrix stacks + removes GL matrix API usage 2009-10-20 12:32:45 +01:00
cogl-material-private.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-material.c [current-matrix] Adds texture matrix stacks + removes GL matrix API usage 2009-10-20 12:32:45 +01:00
cogl-material.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-matrix-stack.c [matrix-stack] avoid redundant clearing of matrix when using load_identity 2009-10-20 12:32:49 +01:00
cogl-matrix-stack.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-matrix.c Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-matrix.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-offscreen.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-path.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-primitives.c [cogl-primitives] Split the journal out from cogl-primitives.c 2009-10-16 18:58:52 +01:00
cogl-primitives.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-shader.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-spans.c [cogl-spans] split out cogl-spans code from cogl-texture-2d-sliced 2009-10-16 18:58:52 +01:00
cogl-spans.h [cogl-spans] split out cogl-spans code from cogl-texture-2d-sliced 2009-10-16 18:58:52 +01:00
cogl-texture-2d-sliced-private.h [cogl-spans] split out cogl-spans code from cogl-texture-2d-sliced 2009-10-16 18:58:52 +01:00
cogl-texture-2d-sliced.c [cogl-spans] split out cogl-spans code from cogl-texture-2d-sliced 2009-10-16 18:58:52 +01:00
cogl-texture-driver.h [cogl-texture] Split CoglTexture into an abstract class + CoglTexture2dSliced 2009-10-16 18:58:51 +01:00
cogl-texture-private.h [cogl-primitives] Split the journal out from cogl-primitives.c 2009-10-16 18:58:52 +01:00
cogl-texture.c [cogl-texture] Split CoglTexture into an abstract class + CoglTexture2dSliced 2009-10-16 18:58:51 +01:00
cogl-texture.h [docs] switch gl_handle+gl_target docs for cogl_texture_new_from_foreign 2009-10-16 18:58:51 +01:00
cogl-types.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-util.c Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-util.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-vertex-buffer-private.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-vertex-buffer.c [cogl-texture] Seal CoglTexture internals from cogl-primitives.c 2009-10-16 18:58:51 +01:00
cogl-vertex-buffer.h Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl.c [current-matrix] Adds texture matrix stacks + removes GL matrix API usage 2009-10-20 12:32:45 +01:00
cogl.h.in Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl.pc.in Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
Makefile.am [cogl-primitives] Split the journal out from cogl-primitives.c 2009-10-16 18:58:52 +01:00
stb_image.c Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00