| [AD] [WIN] windowed driver patch |
[ Thread Index | Date Index | More lists.liballeg.org/allegro-developers Archives ]
Hi,
I've tried to improve the dirty rectangles mechanism used in the refreshing
process by the DirectDraw windowed driver: the drawing calls are now, as
much as possible, grouped and there is no more need for entire window
updates.
The best results are achieved with non hardware-accelerated block-blitting
functions:
Allegro 3.9.34 (CVS), Mingw32 profile results (ATI Xpert@xxxxxxxxxx 98 AGP)
Graphics driver: DirectDraw window
Description: DirectDraw window
Screen size: 640x480
Virtual screen size: 640x480
Color depth: 15 bpp
Hardware acceleration:
solid scanline fills
solid area fills
vram->vram blits
masked vram->vram blits
system->vram blits
masked system->vram blits
DRAW_MODE_SOLID results: 3.9.34 3.9.34++
putpixel() - 5317 5426
hline() - 7002 6946
vline() - 6656 6830
line() - 305 1882
rectfill() - 5147 5148
circle() - 295 1373
circlefill() - 89 123
ellipse() - 291 1286
ellipsefill() - 84 118
arc() - 298 1892
triangle() - 85 114
Other functions:
textout() - 300 3103
vram->vram blit() - 5426 5451
aligned vram->vram blit() - 5533 5525
blit() from memory - 261 1791
aligned blit() from memory - 265 1937
vram->vram masked_blit() - 5356 5334
masked_blit() from memory - 261 1859
draw_sprite() - 295 2242
draw_rle_sprite() - 294 2313
draw_compiled_sprite() - 297 2409
draw_trans_sprite() - 266 1235
draw_trans_rle_sprite() - 263 1199
draw_lit_sprite() - 286 1730
draw_lit_rle_sprite() - 284 1738
However, in real world games, the speed improvement may be less obvious,
heavily depending on the animation method:
Allegro demo game, 640x480 15bpp window (color conversion - MMX disabled)
3.9.34 3.9.34++
double buffering 12 33
page flipping 50 50
triple buffering 34 48
dirty rectangles 60 60
BtW, I've also added a new description string to the driver (a la X-Window).
--
Eric Botcazou (ebotcazou@xxxxxxxxxx)
Web Site: http://www.multimania.com/ebotcazou
Attachment:
wd_patch2.zip
Description: Zip compressed data
| Mail converted by MHonArc 2.6.19+ | http://listengine.tuxfamily.org/ |