Archived

This topic is now archived and is closed to further replies.

Gyannea

BitBlts vs DirectX

Recommended Posts

Gyannea    122
I know the Windows GDI is slow, but I use a virtual window which is a memory bit map as a means to handle WM_PAINT messages. THus when I use the GDI to draw an ellipse or do a set of graphical operations, I only draw to the virtual window and then Invalidate the area and the WM_PAINT message uses BitBlt to paint the screen. (I assume that BitBlt() takes advantage of all accellerations available giving its singleness of purpose.) Are the GDI functions fast when drawing to memory (versus the screen)? I am wondering if this approach is still considerably slower than using Direct X graphics functions. I am not writing a game with lots of video action, so it would be hard to tell visually (the onlt continuous action are scanning lites representing radio channels). However, I am going to need every millisecond of CPU time I can spare for continuous digital signal processing of multiple channels. So anyway I can reduce the graphical overhead on the CPU is advantageous. So is there a significant improvement using DirectX to draw into memory bitmaps versus the GDI? Thanks for any info! Brian Reinhold

Share this post


Link to post
Share on other sites
Guest Anonymous Poster   
Guest Anonymous Poster
I have observed the following:

On decent machines, P3 733 MHz and above with decent AGP accelerators, GDI overhead is negligible.

HOWEVER

On slower machines ( in my case a laptop ) AMD K6 2 366 MHz with just a 4 MB video card, GDI overhead is significant costing as much as 5 - 15 frames per second.

Share this post


Link to post
Share on other sites