The Silverlight 1.1 July Alpha Refresh is out, and with it, I can release this post.
This version of Silverlight Balloons has been updated to work with the Silverlight 1.1 Alpha Refresh. I've been wanting to release this for a bit, but had to sit on it until the refresh became public.
First of all, animation performance in the refresh appears to be about 15-20% better than the previous version for vector animation. What used to use 50-60%%, dropped down to about 40-50% CPU. This is all an unscientific test.
Second, I changed the Silverlight control to have an opaque background and the gradient to be drawn on the Silverlight canvas instead of a PNG on the web page. This had the largest performance impactm knocking CPU usage down to around 25%-35%. Keep in mind as you develop silverlight content that compositing over web page content can get expensive if you want to do any real animation. This makes tons of sense, but needs to be said :)
Third, I hooked into the BrowserHost resize event so the app takes up the whole browser window. I'm looking forward to SL getting some of the native WPF-style resize events. TBD if/when that happens. I had a bit of an Observer Effect going on with the whole resize issue. When debugging, everything worked well because my debugging caused enough of a delay before I started the animation for the browser to send the correct sizes over. While not the most elegent solution, I ended up setting a flag in the resize event once I got a non zero value (it fires initially with zero values - not very helpful) and starting the animation at that time.
You can run Silverlight Balloons here.
(old screen shot that includes the clouds)
The source code is here.
The previous revision is here. You can find the original write up and screen shots here.