The World’s Leading Microsoft .NET Magazine
   
 
The .NET Addict's Blog

My Top Tags

                                                           

My RSS Feeds








I heart FeedBurner

Latest Diggs - Programming

Computers Blogs - Blog Top Sites

Site Hits

Total: 4,870,568
since: 19 Jan 2005

What's New in Silverlight 3

posted Fri 20 Mar 09

While I realize that this conference is about the web and about blurring the lines between development and design, what I've been really, really inspired about at this conference so far has been Silverlight 3. After hearing about some of the new features in SL3, I completely changed my planned conference schedule so that I could soak up as much SL3 information as humanly possible.

I will be doing several more detailed posts about various aspects of Silverlight 3 once I get back home and get a decent night's sleep, but for now, I wanted to touch on a few of the things that I think Silverlight and potential Silverlight developers need to keep an eye on.

  • Hardware Acceleration. For things like stretches, transformations, and alpha blending Silverlight 3 will offload that work to the GPU. In some very informative and objective analysis given during a session yesterday, this can show over 50% speed improvement depending on the graphics your application is using.
  • Element-to-Element binding. I know this may not seem like much if you've never used Silverlight, but to WPF developers this is like pure gold. Using E2E binding you can rig the value of one property to the value of another property on another XAML element... this can create some really great GUI quickly with very little code.
  • Perspective 3D. They've taken the 80% case for why people need 3D (performing psuedo-3D transformations on 2D elements to create effects like cover flow, etc.
  • Animation Easing - multiple built-in types of easing functions to make the animations you do in Silverlight seem more natural and smooth, including things like a standard exponential ease and little "bounces" to make your controls take on a more visceral feel.
  • File Saving and Opening !! - Your SL3 application can now read and write to files anywhere on the user's disk, provided the user tells you where the file is. It's still secure because all the SL3 app gets is a stream and it can only operate on that stream.
  • Pixel Shaders - I could write an entire blog post on this (and most likely I will), but SL3 now has the ability to use Pixel Shaders using the same HLSL 2 language that WPF 3.5 SP1 uses for it's pixel shaders. These can be used to create transitions, inversions, blends, blurs, and much more. Even cooler is that there are already huge treasure troves of publicly available pixel shaders that you can easily import into your application.
  • Read/Write pixels. There is now a WriteableBitmap intermediate surface. It might seem a little unnecessary at first, but if you've ever needed to take control of low-level pixel blitting for your SL app, this is good news for you.
  • Adaptive Streaming - this was demo'd multiple times and I won't go into too much detail. Basically it allows you to stream live video content directly to a SL3 application (not just pre-recorded) in VC1 or H.264 and it can dynamically switch up or down bitrates depending on various network factors. Also allows for "instant seek" behavior.
  • We finally get a WrapPanel!! :)
  • Pixel Shaders can be combined with layering, alpha blending, and media elements to perform live, on-the-fly "green screen" effects. Demo was putting static backgrounds behind a video of John McCain talking. The possibilities here for creating high-end, rich applications are endless.
  • Local Messaging - We can now use named-pipe style communication channels to talk to other instances of Silverlight applications running on the same machine, even if they're not in the same browser.
  • Some new controls - DockPanel, WrapPanel, Expander, Label, TreeView, ViewBox, ChildWindow, etc.
  • Silverlight can now run out of the browser and install desktop icons similar to ClickOnce. I cannot possibly express how huge this is for Silverlight developers. Basically you can right-click a Silverlight app and choose the "Install" option (or hit a button coded by the app developer). This can put an icon on the desktop and/or in the start menu and will install the app. Installed apps can detect what their own state is (running offline, etc) and receive notifications when the network IP address changes, allowing apps to determine their own connectivity level. Again, this is HUGE.

As I said, I will be posting more about SL3 once things calm down a little bit (and I get some sleep), but this should whet your appetite. I think the key thing to realize here is that Silverlight 3 is quite possibly the single best zero-install-required cross-platform rich application development environment available given the list of supported features and the ease with which certain tasks are possible.

Stay tuned!

tags:            

links: digg this    del.icio.us    technorati    reddit

AddThis Social Bookmark Button




1. Vineet Bhatia left...
Fri 20 Mar 09 1:00 pm :: http://web.me.com/vineetb

Are there any demos you for any of these?


2. Kevin Hoffman left...

If you go to silverlight.net in the "Getting Started" area, there are a ton of new videos and walkthroughs for the Silverlight 3 content.


Tag Related Posts

Geneva Distilled

Thu 09 Apr 09 1:27 P GMT-05

WPF Control Development Unleashed

Wed 25 Mar 09 2:26 P GMT-05

What's New in Silverlight 3

Fri 20 Mar 09 2:38 P GMT-05

MIX 2009 - Day 1 Recap

Thu 19 Mar 09 2:17 P GMT-05

At MIX 2009, pre-keynote

Wed 18 Mar 09 2:50 P GMT-05

Live Framework April 2009 CTP is out!

Fri 13 Mar 09 12:11 P GMT-05

Velocity CTP3 coming up next week

Thu 12 Mar 09 4:44 P GMT-05
tags:            

My first day using Windows 7 Beta 1

Wed 25 Feb 09 1:58 P GMT-05

Live Mesh Tutorial 1 - Hello Live Mesh

Thu 06 Nov 08 2:33 P GMT-05

Microsoft Windows Azure Distilled

Tue 28 Oct 08 1:42 P GMT-05

Microsoft's Lofty Direction

Sun 05 Oct 08 2:30 P GMT-05

MobileMe vs. Live Mesh Throwdown - Round 1

Wed 16 Jul 08 10:33 A GMT-05

MobileMe vs. Live Mesh - Round 1

Wed 11 Jun 08 12:20 A GMT-05

One Framework to Rule them All

Mon 25 Feb 08 6:49 P GMT-05

My Silverlight Plugin has expired - WTF?!?

Thu 08 Nov 07 7:34 P GMT-05
tags:    

Silverlight 1.1 Alpha Refresh

Fri 10 Aug 07 2:09 P GMT-05
tags:    

Microsoft Codename Acropolis - Unwrapped

Wed 20 Jun 07 3:22 P GMT-05
tags:              

My Appearance in the RIA Shootout on sys-con.tv

Tue 05 Jun 07 11:41 A GMT-05
tags:              

Silverlight and Astoria - First Impressions

Mon 04 Jun 07 1:40 A GMT-05
tags:    

I'm going to be on TV (sort of)

Sat 02 Jun 07 12:19 P GMT-05
tags:              

Installing Orcas Beta 1 - VMware Style

Mon 23 Apr 07 12:16 P GMT-05

Silverlight Revisited

Sat 21 Apr 07 9:48 P GMT-05
tags:    

Orcas Beta 1 Released

Fri 20 Apr 07 7:09 P GMT-05

Will Silverlight be DOA?

Mon 16 Apr 07 8:02 P GMT-05

ASP.NET vs Ruby on Rails : Round 2 (Agility)

Thu 05 Oct 06 11:02 A GMT-05
tags:                      

ASP.NET vs Ruby on Rails : Round 1

Wed 04 Oct 06 1:37 P GMT-05
tags:                

Scrobbles, Diggs, Flickrs and Tags Oh My!

Tue 01 Aug 06 5:25 P GMT-05

Tech-Ed 2006 Day 1 - Registration Day

Sun 11 Jun 06 7:17 P GMT-05

Dan Brown's got competition

Mon 05 Jun 06 3:51 P GMT-05