Windows phone 7 series casual games in silverlight
Download
1 / 33

Windows Phone 7 Series: Casual Games in Silverlight - PowerPoint PPT Presentation


  • 158 Views
  • Uploaded on

Windows Phone 7 Series: Casual Games in Silverlight. Andy Beaulieu Silverlight MVP MCT, MCSD.NET http://www.andybeaulieu.com. About Me. Andy Beaulieu Based in Syracuse, NY MCT, MCSD.NET Microsoft MVP Silverlight WPF & Silverlight Insiders Full-time Developer, Part-time Trainer

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Windows Phone 7 Series: Casual Games in Silverlight' - aurek


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Windows phone 7 series casual games in silverlight

Windows Phone 7 Series:Casual Games in Silverlight

Andy Beaulieu

Silverlight MVP

MCT, MCSD.NET

http://www.andybeaulieu.com


About me
About Me

  • Andy Beaulieu

    • Based in Syracuse, NY

    • MCT, MCSD.NET

    • Microsoft MVP Silverlight

    • WPF & Silverlight Insiders

    • Full-time Developer, Part-time Trainer

    • .NET Community:

      • Speaker at User Groups, Code Camps, Conferences

      • User Group Leader - www.cnydevelopers.net

      • INETA Volunteer

    • Blog and Creations:

      • www.andybeaulieu.com

      • www.spritehand.com


Windows phone 7 series
Windows Phone 7 Series

  • Fresh Start for Mobile Windows

    • Consumer Market

    • No Backwards Compatibility

  • Available to Consumers

    • Fall 2010

  • Developer Tools

    • VERY EARLY PREVIEW

    • Some bugs/missing API’s

    • Emulator is Shaky


The device
The Device

  • Screen Resolution

    • Initial Devices

      • 800 x 480 pixels

    • Later Devices

      • 480 x 320 pixels

  • Touch Input

    • Capacitive Multitouch


Two Flavors of Applications

  • Modern XAML/event-driven application UI framework

  • Rapid creation of visually stunning apps

  • Metro-themed UI controls

  • HTML/JavaScript

  • 500,000 developers spanning Windows and web

  • High performance game framework

  • Rapid creation of multi-screen 2D and 3D games

  • Rich content pipeline

  • Mature, robust, widely adopted technology spanning Xbox 360, Windows, and Zune


Two Flavors of Applications

  • Modern XAML/event-driven application UI framework

  • Rapid creation of visually stunning apps

  • Metro-themed UI controls

  • HTML/JavaScript

  • 500,000 developers spanning Windows and web

  • High performance game framework

  • Rapid creation of multi-screen 2D and 3D games

  • Rich content pipeline

  • Mature, robust, widely adopted technology spanning Xbox 360, Windows, and Zune

For WP7 Version 1:

Supported Out of Browser ONLY

Not Supported in IE for WP7


It s silverlight 3 not 4
It’s Silverlight 3 (NOT 4)

  • WELL, EXCEPT FOR A “FEW THINGS…”

  • System InformationType: System.Windows.AnalyticsType: System.Windows.GpuInformationNetworkingType: System.Windows.CrossDomainAccessProperty: System.Net.Browser.WebRequestCreator.BrowserHttpControlsProperty: System.Windows.Controls.HyperlinkButton.TargetNameLocal MessagingType: System.Windows.Messaging.ListenFailedExceptionType: System.Windows.Messaging.LocalMessageReceiverType: System.Windows.Messaging.LocalMessageSenderType: System.Windows.Messaging.MessageReceivedEventArgsType: System.Windows.Messaging.SendCompletedEventArgsType: System.Windows.Messaging.SendFailedExceptionGraphics & MediaType: System.Windows.Media.Effects.PixelShaderProperty: System.Windows.Media.Effects.ShaderEffect.PixelShaderProperty: System.Windows.Controls.MediaElement.AttributesProperty: System.Windows.Controls.MediaElement.MarkersEvent: System.Windows.Controls.MediaElement.MarkerReachedApp ModelProperty: System.Windows.Interop.SilverlightHost.SourceProperty: System.Windows.Interop.SilverlightHost.InitParamsProperty: System.Windows.Interop.Settings.EnableAutoZoomProperty: System.Windows.Interop.Settings.EnableHTMLAccessProperty: System.Windows.Interop.Settings.WindowlessMethod: System.Windows.AssemblyPart.Load(System.IO.Stream)Out of BrowserType: System.Windows.InstallStateType: System.Windows.CheckAndDownloadUpdateCompletedEventArgsType: System.Windows.CheckAndDownloadUpdateCompletedEventHandlerType: System.Windows.OutOfBrowserSettingsProperty: System.Windows.Application.InstallStateProperty: System.Windows.Application.IsRunningOutOfBrowserEvent: System.Windows.Application.InstallStateChangedEvent: System.Windows.Application.CheckAndDownloadUpdateCompletedProperty: System.Windows.Deployment.ExternalCallersFromCrossDomainProperty: System.Windows.Deployment.OutOfBrowserSettingsType: System.Windows.WindowSettingsProperty: System.Windows.Interop.Content.IsFullScreenProperty: System.Windows.Interop.Content.ZoomFactorEvent: System.Windows.Interop.Content.FullScreenChangedEvent: System.Windows.Interop.Content.Zoomed

