mutter/cogl
Neil Roberts f3b90d1717 cogl-pipeline: Use the pipeline cache for the GLSL backends
The CoglPipelineCache is now extended to store templates for state
affecting vertex shaders and combined programs. The GLSL fragend,
vertend and progend now uses this to get cached shaders and a program.

When a new pipeline is created it will now get hashed three times if
the GLSL backends are in use (once for the fragend, once for the
vertend and once for the progend). Ideally we should add some way for
the progend to check its cache before the fragends and vertends are
checked so that it can bypass them entirely if it can find a cached
combined program.
2011-07-13 12:30:07 +01:00
..
driver Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
tesselator build: Do not build a noinst library for the tesselator 2010-09-12 19:25:47 +01:00
winsys Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl2-clip-state.c framebuffer: expose experimental cogl_get_draw_framebuffer 2011-04-11 15:28:53 +01:00
cogl2-clip-state.h cogl-clip-state: Adapt to experimental cogl2 API. 2011-03-10 13:05:43 +00:00
cogl2-path.c Use all core GL functions through indirect pointers 2011-07-08 15:35:46 +01:00
cogl2-path.h path 2.0: update path API for experimental 2.0 API 2010-11-11 13:17:26 +00:00
cogl-1.0.pc.in Give cogl-pango it's own pkg-config file 2011-05-06 12:12:08 +01:00
cogl-2.0-experimental.pc.in Make it clearer that the 2.0 API is experimental 2011-06-14 17:09:55 +01:00
cogl-atlas-texture-private.h cogl-atlas-texture: Add a callback for when any atlas reorganizes 2011-05-05 17:32:28 +01:00
cogl-atlas-texture.c cogl-atlas-texture: Add a callback for when any atlas reorganizes 2011-05-05 17:32:28 +01:00
cogl-atlas.c Move the cogl texture driver functions to a vtable 2011-07-08 15:35:51 +01:00
cogl-atlas.h cogl: Use GHookList instead of CoglCallbackList 2011-03-14 18:18:15 +00:00
cogl-attribute-buffer-private.h Rename CoglVertexArray to CoglAttributeBuffer 2011-05-16 14:31:31 +01:00
cogl-attribute-buffer.c Rename CoglVertexArray to CoglAttributeBuffer 2011-05-16 14:31:31 +01:00
cogl-attribute-buffer.h Rename CoglVertexArray to CoglAttributeBuffer 2011-05-16 14:31:31 +01:00
cogl-attribute-private.h Don't pass around NULL terminated CoglAttribute arrays 2011-05-16 14:32:37 +01:00
cogl-attribute.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-attribute.h Don't pass around NULL terminated CoglAttribute arrays 2011-05-16 14:32:37 +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 Fix ISO C90 compiler warnings in Cogl 2011-02-15 12:40:11 +00:00
cogl-bitmap-private.h cogl-bitmap-private.h: Include cogl-bitmap.h 2011-05-05 17:32:29 +01:00
cogl-bitmap.c cogl-texture: Don't use the source rowstride if we have to copy bitmap 2011-01-10 16:54:58 +00:00
cogl-bitmap.h docs: Fixes for the Cogl API reference 2010-12-22 09:52:35 +00:00
cogl-bitmask.c cogl-vertex-attribute: Use glVertexAttribPointer on GLES2 2010-12-13 17:28:29 +00:00
cogl-bitmask.h cogl-context: Store winsys features in an array of unsigned ints 2011-04-20 18:20:10 +01:00
cogl-blend-string.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-blend-string.h blend-strings: removes the AUTO_COMPOSITE function enum 2010-06-15 15:26:27 +01:00
cogl-blit.c Make CoglTexture2D public as experimental API 2011-06-01 20:44:41 +01:00
cogl-blit.h cogl-atlas: Try 4 different approaches for migrating textures 2011-02-15 12:10:54 +00:00
cogl-buffer-private.h Rename CoglIndexArray to CoglIndexBuffer 2011-05-16 14:31:31 +01:00
cogl-buffer.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-buffer.h buffer: Improve the CoglBuffer API description 2011-06-30 14:33:12 +01:00
cogl-clip-stack.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-clip-stack.h clip-stack: Adds _cogl_clip_stack_get_bounds API 2011-01-21 16:18:10 +00:00
cogl-clip-state-private.h cogl-clip-state: Adapt to experimental cogl2 API. 2011-03-10 13:05:43 +00:00
cogl-clip-state.c framebuffer: expose experimental cogl_get_draw_framebuffer 2011-04-11 15:28:53 +01:00
cogl-clip-state.h cogl-clip-state: Adapt to experimental cogl2 API. 2011-03-10 13:05:43 +00:00
cogl-clutter.c Make stub winsys into a proper winsys backend 2011-06-01 20:44:41 +01:00
cogl-clutter.h Moves all GLX code down from Clutter to Cogl 2011-04-11 17:54:36 +01:00
cogl-color-private.h pipeline: Implements _cogl_pipeline_hash function 2010-12-07 16:00:32 +00:00
cogl-color.c cogl-color: add cogl_color_init_from_xyz funcs 2010-06-15 15:26:27 +01:00
cogl-color.h cogl-color: add cogl_color_init_from_xyz funcs 2010-06-15 15:26:27 +01:00
cogl-context-private.h fragend-arbfp: Move the pipeline cache to a separate file 2011-07-13 12:30:07 +01:00
cogl-context.c fragend-arbfp: Move the pipeline cache to a separate file 2011-07-13 12:30:07 +01:00
cogl-context.h fix namespace for cogl_context_egl_get_egl_context 2011-07-11 14:07:02 +01:00
cogl-debug-options.h cogl-debug: Add an option to disable atlasing sharing 2011-05-05 17:32:31 +01:00
cogl-debug.c Add internal _cogl_init() function 2011-06-30 14:33:11 +01:00
cogl-debug.h Add internal _cogl_init() function 2011-06-30 14:33:11 +01:00
cogl-defines.h.in Add _cogl_egl_texture_2d_new_from_image API 2011-06-01 20:44:42 +01:00
cogl-deprecated.h Remove mentions of the FSF address 2010-03-01 12:56:10 +00:00
cogl-depth-state-private.h Adds missing cogl-depth-state-private.h 2011-05-16 18:45:51 +01:00
cogl-depth-state.c Revert "Do not use "near" and "far" variables" 2011-06-14 14:40:27 +01:00
cogl-depth-state.h Fix some gtk-doc annotations in cogl-depth-state.h 2011-06-14 17:09:55 +01:00
cogl-display-private.h Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-display.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-display.h Adds _cogl_wayland_texture_2d_new_from_buffer API 2011-06-01 20:44:42 +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-euler.c math: Adds an experimental euler API 2011-05-16 14:12:42 +01:00
cogl-euler.h Add compile time checks for size of public structs 2011-05-16 14:12:49 +01:00
cogl-ext-functions.h Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-feature-private.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-feature-private.h Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-fixed.c Fixed "the the" repetitions in some doc strings 2010-11-25 18:18:51 +00:00
cogl-fixed.h analysis: Fix some CoglFixed API 2010-06-01 12:08:18 +01:00
cogl-flags.h cogl-context: Store winsys features in an array of unsigned ints 2011-04-20 18:20:10 +01:00
cogl-framebuffer-private.h framebuffer: expose viewport getters/setters 2011-06-30 14:33:11 +01:00
cogl-framebuffer.c onscreen: make platform specific onscreen apis consistent 2011-07-11 14:07:01 +01:00
cogl-framebuffer.h onscreen: make platform specific onscreen apis consistent 2011-07-11 14:07:01 +01:00
cogl-glx-display-private.h work towards consistent platform file/symbol naming 2011-06-30 14:34:33 +01:00
cogl-glx-renderer-private.h Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-gtype-private.h matrix gtype: registers a boxed type for CoglMatrix 2010-12-07 12:16:50 +00:00
cogl-handle.h CoglObject: Adds cogl_object_{get,set}_user_data 2010-06-04 14:44:15 +01:00
cogl-index-buffer-private.h Rename CoglIndexArray to CoglIndexBuffer 2011-05-16 14:31:31 +01:00
cogl-index-buffer.c Rename CoglIndexArray to CoglIndexBuffer 2011-05-16 14:31:31 +01:00
cogl-index-buffer.h Rename CoglIndexArray to CoglIndexBuffer 2011-05-16 14:31:31 +01:00
cogl-indices-private.h Rename CoglIndexArray to CoglIndexBuffer 2011-05-16 14:31:31 +01:00
cogl-indices.c Rename CoglIndexArray to CoglIndexBuffer 2011-05-16 14:31:31 +01:00
cogl-indices.h Rename CoglIndexArray to CoglIndexBuffer 2011-05-16 14:31:31 +01:00
cogl-internal.h Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-journal-private.h cogl-journal: Use a pool of vertex arrays 2011-06-01 14:41:59 +01:00
cogl-journal.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-material-compat.c Remove G_CONST_RETURN 2011-06-09 16:21:15 +01:00
cogl-material-compat.h Remove G_CONST_RETURN 2011-06-09 16:21:15 +01:00
cogl-matrix-private.h matrix-mesa: move to _cogl_matrix namespace 2011-07-04 15:31:50 +01:00
cogl-matrix-stack.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-matrix-stack.h cogl: upload matrices with uniforms on GLES2 2010-12-13 17:29:13 +00:00
cogl-matrix.c matrix: Adds cogl_matrix_is_identity API 2011-07-04 15:31:50 +01:00
cogl-matrix.h matrix: Adds cogl_matrix_is_identity API 2011-07-04 15:31:50 +01:00
cogl-object-private.h cogl-debug: add instrumentation to track the number of objects 2011-06-14 12:14:02 +01:00
cogl-object.c cogl-debug: add instrumentation to track the number of objects 2011-06-14 12:14:02 +01:00
cogl-object.h cogl-debug: add instrumentation to track the number of objects 2011-06-14 12:14:02 +01:00
cogl-offscreen.h Add some more introspection annotations 2010-09-06 16:11:46 +01:00
cogl-onscreen-template-private.h Adds renderer,display,onscreen-template and swap-chain stubs 2011-04-11 17:54:35 +01:00
cogl-onscreen-template.c Adds renderer,display,onscreen-template and swap-chain stubs 2011-04-11 17:54:35 +01:00
cogl-onscreen-template.h Adds renderer,display,onscreen-template and swap-chain stubs 2011-04-11 17:54:35 +01:00
cogl-pango.h deprecate #include <cogl/cogl-pango.h> 2011-05-16 13:28:17 +01:00
cogl-path-private.h Rename CoglVertexArray to CoglAttributeBuffer 2011-05-16 14:31:31 +01:00
cogl-path.c cogl: rename cogl-context.h cogl-context-private.h 2011-04-11 15:18:12 +01:00
cogl-path.h docs: Fixes for the Cogl API reference 2010-12-22 09:52:35 +00:00
cogl-pipeline-cache.c cogl-pipeline: Use the pipeline cache for the GLSL backends 2011-07-13 12:30:07 +01:00
cogl-pipeline-cache.h cogl-pipeline: Use the pipeline cache for the GLSL backends 2011-07-13 12:30:07 +01:00
cogl-pipeline-fragend-arbfp-private.h fragend-arbfp: Move the pipeline cache to a separate file 2011-07-13 12:30:07 +01:00
cogl-pipeline-fragend-arbfp.c fragend-arbfp: Move the pipeline cache to a separate file 2011-07-13 12:30:07 +01:00
cogl-pipeline-fragend-fixed-private.h Rename CoglPipelineBackend to CoglPipelineFragend 2010-12-13 17:22:57 +00:00
cogl-pipeline-fragend-fixed.c pipeline: Unify how the backends store private data 2011-07-13 12:30:07 +01:00
cogl-pipeline-fragend-glsl-private.h cogl: Add a GLSL 'progend' 2010-12-13 17:22:57 +00:00
cogl-pipeline-fragend-glsl.c cogl-pipeline: Use the pipeline cache for the GLSL backends 2011-07-13 12:30:07 +01:00
cogl-pipeline-opengl-private.h cogl-pipeline: Move texture enabling/disabling to fixed fragend 2010-12-13 17:22:57 +00:00
cogl-pipeline-opengl.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-pipeline-private.h pipeline: Unify how the backends store private data 2011-07-13 12:30:07 +01:00
cogl-pipeline-progend-glsl-private.h cogl: rename CoglVertexAttribute CoglAttribute 2011-01-21 16:24:14 +00:00
cogl-pipeline-progend-glsl.c cogl-pipeline: Use the pipeline cache for the GLSL backends 2011-07-13 12:30:07 +01:00
cogl-pipeline-vertend-fixed-private.h cogl: Add a fixed function vertend 2010-12-13 17:22:57 +00:00
cogl-pipeline-vertend-fixed.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-pipeline-vertend-glsl-private.h cogl: Add a vertend to generate GLSL 2010-12-13 17:28:28 +00:00
cogl-pipeline-vertend-glsl.c cogl-pipeline: Use the pipeline cache for the GLSL backends 2011-07-13 12:30:07 +01:00
cogl-pipeline.c pipeline: Unify how the backends store private data 2011-07-13 12:30:07 +01:00
cogl-pipeline.h Add CoglDepthState API 2011-05-16 18:36:44 +01:00
cogl-pixel-buffer-private.h Rename CoglPixelArray to CoglPixelBuffer 2011-05-16 14:31:31 +01:00
cogl-pixel-buffer.c Use all core GL functions through indirect pointers 2011-07-08 15:35:46 +01:00
cogl-pixel-buffer.h Rename CoglPixelArray to CoglPixelBuffer 2011-05-16 14:31:31 +01:00
cogl-point-in-poly-private.h util: tune point_in_poly test for polys in screen coords 2011-03-07 13:26:19 +00:00
cogl-point-in-poly.c util: tune point_in_poly test for polys in screen coords 2011-03-07 13:26:19 +00:00
cogl-primitive-private.h Rename CoglVertexArray to CoglAttributeBuffer 2011-05-16 14:31:31 +01:00
cogl-primitive.c cogl-primitive: Fix some broken changes for removal of NULL terminator 2011-05-16 18:34:22 +01:00
cogl-primitive.h Don't pass around NULL terminated CoglAttribute arrays 2011-05-16 14:32:37 +01:00
cogl-primitives-private.h cogl: Don't flush the journal when flushing clip state 2010-11-04 18:10:08 +00:00
cogl-primitives.c Use all core GL functions through indirect pointers 2011-07-08 15:35:46 +01:00
cogl-primitives.h Use begin/end macros in cogl-primitives.h 2010-03-25 09:33:26 +00:00
cogl-private.h Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-profile.c cogl-debug: Split the flags to support more than 32 2011-01-24 15:45:45 +00: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 cogl-program: Add private functions to check if have each shader type 2010-12-13 17:22:57 +00:00
cogl-program.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-quaternion-private.h math: Adds an experimental quaternion API 2011-05-16 14:11:47 +01:00
cogl-quaternion.c math: Adds an experimental euler API 2011-05-16 14:12:42 +01:00
cogl-quaternion.h doc: fix the name of the cogl_quaternion_equal args 2011-05-16 17:08:30 +01:00
cogl-queue.h cogl-queue: Make suitable for use in Cogl source code 2011-07-01 17:52:55 +01:00
cogl-rectangle-map.c debug: Allow to compile a debug Cogl without cairo 2011-05-17 15:24:54 +01:00
cogl-rectangle-map.h cogl-atlas: Rename to CoglRectangleMap 2010-08-12 11:54:42 +01:00
cogl-renderer-private.h Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-renderer.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-renderer.h renderer: split win32 api out into separate header 2011-06-30 14:34:46 +01:00
cogl-shader-boilerplate.h Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-shader-private.h Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-shader.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +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 Remove mentions of the FSF address 2010-03-01 12:56:10 +00:00
cogl-spans.h Remove mentions of the FSF address 2010-03-01 12:56:10 +00:00
cogl-sub-texture-private.h Remove mentions of the FSF address 2010-03-01 12:56:10 +00:00
cogl-sub-texture.c cogl: rename cogl-context.h cogl-context-private.h 2011-04-11 15:18:12 +01:00
cogl-swap-chain-private.h EGL: Updates GDL platform support 2011-05-05 14:46:02 +01:00
cogl-swap-chain.c EGL: Updates GDL platform support 2011-05-05 14:46:02 +01:00
cogl-swap-chain.h EGL: Updates GDL platform support 2011-05-05 14:46:02 +01:00
cogl-texture-2d-private.h Add _cogl_egl_texture_2d_new_from_image API 2011-06-01 20:44:42 +01:00
cogl-texture-2d-sliced-private.h cogl: rename CoglMaterial -> CoglPipeline 2010-11-03 18:09:23 +00:00
cogl-texture-2d-sliced.c Move the cogl texture driver functions to a vtable 2011-07-08 15:35:51 +01:00
cogl-texture-2d.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-texture-2d.h include required cogl-context.h in cogl-texture-2d.h 2011-06-14 17:09:55 +01:00
cogl-texture-3d-private.h cogl: rename CoglMaterial -> CoglPipeline 2010-11-03 18:09:23 +00:00
cogl-texture-3d.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-texture-3d.h Add a Cogl texture 3D backend 2010-07-13 14:28:52 +01:00
cogl-texture-driver.h Move the cogl texture driver functions to a vtable 2011-07-08 15:35:51 +01:00
cogl-texture-private.h Move the cogl texture driver functions to a vtable 2011-07-08 15:35:51 +01:00
cogl-texture-rectangle-private.h cogl: rename CoglMaterial -> CoglPipeline 2010-11-03 18:09:23 +00:00
cogl-texture-rectangle.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-texture.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl-texture.h Add _cogl_egl_texture_2d_new_from_image API 2011-06-01 20:44:42 +01:00
cogl-types.h replace public native_event APIs with typesafe APIs 2011-06-30 14:33:13 +01:00
cogl-util.c Moves all GLX code down from Clutter to Cogl 2011-04-11 17:54:36 +01:00
cogl-util.h cogl-util: Add an internal wrapper for the ffs function 2011-01-10 16:55:00 +00:00
cogl-vector.c math: Adds an experimental cogl_vector3_* API 2010-05-20 17:18:24 +01:00
cogl-vector.h cogl: declare experimental symbols consistently 2010-06-30 18:51:31 +01:00
cogl-vertex-buffer-private.h Rename CoglVertexArray to CoglAttributeBuffer 2011-05-16 14:31:31 +01:00
cogl-vertex-buffer.c cogl-vertex-buffer: make sure to unref weak pipelines 2011-06-13 17:48:23 +01:00
cogl-vertex-buffer.h docs: clarify cogl_vertex_buffer_adds docs 2011-02-09 19:12:12 +00:00
cogl-wayland-renderer.h Updates wayland symbol names to be consistent 2011-06-30 14:34:46 +01:00
cogl-win32-renderer.c replace public native_event APIs with typesafe APIs 2011-06-30 14:33:13 +01:00
cogl-win32-renderer.h renderer: split win32 api out into separate header 2011-06-30 14:34:46 +01:00
cogl-x11-renderer-private.h work towards consistent platform file/symbol naming 2011-06-30 14:34:33 +01:00
cogl-xlib-display-private.h work towards consistent platform file/symbol naming 2011-06-30 14:34:33 +01:00
cogl-xlib-private.h replace _xlib_add_filter use with _cogl_renderer API 2011-06-01 20:44:42 +01:00
cogl-xlib-renderer-private.h work towards consistent platform file/symbol naming 2011-06-30 14:34:33 +01:00
cogl-xlib-renderer.c work towards consistent platform file/symbol naming 2011-06-30 14:34:33 +01:00
cogl-xlib-renderer.h work towards consistent platform file/symbol naming 2011-06-30 14:34:33 +01:00
cogl-xlib.c work towards consistent platform file/symbol naming 2011-06-30 14:34:33 +01:00
cogl-xlib.h cogl-renderer: Move the XEvent filters to be generic for all renderers 2011-04-20 18:17:06 +01:00
cogl.c Dynamically load the GL or GLES library 2011-07-11 12:57:38 +01:00
cogl.h framebuffer: Add _get_XYZ_bits() functions 2011-07-04 15:31:50 +01:00
Makefile.am fragend-arbfp: Move the pipeline cache to a separate file 2011-07-13 12:30:07 +01:00
stb_image.c Update stb_image.c 2010-03-03 17:02:51 +00:00