mutter/cogl
Robert Bragg 406d0c4a28 material: Bail out faster if re-flushing unchanged material
This allows _cogl_material_flush_gl_state to bail out faster if
repeatedly asked to flush the same material and we can see the material
hasn't changed.

Since we can rely on the material age incrementing when any material
property changes or any associated layer property changes then we can
track the age of the material after flushing so it can be compared with
the age of the material if it is subsequently re-flushed. If the age is
the same we only have to re-assert the texture object state.
2010-11-03 17:28:45 +00:00
..
driver Merge cogl-program-{gl,gles}.c into one cogl-program.c 2010-10-28 19:51:42 +01:00
tesselator build: Do not build a noinst library for the tesselator 2010-09-12 19:25:47 +01:00
winsys cogl-context-winsys: Avoid zero-length arrays 2010-10-25 13:18:25 +01:00
cogl-atlas-texture-private.h cogl-atlas-texture: Split out the atlas data structure 2010-08-12 11:56:59 +01:00
cogl-atlas-texture.c cogl-atlas: Support multiple formats and clearing the texture 2010-08-12 11:56:59 +01:00
cogl-atlas.c cogl-atlas: Verify that the chosen initial size is supported 2010-08-12 11:57:00 +01:00
cogl-atlas.h cogl-atlas: Support multiple formats and clearing the texture 2010-08-12 11:56:59 +01:00
cogl-bitmap-fallback.c cogl-bitmap: Encapsulate the CoglBitmap even internally 2010-07-15 17:24:01 +01:00
cogl-bitmap-pixbuf.c cogl-bitmap-pixbuf: Avoid copying the buffer in more circumstances 2010-07-22 20:13:37 +01:00
cogl-bitmap-private.h Add an internal _cogl_bitmap_new_from_buffer 2010-07-15 17:27:15 +01:00
cogl-bitmap.c buffer: remove flag macros 2010-10-26 13:21:11 +01:00
cogl-bitmap.h Make a public CoglBitmapError enum 2010-07-13 14:28:45 +01:00
cogl-bitmask.c
cogl-bitmask.h
cogl-blend-string.c
cogl-blend-string.h
cogl-buffer-private.h buffer: BufferBindTarget + BufferUsageHint enum renaming 2010-10-26 17:25:27 +01:00
cogl-buffer.c buffer: BufferBindTarget + BufferUsageHint enum renaming 2010-10-26 17:25:27 +01:00
cogl-buffer.h Enumeration value should be on the same line 2010-09-15 11:56:59 +01:00
cogl-callback-list.c cogl: Add an internal utility to maintain a list of callback functions 2010-08-12 11:54:42 +01:00
cogl-callback-list.h cogl: Add an internal utility to maintain a list of callback functions 2010-08-12 11:54:42 +01:00
cogl-clip-stack.c cogl: Adds {push,pop,get}_source functions 2010-10-26 12:08:20 +01:00
cogl-clip-stack.h
cogl-clip-state.c framebuffer: Replace CoglHandle with CoglFramebuffer * 2010-07-07 14:41:54 +01:00
cogl-clip-state.h
cogl-color-private.h
cogl-color.c
cogl-color.h
cogl-context.c cogl: Use separate materials for set_source_color and texture 2010-10-27 15:07:03 +01:00
cogl-context.h material: Bail out faster if re-flushing unchanged material 2010-11-03 17:28:45 +00:00
cogl-debug-options.h profile: Update to uprof-0.3 dep for --enable-profile 2010-09-14 12:43:16 +01:00
cogl-debug.c cogl: Use Cogl (not COGL) consistently 2010-10-05 08:03:19 +01:00
cogl-debug.h profile: Update to uprof-0.3 dep for --enable-profile 2010-09-14 12:43:16 +01:00
cogl-defines.h.in configure: Include gl2ext.h or glext.h under GLES 2010-07-13 14:28:51 +01:00
cogl-deprecated.h
cogl-enum-types.c.in
cogl-enum-types.h.in
cogl-feature-private.c cogl: Add the infrastructure for checking for winsys extensions 2010-06-22 12:22:43 +01:00
cogl-feature-private.h cogl: Add the infrastructure for checking for winsys extensions 2010-06-22 12:22:43 +01:00
cogl-fixed.c
cogl-fixed.h
cogl-framebuffer-private.h framebuffer: Replace CoglHandle with CoglFramebuffer * 2010-07-07 14:41:54 +01:00
cogl-framebuffer.c cogl-framebuffer.c: GL_DEPTH_STENCIL not supported in gles 2010-09-23 17:33:11 +01:00
cogl-handle.h
cogl-internal.h Merge cogl-program-{gl,gles}.c into one cogl-program.c 2010-10-28 19:51:42 +01:00
cogl-journal-private.h cogl: remove _cogl_material_flush_gl_state flush options 2010-06-15 15:26:27 +01:00
cogl-journal.c journal: provide more detailed uprof instrumentation 2010-09-14 12:43:17 +01:00
cogl-material-arbfp-private.h material: don't declare backend vtables in headers 2010-09-15 14:07:50 +01:00
cogl-material-arbfp.c Merge cogl-program-{gl,gles}.c into one cogl-program.c 2010-10-28 19:51:42 +01:00
cogl-material-fixed-private.h material: don't declare backend vtables in headers 2010-09-15 14:07:50 +01:00
cogl-material-fixed.c Merge cogl-program-{gl,gles}.c into one cogl-program.c 2010-10-28 19:51:42 +01:00
cogl-material-glsl-private.h material: don't declare backend vtables in headers 2010-09-15 14:07:50 +01:00
cogl-material-glsl.c Merge cogl-program-{gl,gles}.c into one cogl-program.c 2010-10-28 19:51:42 +01:00
cogl-material-opengl-private.h cogl-program: gles2: bind programs lazily as for GL 2010-08-03 15:00:07 +01:00
cogl-material-opengl.c material: Bail out faster if re-flushing unchanged material 2010-11-03 17:28:45 +00:00
cogl-material-private.h material-node: track if node owns reference on parent 2010-11-03 17:28:45 +00:00
cogl-material.c material-node: track if node owns reference on parent 2010-11-03 17:28:45 +00:00
cogl-material.h material: Adds missing get_layer_wrap_mode_xyz prototypes 2010-10-26 13:02:23 +01:00
cogl-matrix-mesa.c
cogl-matrix-mesa.h
cogl-matrix-private.h
cogl-matrix-stack.c
cogl-matrix-stack.h
cogl-matrix.c cogl: don't include cogl-debug.h in cogl.h or install 2010-08-02 17:41:42 +01:00
cogl-matrix.h docs: Fixes for gtk-doc 2010-09-03 16:12:24 +01:00
cogl-object-private.h cogl-object-private.h: Include cogl-debug.h 2010-09-17 17:22:16 +01:00
cogl-object.c cogl-object: correctly free user_data_array in _unref 2010-11-03 17:28:45 +00:00
cogl-object.h CoglObject: Adds a COGL_OBJECT macro for casting 2010-06-04 14:44:15 +01:00
cogl-offscreen.h Add some more introspection annotations 2010-09-06 16:11:46 +01:00
cogl-path-private.h cogl-path: Allow changing the fill rule 2010-06-29 20:37:14 +01:00
cogl-path.c cogl: Adds {push,pop,get}_source functions 2010-10-26 12:08:20 +01:00
cogl-path.h docs: API reference fixes 2010-09-20 13:15:44 +01:00
cogl-pixel-array-private.h pixel-array: Remove flags member and flag macros 2010-10-26 16:16:40 +01:00
cogl-pixel-array.c pixel-array: Remove some benign variables 2010-10-26 16:16:50 +01:00
cogl-pixel-array.h pixel-array: Only allow allocation of arrays with a 2D size 2010-07-05 15:20:04 +01:00
cogl-primitives.c cogl: Adds {push,pop,get}_source functions 2010-10-26 12:08:20 +01:00
cogl-primitives.h
cogl-profile.c Initialize the cogl uprof state in cogl_create_context 2010-09-14 12:43:17 +01:00
cogl-profile.h Initialize the cogl uprof state in cogl_create_context 2010-09-14 12:43:17 +01:00
cogl-program-private.h Merge cogl-program-{gl,gles}.c into one cogl-program.c 2010-10-28 19:51:42 +01:00
cogl-program.c Merge cogl-program-{gl,gles}.c into one cogl-program.c 2010-10-28 19:51:42 +01:00
cogl-rectangle-map.c cogl-rectangle-map: Record largest gap rather than the remaining space 2010-08-12 11:57:00 +01:00
cogl-rectangle-map.h cogl-atlas: Rename to CoglRectangleMap 2010-08-12 11:54:42 +01:00
cogl-shader-private.h Merge cogl-program-{gl,gles}.c into one cogl-program.c 2010-10-28 19:51:42 +01:00
cogl-shader.c Merge cogl-program-{gl,gles}.c into one cogl-program.c 2010-10-28 19:51:42 +01:00
cogl-shader.h cogl-shader: Add deprecation guards for cogl_program_uniform_* 2010-09-03 16:59:01 +01:00
cogl-spans.c
cogl-spans.h
cogl-sub-texture-private.h
cogl-sub-texture.c Rename the third texure coordinate from 'r' to 'p' 2010-07-13 14:29:07 +01:00
cogl-texture-2d-private.h Support foreign textures in the texture-2d and rectangle backends 2010-10-22 12:19:02 +01:00
cogl-texture-2d-sliced-private.h cogl-texture-2d-sliced: Use the other backends for the slices 2010-10-22 12:19:04 +01:00
cogl-texture-2d-sliced.c cogl-texture-2d-sliced: Use the other backends for the slices 2010-10-22 12:19:04 +01:00
cogl-texture-2d.c Support foreign textures in the texture-2d and rectangle backends 2010-10-22 12:19:02 +01:00
cogl-texture-3d-private.h cogl-bitmap: Encapsulate the CoglBitmap even internally 2010-07-15 17:24:01 +01:00
cogl-texture-3d.c profile: Update to uprof-0.3 dep for --enable-profile 2010-09-14 12:43:16 +01:00
cogl-texture-3d.h Add a Cogl texture 3D backend 2010-07-13 14:28:52 +01:00
cogl-texture-driver.h Add a Cogl texture 3D backend 2010-07-13 14:28:52 +01:00
cogl-texture-private.h cogl-bitmap: Encapsulate the CoglBitmap even internally 2010-07-15 17:24:01 +01:00
cogl-texture-rectangle-private.h Support foreign textures in the texture-2d and rectangle backends 2010-10-22 12:19:02 +01:00
cogl-texture-rectangle.c Support foreign textures in the texture-2d and rectangle backends 2010-10-22 12:19:02 +01:00
cogl-texture.c cogl: Adds {push,pop,get}_source functions 2010-10-26 12:08:20 +01:00
cogl-texture.h
cogl-types.h Move IndicesType and VerticesMode typedefs to cogl-types.h 2010-10-26 17:25:33 +01:00
cogl-util.c cogl: Make cogl_util_next_p2 internal and fix the documentation 2010-09-15 15:01:43 +01:00
cogl-util.h cogl: Make cogl_util_next_p2 internal and fix the documentation 2010-09-15 15:01:43 +01:00
cogl-vector.c
cogl-vector.h cogl: declare experimental symbols consistently 2010-06-30 18:51:31 +01:00
cogl-vertex-buffer-private.h vertex-buffer: remove the unstrided CBO type 2010-10-26 12:38:15 +01:00
cogl-vertex-buffer.c vertex-buffer: remove the unstrided CBO type 2010-10-26 12:38:15 +01:00
cogl-vertex-buffer.h Move IndicesType and VerticesMode typedefs to cogl-types.h 2010-10-26 17:25:33 +01:00
cogl.c cogl: Use separate materials for set_source_color and texture 2010-10-27 15:07:03 +01:00
cogl.h cogl: Adds {push,pop,get}_source functions 2010-10-26 12:08:20 +01:00
cogl.pc.in
Makefile.am Merge cogl-program-{gl,gles}.c into one cogl-program.c 2010-10-28 19:51:42 +01:00
stb_image.c