Slow screen redraw

T

Tomppa

WinCE 5.0 CF 2.0



When I draw a bitmap covering the entire screen it draws from top to bottom
at a rate of about .25 seconds



I am using double buffering but I get the same effect



private void frmMain_Paint(object sender, PaintEventArgs e)

{

try

{

e.Graphics.Clear(Color.Black);

e.Graphics.DrawImage(mBufferBitmap, 0, 0);

}

catch { }

}



protected override void OnPaintBackground(PaintEventArgs e)

{

//Do Nothing

}



Platform Builder debug window says I am running at the following resolution



5191 PID:6e3a912 TID:6f94e0e VGAMode: ModeID:65, ModeIndex:3, RateIndex=3

5191 PID:6e3a912 TID:6f94e0e VGAMode: X:1280, Y:1024 ,Bpp:32, Refresh
Rate:75



This is running on the following board at 166MHz

http://www.icop.com.tw/products_detail.asp?ProductID=119



Is it hardware related or is there something I can do to speed up the
drawing?



Thanks
 
N

Norman Rericha

Most of your issue will be limited by the speed of your graphics
controller and the buswidth (16bits vs. 32bits) and if it has 3d
acceleration. Unfortunatly your method of double buffering is the only
way to speed up display of full screen images, and depending on the
size (bytes not resolution) the image will pan top to bottom. I have
spent several days tweaking the UI refresh rate for full screen
graphics and I found it limited by hardware and image size. I would
suggest that you "optimize" your image to see if it can get any
smaller.


--
I hope this helps

--
Norman Rericha
Senior Software Engineer
Applied Data Systems
www.applieddata.net
An ISO 9001:2000 Registered Company
Microsoft WEP Gold-level Member
 
T

Tomppa

Thanks

I did a benchmark comparison with ImageViewer and no transistion and it
paints the same as my app.

The other Imave Viewer transistions sort of help the visual apperance of
painting though.

Now to figure out how to implement image transitions in CF
 
Top