Powerbasic Museum 2020-B

IT-Consultant: Patrice Terrier => GDImage => DreamWork => Topic started by: Patrice Terrier on December 24, 2008, 05:46:31 PM

Title: DreamWork (pushing the limits)
Post by: Patrice Terrier on December 24, 2008, 05:46:31 PM
Plasma like animation changing the background of a GDImage composited skinned window.

The background animation is fully cooperative with the child controls drawn on the foreground.

With this new kind of window, it is better to use a slow animation and smooth color transition to avoid user's distraction, if you see what i mean  ;)

Screen shot:

(http://www.zapsolution.com/pictures/DreamWork.jpg)

Of course hard to figure the result of the animation with this static image  :)

Note: I had a hard time to keep the CPU usage as small as possible (5% to 6% on VISTA)

...

Title: Re: DreamWork (pushing the limits)
Post by: Petr Schreiber on December 27, 2008, 11:36:49 PM
Hi Patrice,

another impressive demo!

It works nicely on Windows XP SP2, redrawing works ok, just the clock flickers from time to time.

CPU use is around 20% by default, but I have single core CPU Sempron 64bit 3400+, which is not designed to be superfast.
I have new graphic card, GeForce 9 series, so this should not be bottleneck :)

Here are CPU results for various animation timings:
10ms - 99% CPU
100ms - 30% CPU
200ms - 20% CPU
400ms - 10% CPU


Thanks,
Petr
Title: Re: DreamWork (pushing the limits)
Post by: Patrice Terrier on December 28, 2008, 12:20:14 AM
Petr,

Thanks for the feedback.

I can see a big difference between a single and a dual core processor.

The clock shoudn't flicker, because all the child controls are redrawn in composited mode.

Anyway the solution could be to use the WM_PRINT message and redraw everything to a private memory DC then use one single BitBlt instead of the classic INVALIDATE/WM_PAINT currently being used.

...

Title: Re: DreamWork (pushing the limits)
Post by: Patrice Terrier on August 08, 2011, 02:13:09 PM
The first post of this thread has been updated, to fix the ZIP file corruption caused by the "Server Collapse".

...