9. Game
• Controls the Game’s loop, scoring and
interactions among Sprites
• Is a Silverlight UserControl
10. Sprites
• Sprites are things that move around
• In DropZone, they are Silverlight
Controls
• Have properties to keep track
positions
11. Thrower
• Drops an object
– It’s supposed to be “Dropper” but it does not
sound well
• Is a Sprite
• Default character is a
“Jejemon”
Jejeje
SpriteCatcher
12. Catcher
• Catches the objects dropped
by the Thrower
• Is a Sprite
• Default character is “Isamu” *
SpriteCatcher I thought I
was
playing
Starcraft II
http://en.wikipedia.org/wiki/Isamu_Noguchi
13. Drop
• The object thrown
• Is a Sprite
• Default object is an egg
SpriteDrop
17. Windows Phone 7
Games Development
With XNA 4.0
Allan Spartacus Mangune
Microsoft MVP ASP.NET
18. 18
Agenda
• Windows Phone 7 Game Development
• XNA Game Studio vs. Silverlight
• XNA Game Development
19. 19
Windows Phone 7 Development
• Very impressive 3D games is within reach
• 2D games are enjoyable to play to too
• Puzzle, strategy, role-playing
• Switch on play device like Windows Phone 7
can make these games extremely popular
• Board and card games have potential huge
market reach
• Novelty games have started to gain ground on
other platforms like iPhone
20. 20
Who Should Consider Silverlight?
• Companion application to existing Xbox 360
• UI controls have the same look and feel of
Windows Phone
• Composite video
• Your games need to display web pages with IE
• Your games require keyboard support with no
additional components
• You simply are a Silverlight developer
21. 21
Who Should Consider XNA?
• Comfortable with Update/Render loop
• Coming from Xbox 360 or PC game
development
• True 3D game
• Content pipeline projects
• Access to vertex and pixel shaders on
Windows Phone 7
• Heavy use of Sprites
• Access a high-quality scaler
22. 22
XNA Game Development
• Have full access to Windows Phone device
features
• Multi-touch screen, accelerometer,
sound and music output
23. 23
Tools
• XNA Game Studio 4.0
• XNA Framework and Content Pipeline
• Windows Phone Developer Tools
If you are building a Windows Phone companion application to your existing Xbox 360 or PC game, and plan to show primarily statistics and other information, then Silverlight is a great choice for your game. Silverlight gives developers the ability to leverage the built-in UI controls on the phone. Those controls can be used right out of the box, and will match the look and feel of Windows Phone elements, with no customization on your part. An XNA Game Studio developer that wanted to have controls matching the look and feel of Windows Phone would need to build and maintain those controls for themselves. If video is a key element of your game, and you want the ability to show video in a portion of your screen (as opposed to full screen), then Silverlight is required. Silverlight allows you to use the media control to composite your video directly into a portion of your application. XNA Game Studio games, on the other hand, must show video full screen, and cannot composite that video.Similarly, Silverlight is required if your game is going to be displaying web pages via the built-in Internet Explorer (IE) control. Silverlight applications have the ability to host the IE control, and composite that control into their UI. XNA Game Studio games can use http(s), but cannot use the IE control.If your application requires keyboard support, then you should consider Silverlight. Silverlight applications get access to the software keyboard by default. XNA Game Studio games would need to build their own software keyboard control in order to require keyboard input. Both Silverlight and XNA Game Studio can take advantage of hardware keyboards, when they are present. Windows Phone 7 offers hardware keyboards as an option. Not all devices will have a hardware keyboard. If your development background contains experience working with other web technologies, then Silverlight will offer a shorter ramp-up time. If you are porting an existing game, for instance, the porting process will most likely take less time if you target Silverlight instead of XNA Game Studio.
If you are more comfortable with the standard Update/Render loop for developing your games, then XNA Game Studio is the choice for you. If you are coming from Xbox 360 or PC game development, then XNA Game Studio’s application model will feel more comfortable to you. XNA Game Studio was built by game developers, for game development. As such, all of the constructs in the framework are designed specifically to produce games.If you are building a true 3D game, then XNA Game Studio is required. Silverlight on Windows Phone can simulate 3D by rendering to 2D sprites ahead of time, and prebaking animations. XNA Game Studio has full 3D support, including support for skinned animations.XNA Game Studio games gain access to XNA Content Pipeline projects, which allow build-time processing of assets. Silverlight doesn’t have an analogous technology. A Silverlight developer would need to write their own pipeline from scratch in order to have the same functionality.XNA Game Studio games get access to a library of hardware accelerated vertex and pixel shaders on Windows Phone 7. Silverlight does not have access to shaders on Windows Phone 7 devices. XNA Game Studio applications gain control over the video card’s state, allowing those developers to set render states to their liking. This includes states such as alpha blending, wireframe or solid, etc. The driver for Windows Phone 7 is a Direct3D implementation, and is similar in functionality to the desktop Direct3D.If your games make heavy use of sprites, or animates more than a handful of sprites on screen, your title will likely be more efficient with XNA Game Studio. Silverlight performs most of its rasterization and composition on the CPU, while XNA Game Studio makes heavy use of the graphics hardware. Expressed another way, if parts of your scene is going to change every frame, then XNA Game Studio is for you.Windows Phone 7 devices have a screen that is 800x480 pixels. That is a lot of pixels! Many games will run into fill rate issues if they have any overdraw at all. XNA Game Studio games can access a high-quality hardware scaler, which will allow game developers to render to a much smaller target, and have that render scaled (for free) via dedicated hardware, to the device’s native resolution. If you want to enable post-processing, or if you expect that you might have some overdraw, then XNA Framework is likely for you.