Silverlight 5 brings XNA 3D to the web
I have been remiss in not mentioning this on my blog before, but if you are an XNA developer who hasn't been paying attention to Silverlight 5, now might be a good time to start!
A quick history:
- At the MIX11 conference in April, we announced that Silverlight 5 was adding a new 3D API. This is based on XNA, so included familiar types such as GraphicsDevice, VertexBuffer, and Texture2D, but it was not a full port of XNA. In particular it did not include many of the higher level helper features, so there was no BasicEffect, no SpriteBatch, no math library, and no Content Pipeline. It did support custom shaders, but using a low level DX9 style constant register API as opposed to the friendlier Effect system used by XNA. This beta release made it possible to use high performance 3D in a Silverlight web app, but it wasn't exactly easy to do so!
- In September, the Silverlight 5 RC added new features including the same five built-in effects as XNA 4.0, plus an XNA compatible math library. David Catuhe writes about these changes.
- Now, the Silverlight Toolkit provides vastly improved XNA compatibility, including ContentManager, Model, SpriteBatch, Mouse, Keyboard, custom effects, and new Visual Studio templates for getting started with Silverlight 3D. Again David has a great intro.
article about the Content Pipeline:
I don't normally name names, as I'm lucky to work with so many talented people and this blog is my chance to take credit for all their hard work :-) But in this case I want to give a shout out to Aaron Oneal and David Catuhe, who went above and beyond to pull all the pieces together and make this happen. Nice job guys!