Housebuilding with John Papa and Sliverlight 5 at MIX11
- Posted: May 04, 2011 at 6:00 AM
- 8,530 Views
- 2 Comments
Loading User Information from Channel 9
Something went wrong getting user information from Channel 9
Loading User Information from MSDN
Something went wrong getting user information from MSDN
Loading Visual Studio Achievements
Something went wrong getting the Visual Studio Achievements
In order to this solution to open and compile you'll likely need (well I needed anyway) both Microsoft Expression Blend Preview for Silverlight 5 and Microsoft Silverlight 5 Beta Tools for Visual Studio 2010 Service Pack 1
Once that's installed you should be able open and run the solution. Remember though that this is demo code. It's not a 100% complete application and here's stuff in it that isn't hooked up. But it's a cool demo...
As you'd expect this is a MVVM based project
Much of the app's magic is in the Controls.
Here's a bit more information about the code from his Silverlight 5 3D Housebuilder Project Shown at MIX11 post.
- Select a type of house to start from a base model
- Add details like doors and windows and customize their color
- Change the camera angle using the arrow keys
- The brick house has layering, so you can remove layers and view the interior of the house
- View the final price list of materials
- Integrate Silverlight UI with XNA 3D using DrawingSurface
- Load and render a 3D model (partial COLLADA support)
- Configure the graphics pipeline for rendering
- Load and mipmap textures
- Apply pixel and vertex shaders
- Project 2D mouse coordinates into 3D space
- Use the MVVM pattern
- Create custom UI controls
- The color swatches in step 2 use binding in style setters to apply the colors to the door and shutter models
- The construction list in step 3 uses implicit data templates
- Some templates in the construction list in step 3 use the RelativeSource Ancestor feature to load their ItemsSource
- The demo set a breakpoint on the price of the door in the door template (in the construction list in step 3) to demonstrate data binding debugging. You can do this anywhere you choose.
So if you saw John's MIX11 demo during the Daye 2 Keynote, or just want to see a some how the new 3D stuff will work in Silverlight 5, this code is waiting for you...