Posted by mheydt on 9/9/2009 1:12 PM | Comments (0)
I was asked today about 3D capabilities for Silverlight.  Silverlight does not have 3D capabilities built in, but that does not mean that you can not do 3D in Silverlight; it's just that you have to do it yourself or use some other 3D libraries.

Before I get to those libraries, I first want to mention that SL 3.0 has added the ability for perspective 3D.  This really is not true 3D, just the ability to rotate visuals to make them appear to be 3d.  This is good for placing visuals onto 3D surfaces, but doesn't help you out with 3D modeling and rendering.  A good example of SL perspective 3D is available at http://www.silverlightshow.net/items/Perspective-3D-in-Silverlight-3.aspx

Now, there are however other open source projects available for doing 3D in Silverlight:
I have not used Balder, but it looks quite capable.  The demos for it look quite good:
I have used Kit3d several times, and to find it very useful.  An interesting thing about Kit3d (and aXelerateSL3D) are that they are implementations of parts of the System.Windows.Media.Media3D namespace used in WPF, so the code you put together in these two will be somewhat compatible with WPF.
aXelerateSL3D is the latest that I have used, and I needed to use it due to deficiencies in the Kit3D library.  Off the top of my head I can't remember what that differences are otherwise I would explain them.

Comments