In this article, we are going to take a look at the new XNA 3D API and Improved Graphics Stack. Please review the Roadmap for the series before going any further.
The Roadmap for this Series
I’ve included the Roadmap for the series below as you may want to visit other sections as you learn Silverlight 5. I picked the following features as I thought that you may find them useful in your day-to-day work. If you want a specific topic covered then please leave it in the comments below.
- Introduction to SL5 – provides a brief history of Silverlight and relevant links.
- Binding – Ancestor Relative Source Binding and Implicit Data Templates.
- Graphics [This Post] – XNA 3D API and Improved Graphics Stack.
- Media – Low-Latency Sound using XNA and Remote Control and Media Command (Keys) Support.
- Text – Text Tracking and Leading, Linked and Multi-column Text, OpenType Support, Pixel Snapped Text and TextOptions.
- Operating System Integration Part 1 – P/Invoke, Multiple Windows and Unrestricted File System Access in Full Trust.
- Operating System Integration Part 2 – Default Filename for SaveFileDialog, 64-bit browser support and Power Awareness.
- Productivity and Performance – XAML Binding Debugging, Parser Performance Improvements and Multi-core JIT for improved start-up time.
- Controls – Double and Triple click support, PivotViewer and ComboBox Type-Ahead.
- Other items – In-Browser HTML, PostScript and Tasks for TPL.
What exactly is XNA?
Before we get started diving into XNA, it’s important to understand what it is first:
Microsoft XNA is a set of tools with a managed runtime environment provided by Microsoft that facilitates video game development and management. XNA attempts to free game developers from writing "repetitive boilerplate code" and to bring different aspects of game production into a single system.
As you can see XNA got it’s roots for video game development. So you may be asking, “What is it doing in Silverlight 5?” Developers have realized for a long time that things like 3D Graphics inside of a web browser would be beneficial for many applications including : medical, transportation, government and of course gaming. They requested the feature using Microsoft’s UserVoice and Microsoft added it as part of Silverlight 5. Silverlight 5 implementation of 3D is the most powerful yet running inside of a web browser.
Now that we know a little more about XNA, let’s get started…