Entries:
Comments:
Posts:

Loading User Information from Channel 9

Something went wrong getting user information from Channel 9

Latest Achievement:

Loading User Information from MSDN

Something went wrong getting user information from MSDN

Visual Studio Achievements

Latest Achievement:

Loading Visual Studio Achievements

Something went wrong getting the Visual Studio Achievements

Getting physical Windows 8 Modern UI XAML with the Physics Helper XAML

Today's Mobile/Modern UI Monday project from Andy Beaulieu is in an area that I just can't get enough of, Physics in our app's. This project not only brings us a Physics Helper, but one for XAML and works in three of the major XAML platforms, Windows 8/Modern UI, Windows Phone and Silverlight

Physics Helper XAML Update

Today I released version 1.1 of Physics Helper XAML, which allows you to easily create 2D Physics Games and Simulations for the following platforms:

  • Windows 8
  • Windows Phone 7
  • Silverlight 5

XAML has great support for 2D graphics including hardware acceleration, making it an excellent candidate for 2D physics based games. And because of XAML's extensive form controls and powerful project templates, it makes it super easy to create your games menus and input UI. Also, it is possible to target the three platforms using a single set of XAML assets for graphics and logic.

I personally used the Physics Helper XAML project as the core for my first (and award winning) Windows 8 game, Physamajig. To get started yourself, I recommend:

  • download the source code and check out the sample projects which target all three platforms.
  • read the Getting Started docs (currently these docs mention pre-release version of the tools but they will be updated soon)
  • use the forums to ask questions

Physics Helper XAML

Project Description
Physics Helper XAML allows you to easily create 2D physics based games and simulations for Windows 8, Windows Phone 7 and Silverlight 5 using C# or VB. It is a port of the Physics Helper and uses the Farseer Physics Engine.

Why a Separate Version?
When I began porting the Physics Helper project to Windows 8, I realized that there were many breaking changes in WinRT and missing functionality such as Behaviors. It was much simpler to create a new version for Metro/WinRT and then port that new version to Windows Phone and other platforms. I think that the end result is much simpler and cleaner, as an added bonus!

For more details and how to get started, see the Documentation page.

image

Here's a snap of the Windows 8 Solution;

image

imageimageimage

And of it running (which compiled and ran for me the very first time, which is always nice... Wink

image

image

image

This is one of those projects that you really need to play with or see in a video. Static pictures just doesn't do it justice.

As you saw mentioned above, there's a nice getting started guide too;

Windows 8 Metro Getting Started

...

Sample Projects

Once you have a development environment and hardware setup, you can download the source codeand check out the sample projects inside the VS11 solution.

Demo.Simple

Set Demo.Simple as your startup project and run the solution. This shows a no-code scenario with a ragdoll and stack of blocks. Here are the main parts of the simple demo:
  • ucBlock.xaml defines the Block sprite.
  • ucRagDoll.xaml defines a rag doll with appendages and joints bringing them together.
  • MainPage.xaml creates instances of ucBlock and ucRagDoll. There is one line of code in MainPage.xaml.cs which calls ScaleToObject. This allows the game canvas to scale to full screen.

Demo.Advanced

Set Demo.Advanced as your startup project and run the solution. This shows how to dynamically add and delete user controls, track performance, and use nested Storyboard animations inside physics objects. Here are the main highlights of the advanced demo:
  • the code-beind file MainPage.xaml.cs shows how to handle the TimerLoop and Collision events raised by the PhysicsCanvas.
  • The AddAnItem method shows how to dynamically add a complex UserControl containing multiple sprites and joints.

...

Using Visual Studio

Let's walk through creating a simple physics simulation using XAML inside Visual Studio.

...

With this helper, your just a little code away from having physics in your next Windows 8 Modern UI app...

Tags:

Follow the Discussion

  • I used this back when the WP7 tool first came out and it was quite easy to use even for me and I'm not a software programmer.
    It was fun to mess with and if I WAS a programmer I'd probably use it to create XY controllers that bounce around their bounding boxes while sending out they're co-ordinates over MIDI or OSC like the ones from the Lemur.

  • JesseJesse

    My favorite development library! I am making my first game using this and I am really impressed!

Remove this comment

Remove this thread

close

Comments Closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums,
or Contact Us and let us know.