[cairo-commit] glitz ChangeLog,1.42,1.43 TODO,1.9,1.10
David Reveman
commit at pdx.freedesktop.org
Mon Aug 9 15:57:37 PDT 2004
- Previous message: [cairo-commit] gtkcairo/tests demo.c,1.6,1.7
- Next message: [cairo-commit] glitz/src Makefile.am, 1.4, 1.5 glitz-agl.h, 1.3,
1.4 glitz-glx.h, 1.3, 1.4 glitz.c, 1.18, 1.19 glitz.h, 1.16,
1.17 glitz.man, 1.1.1.1, 1.2 glitz_agl_context.c, 1.6,
1.7 glitz_agl_extension.c, 1.4, 1.5 glitz_agl_format.c, 1.4,
1.5 glitz_agl_info.c, 1.7, 1.8 glitz_agl_surface.c, 1.13,
1.14 glitz_aglint.h, 1.7, 1.8 glitz_color_range.c, 1.3,
NONE glitz_compose.c, NONE, 1.1 glitz_filter.c, NONE,
1.1 glitz_format.c, 1.6, 1.7 glitz_gl.h, 1.5,
1.6 glitz_glx_context.c, 1.9, 1.10 glitz_glx_extension.c, 1.7,
1.8 glitz_glx_format.c, 1.7, 1.8 glitz_glx_info.c, 1.12,
1.13 glitz_glx_surface.c, 1.15, 1.16 glitz_glxint.h, 1.11,
1.12 glitz_matrix.c, 1.6, 1.7 glitz_operator.c, 1.3,
1.4 glitz_pixel.c, 1.2, 1.3 glitz_program.c, 1.9,
1.10 glitz_programmatic.c, 1.11, NONE glitz_rect.c, 1.5,
1.6 glitz_render.c, 1.3, NONE glitz_status.c, 1.1.1.1,
1.2 glitz_stencil.c, 1.1, 1.2 glitz_surface.c, 1.16,
1.17 glitz_texture.c, 1.9, 1.10 glitz_trap.c, 1.6,
1.7 glitz_tri.c, 1.6, 1.7 glitz_util.c, 1.6, 1.7 glitzint.h,
1.20, 1.21
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
Committed by: davidr
Update of /cvs/cairo/glitz
In directory pdx:/tmp/cvs-serv7037
Modified Files:
ChangeLog TODO
Log Message:
New internal composite interface
Index: ChangeLog
===================================================================
RCS file: /cvs/cairo/glitz/ChangeLog,v
retrieving revision 1.42
retrieving revision 1.43
diff -C2 -d -r1.42 -r1.43
*** ChangeLog 24 Jul 2004 00:09:27 -0000 1.42
--- ChangeLog 9 Aug 2004 22:57:35 -0000 1.43
***************
*** 1,2 ****
--- 1,159 ----
+ 2004-08-10 David Reveman <c99drn at cs.umu.se>
+
+ * src/glitz.h: Added glitz_surface_finish.
+
+ * src/glitzint.h: Added allocate parameter to get_texture backend
+ function.
+
+ * src/glitz_surface.c: Removed glitz_surface_try_push_current.
+
+ * src/glitz_format.c: Removed option from find_standard_format and
+ made standard format names match exactly.
+
+ Switch name of glitz_render data types, functions and source
+ code to glitz_combine_, glitz_composite_ and glitz_compose.c.
+
+ 2004-08-05 David Reveman <c99drn at cs.umu.se>
+
+ * src/glitzint.h: New composite interface.
+ New filter system.
+ Improved OpenGL state updating.
+ Removed programmatic surface.
+
+ * src/glitz_util.c: Removed glitz_intersect_bounding_box_double.
+ (glitz_uint_to_power_of_two): Faster.
+ Removed glitz_uint_is_power_of_two in favor of the POWER_OF_TWO
+ macro, thanks to Roman Pozlevich for the tip.
+
+ * src/glitz_tri.c (glitz_int_composite_triangles): Smarter way for
+ doing polygon opacity.
+
+ * src/glitz_trap.c (glitz_composite_trapezoids): Smarter way for doing
+ polygon opacity.
+
+ * src/glitz_texture.c: Use POWER_OF_TWO macro.
+ (_glitz_texture_allocate): Clear unused texels.
+ New filter and wrap handling.
+ Added glitz_texture_tex_coord.
+
+ * src/glitz_surface.c (glitz_surface_init): Detect solid surface type.
+ Removed glitz_surface_create_intermediate.
+ Removed programmatic surfaces.
+ Added _glitz_surface_solid_store and glitz_surface_ensure_solid
+ functions for solid color handling.
+ (glitz_surface_set_transform): New filter system.
+ (glitz_surface_get_affine_transform): Added
+ glitz_surface_get_affine_transform so that affine transform is only
+ computed when actually needed.
+ Added glitz_surface_set_fill.
+ Added glitz_surface_set_correctness_hint.
+ (glitz_surface_set_filter): New filter system.
+ (glitz_surface_update_state): Added glitz_surface_update_state for much
+ more efficient OpenGL state updating.
+ (glitz_surface_update_state): Multisample handling is now done here.
+
+ * src/glitz_stencil.c: Write update mask.
+
+ * src/glitz_status.c: Added glitz_status_to_status_mask.
+
+ * src/glitz_render.c: Added support for component alpha with solid
+ surfaces.
+ Filters moved into glitz_filter.c.
+ Updated all of the render interface to match the new composite
+ interface.
+
+ * src/glitz_rect.c: Added STORE_16 macro.
+ (glitz_int_fill_rectangles): Don't compute bounds here.
+ Added _glitz_fill_solid for filling solid surfaces with SRC operator.
+
+ * src/glitz_program.c: Updated fragment programs to use texture matrix
+ for projective transformations.
+ (_glitz_create_vertex_program): Filter type determines vertex program
+ creation parameters.
+ (_glitz_create_fragment_program): Filter type determines fragment
+ program creation parameters.
+ (glitz_program_map_fini): Update to reflect changes to program map.
+
+ * src/glitz_pixel.c: Use new tex_coord functions.
+
+ * src/glitz_matrix.c: Removed glitz_matrix_transform_bounding_box.
+
+ * src/glitz_glxint.h: Removed ARB from feature names.
+ Switched to static context stack allocation.
+
+ * src/glitz_glx_surface.c (_glitz_glx_surface_push_current): Lazy
+ allocation of pbuffers.
+ (_glitz_glx_surface_create): Lazy allocation of pbuffers.
+
+ * src/glitz_glx_info.c: Added glLoadMatrixd and glMultMatrixd.
+ (glitz_glx_screen_info_get): Switched to static context stack
+ allocation.
+
+ * src/glitz_glx_extension.c: New extensions
+ GL_ARB_texture_border_clamp, GL_EXT_texture_env_combine.
+
+ * src/glitz_glx_context.c: Multisample control is moved into glitz
+ core library.
+ (glitz_glx_context_make_current): Write the update mask.
+ (glitz_glx_context_push_current): Switched to static context stack
+ allocation.
+ (glitz_glx_context_pop_current): Switched to static context stack
+ allocation.
+
+ * src/glitz_gl.h: Added GLITZ_GL_FLOAT and GLITZ_GL_CLAMP_TO_BORDER
+ tokens.
+ Added glitz_gl_load_matrix_d_t and glitz_gl_mult_matrix_d_t prototypes.
+
+ * src/glitz_filter.c: Added new filter interface, which matches the
+ X Render extensions filter interface.
+
+ * src/glitz_aglint.h: Removed ARB from feature names.
+ Switched to static context stack allocation.
+
+
+ * src/glitz_agl_surface.c (_glitz_agl_surface_push_current): Lazy
+ allocation of pbuffers.
+ (_glitz_agl_set_features): Stupid code goes away.
+ (_glitz_agl_surface_create): Lazy allocation of pbuffers.
+
+ * src/glitz_agl_info.c: Added glLoadMatrixd and glMultMatrixd.
+ (glitz_agl_thread_info_init): Switched to static context stack
+ allocation.
+
+ * src/glitz_agl_extension.c: New extensions
+ GL_ARB_texture_border_clamp, GL_EXT_texture_env_combine.
+
+ * src/glitz_agl_context.c: Multisample control is moved into glitz
+ core library.
+ (glitz_agl_context_make_current): Write the update mask.
+ (glitz_agl_context_push_current): Switched to static context stack
+ allocation.
+ (glitz_agl_context_pop_current): Switched to static context stack
+ allocation.
+
+ * src/glitz.man: Added new manual page with a short description.
+
+ * src/glitz.h: New filter types.
+ Removed ARB from feature names.
+ Color ranges and programmatic surfaces, get out of here!
+ Added fill types.
+ glitz_surface_set_repeat replaced by glitz_surface_set_fill.
+ Added glitz_surface_set_correctness_hint, which makes it possible
+ to turn off the software repeat fall-back that produces slightly
+ incorrect results.
+ Added filter parameters to glitz_surface_set_filter.
+
+ * src/glitz.c: New internal composite interface. This new interface
+ almost completely replaces the old way to do composite. Only some
+ parts of the old interface are left as fall-back for cases where
+ hardware is not capable of using this new much improved interface.
+ New interface is simpler and much more correct then the old one.
+ Different fill types and projective transformations are now supported.
+
+ * src/Makefile.am (libglitz_la_SOURCES): glitz_programmatic.c,
+ glitz_color_range.c goes away and in comes glitz_filter.c.
+
+ * TODO: Updated TODO list.
+
2004-07-24 David Reveman <c99drn at cs.umu.se>
Index: TODO
===================================================================
RCS file: /cvs/cairo/glitz/TODO,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** TODO 22 Jul 2004 20:03:46 -0000 1.9
--- TODO 9 Aug 2004 22:57:35 -0000 1.10
***************
*** 1,28 ****
! * Remove the solid surface type from the API. 1x1 surfaces should
! internally work in sort of the same way as solid surfaces do now. So
! a solid surface type will no longer be needed.
! * Remove linear and radial surface types and the color range type. Linear
! and radial gradients should just be another set of filters.
* Add low-pass sub-pixel filters for HW accelerated color balancing
! of per-component alpha masks.
* GL_MESA_pack_invert support.
- * Projective transformations.
-
* Retained-mode rendering.
- * Internal composite interface version 2. This will replace pretty much
- all of the code in the glitz_composite function. This new interface
- will be really simple, transformations will be accomplished by just setting
- texture matrices and repeat will always be handled by HW. However, the
- GL_ARB_none_power_of_two_texture extension will be required (I don't know
- any hardware that actually support this yet). This is the perfect solution
- and definitely the future. (Possible problem with render_texture as we need
- to be able to set the texture border color and I'm not sure the existing
- render_texture interfaces allow this.)
-
* WGL (Windows GL) backend.
--- 1,19 ----
! * Switch to new trapezoid type. Add x_offset and y_offset to
! glitz_composite_trapezoids, glitz_composite_triangles and similars.
! * Add glitz_add_trapezoids, glitz_add_triangles...
!
! * Fix so that projective transformations actually work.
!
! * Implement the new convolution and the new gradient filters.
! (Current filters are broken!)
* Add low-pass sub-pixel filters for HW accelerated color balancing
! of per-component alpha masks (possibly with gamma correction).
* GL_MESA_pack_invert support.
* Retained-mode rendering.
* WGL (Windows GL) backend.
- Previous message: [cairo-commit] gtkcairo/tests demo.c,1.6,1.7
- Next message: [cairo-commit] glitz/src Makefile.am, 1.4, 1.5 glitz-agl.h, 1.3,
1.4 glitz-glx.h, 1.3, 1.4 glitz.c, 1.18, 1.19 glitz.h, 1.16,
1.17 glitz.man, 1.1.1.1, 1.2 glitz_agl_context.c, 1.6,
1.7 glitz_agl_extension.c, 1.4, 1.5 glitz_agl_format.c, 1.4,
1.5 glitz_agl_info.c, 1.7, 1.8 glitz_agl_surface.c, 1.13,
1.14 glitz_aglint.h, 1.7, 1.8 glitz_color_range.c, 1.3,
NONE glitz_compose.c, NONE, 1.1 glitz_filter.c, NONE,
1.1 glitz_format.c, 1.6, 1.7 glitz_gl.h, 1.5,
1.6 glitz_glx_context.c, 1.9, 1.10 glitz_glx_extension.c, 1.7,
1.8 glitz_glx_format.c, 1.7, 1.8 glitz_glx_info.c, 1.12,
1.13 glitz_glx_surface.c, 1.15, 1.16 glitz_glxint.h, 1.11,
1.12 glitz_matrix.c, 1.6, 1.7 glitz_operator.c, 1.3,
1.4 glitz_pixel.c, 1.2, 1.3 glitz_program.c, 1.9,
1.10 glitz_programmatic.c, 1.11, NONE glitz_rect.c, 1.5,
1.6 glitz_render.c, 1.3, NONE glitz_status.c, 1.1.1.1,
1.2 glitz_stencil.c, 1.1, 1.2 glitz_surface.c, 1.16,
1.17 glitz_texture.c, 1.9, 1.10 glitz_trap.c, 1.6,
1.7 glitz_tri.c, 1.6, 1.7 glitz_util.c, 1.6, 1.7 glitzint.h,
1.20, 1.21
- Messages sorted by:
[ date ]
[ thread ]
[ subject ]
[ author ]
More information about the cairo-commit
mailing list