3


Getting started
Getting Started

WARNING:

VERY EARLY PREVIEW!!!

  • Visual Studio 2010 RC

  • Silverlight 4 RC Tools

  • Expression Blend 4 Beta

  • Windows Phone Developer Tools

    • Visual Studio 2010 Express for Windows Phone CTP

    • Windows Phone Emulator CTP

    • Silverlight for Windows Phone CTP

    • XNA 4.0 Game Studio CTP

  • Expression Blend Add-in Preview for Windows Phone

  • Expression Blend SDK Preview for Windows Phone


The emulator
The Emulator

  • “Real” Emulator

    • Boots into OS

  • Stripped Down OS

    • Only IE

  • Slow to Boot first time

    • Leave it Running!

  • Can use Host GPU IF…

    • DDI Version >= 10

    • Driver Model >= WDDM 1.1

    • Check for latest drivers!

  • Enable Virtualization in your BIOS!

  • Can support Multitouch w/app monitor



Automatic gpu acceleration
Automatic GPU Acceleration

  • Automatically Applied to

    • StoryBoard Animations

    • Perspective 3D (PlaneProjections)

  • Uses Video Card for Transform, Rotate, Scale, Rectangular Clip

  • NOT automatic for Procedural Animation!



Performance statistics
Performance Statistics

  • Set EnableFrameRateCounter = true

  • A – Render Thread Framerate

  • B – UI Thread Framerate

  • C – Amount of Video Memory Used

  • D – Total # of Textures Used

  • E – Total # of Intermediate Textures Used

  • Set EnableCacheVisualization = true

    • Tinted items are NOT being cached by GPU


Procedural animation
Procedural Animation

  • Typical games have a “GAME LOOP”

    • Executes once per frame

    • Handle AI, Collisions, etc.

  • Use CompositionTarget.Rendering

    • Executes once per rendered frame

    • Executes separate from UI thread

  • Final Hardware will execute 30 Frames Per Second



Behaviors
Behaviors

  • Abstract Logic from Design

  • Supported in Blend 3 + Blend 4

  • Drag/Drop onto Design Surface for Runtime Logic

  • Great for Games

    • Physics Behaviors

    • Collision Triggers

    • Sound Behaviors



Sound support
Sound Support

  • Silverlight normally uses MediaElement

    • Support MP3, WMA

    • Bugs in CTP

  • XNA Sound Support

    • Supports WAV

    • Support Pitch, Volume, Pan



Input via buttons
Input via Buttons

Back – Start – Search Only

NOT usable for Games!


Input via applicationbar
Input via ApplicationBar

  • We can add “Buttons” to ApplicationBar

  • Only raise a Click event

    • No Down/Up Events

    • Limited Use in Games

  • Defined in Microsoft.Phone.Shell


Demo applicationbar

DEMO: ApplicationBar


Input via accelerometer
Input via Accelerometer

+Y

1

Measures force applied on each axis over time

  • Not supported by Emulator

  • Can be faked using Mouse Input + Perspective Transform

-Z

-X

+X

+Z

-Y



Input via touch
Input via Touch

  • UIElement Class contains Events

    • ManipulationStarted

    • ManipulationDelta

    • ManipulationCompleted

  • ManipulationDelta

    • Provides Scale and Transform

    • No Rotation in CTP

  • Supported in Emulator

    • Requires Multitouch Monitor


Vibration

  • Vibrates the phone for a given duration

VibrateControllervc = VibrateController.Default;

vc.Start(TimeSpan.FromSeconds(3));


Adding a splash screen
Adding a Splash Screen

  • Create a JPEG Image

  • 800 x 480 pixels

  • Name it splashscreenimage.jpg

  • Set Build Action to “Content”


Demo adding a splash screen

DEMO: Adding a Splash Screen


The marketplace hub

Monetization

The Marketplace Hub


Monetization

Try and buy

Detailed product description

Screen shots

Reviews & ratings

Related apps

Optional game content rating

More apps by developer


Monetization

  • 70% revenue share

  • Trial API

  • Credit card & mobile operator billing

  • Paid, ad funded and free apps


Deployment process
Deployment Process

Develop

& Debug

Submit& Validate

Certify

& Sign

Windows Phone Application Deployment Service

Marketplace


Resources
Resources

My Blog

http://www.andybeaulieu.com

Getting Started (CTP)

http://adamkinney.wordpress.com/2010/03/19/install-checklist-for-silverlight-4-rc-blend-4-beta-and-windows-phone-developer-tools-from-mix10/

Developer Portal

http://developer.windowsphone.com/windows-phone-7-series/

Multitouch Intro

http://msdn.microsoft.com/en-us/library/ff426933(VS.96).aspx

Manipulation Sample for Silverlight

http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=4b281bde-9b01-4890-b3d4-b3b45ca2c2e4


ad