cylform Code
Status: Beta
Brought to you by:
bgibbs
File | Date | Author | Commit |
---|---|---|---|
buffer-performance | 2010-03-17 |
![]() |
[2644e1] Directories cleanup |
experimental-cont-array | 2010-03-17 |
![]() |
[2644e1] Directories cleanup |
experimental-glib | 2010-03-06 |
![]() |
[023b82] simplified src directory to just basics |
experiments | 2010-03-17 |
![]() |
[2644e1] Directories cleanup |
gtk | 2010-04-25 |
![]() |
[e3e264] Add LGPL license and INSTALL files |
obsolete | 2009-11-27 |
![]() |
[aa44ce] gtk test program in progress |
opengl | 2010-04-25 |
![]() |
[e3e264] Add LGPL license and INSTALL files |
src | 2010-04-25 |
![]() |
[e3e264] Add LGPL license and INSTALL files |
x11 | 2010-04-25 |
![]() |
[e3e264] Add LGPL license and INSTALL files |
.gitignore | 2009-05-21 |
![]() |
[15cc77] single complete poly test case working |
Makefile | 2010-04-25 |
![]() |
[e3e264] Add LGPL license and INSTALL files |
README | 2010-03-06 |
![]() |
[0142d4] Notes on dir structure |
---------------------------------------------------------------- Directory structure: src: This is the main code for the cyl transform. It uses a custom array Implementation. experimental-glib: This uses garray vice a custom array implementation. It is much slower than the custom array. experimental-cont-array: This is a slightly faster implementation on some machines. On other machines it doesn't makeany difference. ---------------------------------------------------------------- OpenGL 1600x1200 window Nvidia > 40 FPS w/o Tesselation > 17.5 FPS w/ Tesselation On slow T41 w/open source ATI > 4.5 FPS ---------------------------------------------------------------- Major GTK performance improvement by doing custom double buffering. > 50 FPS for 1600x1200 window when drawing area double buffering flag is unset and a GdkPixmap is used instead GTK_WIDGET_UNSET_FLAGS (app.da, GTK_DOUBLE_BUFFERED); ------------------------------------------- Performance using Xlib calls directly 50 FPS to (1600x1200 window with no double buffering 48 FPS when buffering to a pixmap 70 FPS with XCopyArea disabled --------------------------------------------------------------------- Performance for large area (1600x1200) goes way down (10 FPS). - Looked at reducing 14K pts down to 4K points but did not see a big difference. - Looked at redrawing w/o transormation (no panning) and did not see a big difference. - Bottleneck appears to be in gdk_draw_polygon(). Need to look at X11 call that it wraps to see if there is a difference. ------------------------------------------- Experiments with edge lines from polygon clipping. This does not cause a problem in X11 due to winding rule or polygon being convex not sure. For not-filled shapes, then "open" flag can be set in xform to eliminate this. Additionally the clip object could be set with bounds slightly larger than window bounds. (This does not always work due to some artifact with X11.)