SlideShare uma empresa Scribd logo
1 de 58
signing great XNA games
for Windows 8
Dean Ellis
dean@infinitespace-studios.co.uk
@InfSpaceStudios

Dominique Louis
dominique@xamarin.com
@SoftSavage
You have your great
ideas and exciting
game designs…
http://bit.ly/GJ_GreatGames




Key Ideas for Windows 8 Casual Games
http://bit.ly/GJ_NavDesign




A great Windows 8 game will
make sure that navigation
between all experiences is a
fast, fluid, and delightful
experience
http://bit.ly/GJ_NavDesign




•   Makes users first experience a
    complete one.

•   Provides a great mechanism for
    providing users with updates/fresh
    content
http://bit.ly/GJ_SemZoom




•   Semantic Zoom allows a user
    to get a different view of your
    data
    • Navigate between different
      levels

    • Quickly show unlocked
      content, recently released
      levels, or new achievements
http://bit.ly/GJ_NavDesign




•   Great way to keep your game
    as front-and-centre
    experience.

•   Can use the top app bar as
    navigation home
http://bit.ly/GJ_CommDesign




•   Will the control be used very
    frequently?

•   Is the control crucial to the
    playing of the game?
http://bit.ly/GJ_Touch




•   Users approach tablets and
    touchscreens in a variety of
    ways

•   Windows 8 accommodates a
    multitude of interaction
    variations
http://bit.ly/GJ_Layout
http://bit.ly/GJ_AppManifest
http://bit.ly/GJ_StateMgmt




           Game gets 5s to     Game is not notified
           handle suspend       before termination


  User
Launche
s Game
          Game notified when
              resumed


 Splash
 screen
Additional Ideas for your game….
http://bit.ly/GJ_LiveTiles



• At-a-glance information delivery in a natural, attractive
  format

• Draw the user back into the app with a single tap with
  fresh, tailored content via Live Tiles

• Send tile updates even when your app isn’t running

• Secondary tiles provide an entry point into a specific
  experience within your app

•   Scenarios: game-play status, latest leaderboard
    positions, multi-player messages, game news
http://bit.ly/GJ_Toast




•



•



•

•
http://bit.ly/GJ_Contracts
http://bit.ly/GJ_Contracts



Provides users with a familiar and
natural way to search for items
across game.

Scenarios:

•   A friend to start a multiplayer
    game against.

•   A user name on a leader
    board.

•   An achievement.

•   A specific level in a game with
    many levels.
http://bit.ly/GJ_Contracts



Provides a way to connect the
player of your game to their social
networks, friends, or other apps.

From your game:

•   Sharing game levels, high
    scores, screenshots, custom
    objects etc.

To your game:

•   Receiving in-game
    content, images, video etc.
http://bit.ly/GJ_Contracts




The settings charm provides a
familiar and consistent way to
modify an apps settings

More settings menus can be
added for account management
or game specific menus.

Scenarios:

User-account info, help
content, control
mappings, notification
settings, about app info, support
info etc.
http://bit.ly/GJ_Contracts



This allows your game to share it’s
content with other apps seamlessly and
consistently.

•   The file picker makes it easy to
    organize content. You can also
    access content from other apps

Scenarios:

•   Exporting images from game to
    start screen background,

•   using music from music app for
    game.
http://bit.ly/GJ_Contracts




Extend your experience beyond
Windows 8 and push your
content to devices on your local
network.

The ‘PlayTo’ feature allows relevant
controls to be accessed on the
first device without compromising
the display on the other.
http://bit.ly/GJ_Sensors
http://bit.ly/GJ_Splash




•   Many games may take longer
    than the expected couple of
    seconds to load.

•   If that's true of your
    game, ensure that you provide
    some sort of indication to the
    user that the game is actively
    loading
http://bit.ly/GJ_GreatGames




•   Communicate to users when
    the game is in a paused state:

•   removing them from the in-
    game experience and putting
    them back in the central hub

•   or by presenting a pause
    overlay or pause screen
http://bit.ly/GJ_GreatGames




Leaderboards are a crucial
component for game enthusiasts.

The competition factor keeps
users engaged in your game and
encourages other users in their
network to return and maintain
their rankings.

Utilise location services to access
local standings.
http://bit.ly/GJ_GreatGames




Drive engagement beyond
standard gameplay with
achievements.

Utilize weight, color and size to
distinguish between items that are
close to being completed.
http://bit.ly/GJ_RoamingData




• Most people have more than one Windows PC.

• Make your game a continuous and consistent
  user experience across all their Windows 8 PCs

Roaming Scenarios:

• Game settings and configuration

• App licenses and in-app purchases from the
  Windows Store
http://bit.ly/GJ_WAMS



•   Windows Azure Mobile
    Services makes it incredibly
    easy to connect scalable cloud
    backend to your games.

•   Easily store structured data in
    the cloud that can span both
    devices and users,

•   Integrate it with user
    authentication

•   Send out updates to clients
    via push notifications
http://bit.ly/GJ_W8Store

Designed for discovery
• Spotlight, Recommend, Browse/Fil
   er, Search
• IE10 & Deep links


Unprecedented reach
• Global reach: 200+ markets,
• 100+ languages


Flexible business models
• Free, paid, in-app, trials
• 3rd party in-app & advertising
    support


Pricing
• Developers control pricing
• Up to 80% revenue share
http:// bit.ly/GJ_W8Samples
Windows 8 Samples


http://bit.ly/GJ_W8API
Windows 8 Store Apps API


http://bit.ly/GJ_AppDevBlog
Windows 8 Store Apps Dev Blog


http://bit.ly/GJ_W8Forums
Windows 8 Store Apps Forums
•   Good luck with the Three Thing Game!

•   Thank you for your enthusiasm, support and ideas!

•   Looking forward to seeing some great games!

Post Three Thing Game:
•    Register for a Windows 8 Developer Store account
     DreamSpark members have FREE Windows Store subscription!
     www.dreamspark.com

•    Build and sell great W8 store apps/games!
     http://www.microsoft.com/uk/msdn/windows8/
•Dominique Louis – Xamarin
•Dean Ellis    – Xamarin(soon)
Agenda
          Overview
          History


          Games


          Porting


          Demos


          Questions
XNA 4.0 Supported Platforms

                     XNA

                   .NET 4.0

                  DirectX 9/11

Windows Phone 7     Windows      Xbox 360
Introducing MonoGame
OpenSource implementation of XNA 4 API
    2D SpriteBatch
    3D (APIs and Model Loading)
    Load Existing XNA compiled assets (*.xnb)
    Sound and Music
    Input (Mouse, Keyboard, Touch, Gamepad)
    Effects (Basic Effects & Some Custom Shaders)


                       Write Once, Play Everywhere
Introducing MonoGame
Only way to get your XNA game onto Windows 8!

Actively being developed and promoted by core team members
    Me, Dean ( Xamarin )
    Tom & his team ( Sickhead Games )
    Steve ( Konaju Games )
    Aranda ( Gnomic Studios )
    Espes
High Code Re-use
                       Write Once, Play Everywhere
Brief History of MonoGame?
Project Started in June 2009 as XNATouch by Jalfx

I joined on October 26th 2009 ( co-incidence?? )
Dec 2009 – v0.7 (2D and iOS only)
Oct 2011 - v2.0 ( Added 2 platforms, Renamed to MonoGame)
Dec 2011 - v2.1
Feb 2012 – (3D codedrop from Flying Dev Studios)
March 2012 – 2.5 (Tom and Sickhead Games)
June 2012 -2.5.1 (11,000 downloads)
October 2012 – 3.0 BETA(available now!)
Contributing Companies
Contributing individuals
         Oliver Brown            Dean Ellis          Tophathacker                         Koda          Turtle Games
                                                       David Lively                       Carl Ådahl
                        Tom Spilman                                                Niel
Clancey                                       Marshall Ward
                 Grapes
   Nezz             Randolph Burt                Espes                Danzel
                                                                                             Javier Fernandez
                                                      Nicolas Coderre
               Thiago Pastor             Adrian Batzill                                     Inverness
                                Edward Rudd                 Akshay Arora
                                                                                            Andre Esteve
               Raistlinthewiz             David Leaver                  Jeff Johnson
James Lupiani
                                Christian Zangl                          Jorge Cantón Ferrero
           Mgroves
                                  Steve 'Sly' Williams                    Geoff Norton          Jordan Phillips
         Tom Gooding                Dominique Louis                             Jamesford42                       Taskbit
                                                    Tapani Värjölä                        Deathcradle
                  Jeremy Bell
  Lukas                                           Jadaml
              Ádám L. Juhász                                                             Ray Batts
                Renaud Bédard                                 Nicolas Leonard
Jhllnd                                                                                          Kenneth Pouncey

                                  Write Once, Play Everywhere
The Future

   Embracing XNA: APIs, Shaders etc
   Extend: New platforms, APIs, Features
   Open: You can make it better or customize it for your game


 XNA was a great foundation
 MonoGame will continue to take it to new levels


                      Write Once, Play Everywhere
MonoGame Supported Platforms

                         MonoGame

 Windows8
                      Xamarin Xamarin
 .NET 4.5
            NET 4.0   MonoTouch   Mono for   Mono
                                  Android

 SharpDX
 Direct X                 OpenGL / OpenAL
Future Platforms
                          In Progress
     PlayStation Mobile
                          2D Working

                          In Progress
        Raspberry Pi
                             2D, 3D

      Google Chrome        Planned

      Windows Phone 8      Planned

           Ouya            Planned
High Code Re-use
 Xamarin compilers enable developers to build fully native iOS and Android games and apps in
   C#, that can share code with Windows apps. Through code re-use and sharing, and by
   unifying mobile app development in C#, Xamarin makes it possible to deliver
   gorgeous, performant, native apps for all major device platforms quickly
Games
Commercial games we know of
      iOS*
               30+
      Android*
               15+
      MacOS, Linux
               10+
      Windows 8
            •     10+
      Chrome
               Bastion
*Xamarin compilers makes it possible for MonoGame titles to reach iOS and Android users.
                                                 Write Once, Play Everywhere
Windows 8 Games
Porting to MonoGame
 Project Setup
       From scratch : ~30-60 minutes
       With Templates : ~15 minutes


 Platform Specific
       Resolutions
       Sound/Video


 Minimal #ifdefs
                       Write Once, Play Everywhere
Things to think about
It's Being used in AAA games
 It's Extendable
 It's Growing(games, developers, platforms)
 It's In your hands
 It's Nnow supported by Microsoft
 It's Currently the only way to Windows 8
 It's OpenSource
 It's Active
 Lots of examples
                   Write Once, Play Everywhere
Demo
Why Games.... Demand
  Most titles in the Windows
  Phone apps store are
  entertainment and utility apps
  Customers are downloading
  more games than any other
  type of app
  Customers are willing to spend
  money for the privilege
  There is an opportunity here
  to give customers what they
  want
Type of Games....




   Freemium games do better than paid games
   Action games are the best bet to turn a quick buck
   Strategy games dominate long-term
   Simulation games account for the second largest share.
   Opportunity to carve out a niche ( grow your fan base )
                                   * Taken from http://www.appannie.com/blog/mobile-games-that-last/
Summary
  Games are the #1 download and #1 money making app category
  Pick your niche, grow from there
  MonoGame provides a solution to get your cross platform game running as a
  Windows 8 Store App
  MonoGame provides a cross platform solution so that you can leverage your
  existing XNA development effort, across multiple marketplaces
  (iOS, Android, MacOS, Linux, PlayStation Mobile... (top secret) )
  Follow the certification guidelines (WACK) to make your app Windows 8 Store
  ready
Contact
Dean Ellis
Site : www.infinitespace-studios.co.uk
Email : dean@infinitespace-studios.co.uk
Twitter : @InfSpaceStudios

Dominique Louis
Email : dominique@xamarin.com
Twitter : @SoftSavage
Questions ??
MonoGame
Site : www.monogame.net
Repo : www.github.com/mono/MonoGame (fork away)
Twitter : @MonoGameTeam
Youtube : youtu.be/MonoGameTeam

Mono
Site : www.mono-project.com
Repo : www.github.com/mono/

Xamarin
Site : www.xamarin.com
Twitter : @XamarinHQ

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

L21 Games
L21 GamesL21 Games
L21 Games
 
Gaming Consoles
Gaming ConsolesGaming Consoles
Gaming Consoles
 
Windows10
Windows10Windows10
Windows10
 
PPT / slide presentation on Xbox
PPT / slide presentation on XboxPPT / slide presentation on Xbox
PPT / slide presentation on Xbox
 
Cyclo ds evomanualv156
Cyclo ds evomanualv156Cyclo ds evomanualv156
Cyclo ds evomanualv156
 
Readme
ReadmeReadme
Readme
 
Game Console Industry Report
Game Console Industry ReportGame Console Industry Report
Game Console Industry Report
 
TGA Capability Booklet
TGA Capability BookletTGA Capability Booklet
TGA Capability Booklet
 
Cornish
CornishCornish
Cornish
 
Gaming console final presentation
Gaming console final presentationGaming console final presentation
Gaming console final presentation
 
Video game research vg
Video game research vgVideo game research vg
Video game research vg
 
Gaming consoles
Gaming consolesGaming consoles
Gaming consoles
 
Gaming Console Report By Fahad
Gaming Console Report By FahadGaming Console Report By Fahad
Gaming Console Report By Fahad
 
The Game Industry - organisations
The Game Industry - organisationsThe Game Industry - organisations
The Game Industry - organisations
 
The future of video games
The future of video gamesThe future of video games
The future of video games
 
Comparison of Doom and Obscure Essay
Comparison of Doom and Obscure EssayComparison of Doom and Obscure Essay
Comparison of Doom and Obscure Essay
 
Xbox 360
Xbox 360Xbox 360
Xbox 360
 
Reliance digital Reviews Sony Xperia S
Reliance digital Reviews Sony Xperia SReliance digital Reviews Sony Xperia S
Reliance digital Reviews Sony Xperia S
 
VideoGames
VideoGamesVideoGames
VideoGames
 
Playstation 4
Playstation 4Playstation 4
Playstation 4
 

Semelhante a Microsoft Windows 8 Monogame Gaming Three Thing Game

Gameathon UK Windows 8 Lecture
Gameathon UK  Windows 8 Lecture Gameathon UK  Windows 8 Lecture
Gameathon UK Windows 8 Lecture Lee Stott
 
Delta Engine @ CeBit 2011
Delta Engine @ CeBit 2011Delta Engine @ CeBit 2011
Delta Engine @ CeBit 2011Karsten Wysk
 
1-Introduction (Game Design and Development)
1-Introduction (Game Design and Development)1-Introduction (Game Design and Development)
1-Introduction (Game Design and Development)Hafiz Ammar Siddiqui
 
Windows 8 and MonoGame Presentation at Staffordshire University
Windows 8 and MonoGame Presentation at Staffordshire UniversityWindows 8 and MonoGame Presentation at Staffordshire University
Windows 8 and MonoGame Presentation at Staffordshire UniversityLee Stott
 
Developing for Xbox as an Indie in 2018
Developing for Xbox as an Indie in 2018Developing for Xbox as an Indie in 2018
Developing for Xbox as an Indie in 2018Nick Landry
 
Road to Success (July 1st) - Mobile Game Development Alternatives - Andrew Bu...
Road to Success (July 1st) - Mobile Game Development Alternatives - Andrew Bu...Road to Success (July 1st) - Mobile Game Development Alternatives - Andrew Bu...
Road to Success (July 1st) - Mobile Game Development Alternatives - Andrew Bu...SanaChoudary
 
Developing games for consoles as an indie in 2019
Developing games for consoles as an indie in 2019Developing games for consoles as an indie in 2019
Developing games for consoles as an indie in 2019David Voyles
 
Developing for consoles as an indie in 2019
Developing for consoles as an indie in 2019Developing for consoles as an indie in 2019
Developing for consoles as an indie in 2019David Voyles
 
Lecture 1 Introduction to VR Programming
Lecture 1 Introduction to VR ProgrammingLecture 1 Introduction to VR Programming
Lecture 1 Introduction to VR ProgrammingKobkrit Viriyayudhakorn
 
Game development program
Game development programGame development program
Game development programkrishn verma
 
Developing for Consoles as an Indie in 2018
Developing for Consoles as an Indie in 2018Developing for Consoles as an Indie in 2018
Developing for Consoles as an Indie in 2018Sarah Sexton
 
2 some terminology
2   some terminology2   some terminology
2 some terminologymrhoward12
 
Nintendo Company Market Analysis
Nintendo Company Market AnalysisNintendo Company Market Analysis
Nintendo Company Market AnalysisPatrick Walter
 
Gamemaker - Intro and Core Objects
Gamemaker - Intro and Core ObjectsGamemaker - Intro and Core Objects
Gamemaker - Intro and Core ObjectsJoe Healy
 
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...gamifi.cc
 

Semelhante a Microsoft Windows 8 Monogame Gaming Three Thing Game (20)

Gameathon UK Windows 8 Lecture
Gameathon UK  Windows 8 Lecture Gameathon UK  Windows 8 Lecture
Gameathon UK Windows 8 Lecture
 
Delta Engine @ CeBit 2011
Delta Engine @ CeBit 2011Delta Engine @ CeBit 2011
Delta Engine @ CeBit 2011
 
Indie Game Development Intro
Indie Game Development IntroIndie Game Development Intro
Indie Game Development Intro
 
1-Introduction (Game Design and Development)
1-Introduction (Game Design and Development)1-Introduction (Game Design and Development)
1-Introduction (Game Design and Development)
 
Windows 8 and MonoGame Presentation at Staffordshire University
Windows 8 and MonoGame Presentation at Staffordshire UniversityWindows 8 and MonoGame Presentation at Staffordshire University
Windows 8 and MonoGame Presentation at Staffordshire University
 
Developing for Xbox as an Indie in 2018
Developing for Xbox as an Indie in 2018Developing for Xbox as an Indie in 2018
Developing for Xbox as an Indie in 2018
 
Road to Success (July 1st) - Mobile Game Development Alternatives - Andrew Bu...
Road to Success (July 1st) - Mobile Game Development Alternatives - Andrew Bu...Road to Success (July 1st) - Mobile Game Development Alternatives - Andrew Bu...
Road to Success (July 1st) - Mobile Game Development Alternatives - Andrew Bu...
 
Developing games for consoles as an indie in 2019
Developing games for consoles as an indie in 2019Developing games for consoles as an indie in 2019
Developing games for consoles as an indie in 2019
 
Developing for consoles as an indie in 2019
Developing for consoles as an indie in 2019Developing for consoles as an indie in 2019
Developing for consoles as an indie in 2019
 
BSS COMPANY
BSS COMPANYBSS COMPANY
BSS COMPANY
 
Lecture 1 Introduction to VR Programming
Lecture 1 Introduction to VR ProgrammingLecture 1 Introduction to VR Programming
Lecture 1 Introduction to VR Programming
 
Game development program
Game development programGame development program
Game development program
 
Developing for Consoles as an Indie in 2018
Developing for Consoles as an Indie in 2018Developing for Consoles as an Indie in 2018
Developing for Consoles as an Indie in 2018
 
Production
ProductionProduction
Production
 
2 some terminology
2   some terminology2   some terminology
2 some terminology
 
Games Industry in NZ
Games Industry in NZGames Industry in NZ
Games Industry in NZ
 
Deakin
DeakinDeakin
Deakin
 
Nintendo Company Market Analysis
Nintendo Company Market AnalysisNintendo Company Market Analysis
Nintendo Company Market Analysis
 
Gamemaker - Intro and Core Objects
Gamemaker - Intro and Core ObjectsGamemaker - Intro and Core Objects
Gamemaker - Intro and Core Objects
 
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...
Developing applications and games in Unity engine - Matej Jariabka, Rudolf Ka...
 

Mais de Lee Stott

Cortana intelligence suite for projects & hacks
Cortana intelligence suite for projects & hacksCortana intelligence suite for projects & hacks
Cortana intelligence suite for projects & hacksLee Stott
 
Project Oxford - Introduction to advanced Manchine Learning API
Project Oxford - Introduction to advanced Manchine Learning APIProject Oxford - Introduction to advanced Manchine Learning API
Project Oxford - Introduction to advanced Manchine Learning APILee Stott
 
Visual studio professional 2015 overview
Visual studio professional 2015 overviewVisual studio professional 2015 overview
Visual studio professional 2015 overviewLee Stott
 
Azure cloud for students and educators
Azure cloud   for students and educatorsAzure cloud   for students and educators
Azure cloud for students and educatorsLee Stott
 
Getting coding in under a hour with Imagine Microsoft
Getting coding in under a hour with Imagine MicrosoftGetting coding in under a hour with Imagine Microsoft
Getting coding in under a hour with Imagine MicrosoftLee Stott
 
Create and manage a web application on Azure (step to step tutorial)
Create and manage a web application on Azure (step to step tutorial)Create and manage a web application on Azure (step to step tutorial)
Create and manage a web application on Azure (step to step tutorial)Lee Stott
 
Setting up a WordPress Site on Microsoft DreamSpark Azure Cloud Subscription
Setting up a WordPress Site on Microsoft DreamSpark Azure Cloud SubscriptionSetting up a WordPress Site on Microsoft DreamSpark Azure Cloud Subscription
Setting up a WordPress Site on Microsoft DreamSpark Azure Cloud SubscriptionLee Stott
 
Imagine at Microsoft - Resources for Students and Educators
Imagine at Microsoft - Resources for Students and EducatorsImagine at Microsoft - Resources for Students and Educators
Imagine at Microsoft - Resources for Students and EducatorsLee Stott
 
Porting unity games to windows - London Unity User Group
Porting unity games to windows - London Unity User GroupPorting unity games to windows - London Unity User Group
Porting unity games to windows - London Unity User GroupLee Stott
 
Visual Studio Tools for Unity Unity User Group 23rd Feb
Visual Studio Tools for Unity  Unity User Group 23rd FebVisual Studio Tools for Unity  Unity User Group 23rd Feb
Visual Studio Tools for Unity Unity User Group 23rd FebLee Stott
 
Unity camp london feb 2015
Unity camp london feb 2015Unity camp london feb 2015
Unity camp london feb 2015Lee Stott
 
Marmalade @include2014 Dev leestott Microsoft
Marmalade @include2014 Dev leestott MicrosoftMarmalade @include2014 Dev leestott Microsoft
Marmalade @include2014 Dev leestott MicrosoftLee Stott
 
E book Mobile App Marketing_101
E book Mobile App Marketing_101E book Mobile App Marketing_101
E book Mobile App Marketing_101Lee Stott
 
Game Republic 24th April 2014 - Maximising your app revenue
Game Republic 24th April 2014  - Maximising your app revenueGame Republic 24th April 2014  - Maximising your app revenue
Game Republic 24th April 2014 - Maximising your app revenueLee Stott
 
Updateshow Manchester April 2014
Updateshow Manchester April 2014Updateshow Manchester April 2014
Updateshow Manchester April 2014Lee Stott
 
Microsoft Office for Education
Microsoft Office for EducationMicrosoft Office for Education
Microsoft Office for EducationLee Stott
 
Microsoft Learning Experiences Skills and Employability
Microsoft Learning Experiences Skills and Employability Microsoft Learning Experiences Skills and Employability
Microsoft Learning Experiences Skills and Employability Lee Stott
 
Game Kettle Feb 2014 Gateshead
Game Kettle Feb 2014 GatesheadGame Kettle Feb 2014 Gateshead
Game Kettle Feb 2014 GatesheadLee Stott
 
GamesWest 2013 December
GamesWest 2013 December GamesWest 2013 December
GamesWest 2013 December Lee Stott
 
Microsoft Graduate Recuirtment postcard
 Microsoft Graduate Recuirtment postcard Microsoft Graduate Recuirtment postcard
Microsoft Graduate Recuirtment postcardLee Stott
 

Mais de Lee Stott (20)

Cortana intelligence suite for projects & hacks
Cortana intelligence suite for projects & hacksCortana intelligence suite for projects & hacks
Cortana intelligence suite for projects & hacks
 
Project Oxford - Introduction to advanced Manchine Learning API
Project Oxford - Introduction to advanced Manchine Learning APIProject Oxford - Introduction to advanced Manchine Learning API
Project Oxford - Introduction to advanced Manchine Learning API
 
Visual studio professional 2015 overview
Visual studio professional 2015 overviewVisual studio professional 2015 overview
Visual studio professional 2015 overview
 
Azure cloud for students and educators
Azure cloud   for students and educatorsAzure cloud   for students and educators
Azure cloud for students and educators
 
Getting coding in under a hour with Imagine Microsoft
Getting coding in under a hour with Imagine MicrosoftGetting coding in under a hour with Imagine Microsoft
Getting coding in under a hour with Imagine Microsoft
 
Create and manage a web application on Azure (step to step tutorial)
Create and manage a web application on Azure (step to step tutorial)Create and manage a web application on Azure (step to step tutorial)
Create and manage a web application on Azure (step to step tutorial)
 
Setting up a WordPress Site on Microsoft DreamSpark Azure Cloud Subscription
Setting up a WordPress Site on Microsoft DreamSpark Azure Cloud SubscriptionSetting up a WordPress Site on Microsoft DreamSpark Azure Cloud Subscription
Setting up a WordPress Site on Microsoft DreamSpark Azure Cloud Subscription
 
Imagine at Microsoft - Resources for Students and Educators
Imagine at Microsoft - Resources for Students and EducatorsImagine at Microsoft - Resources for Students and Educators
Imagine at Microsoft - Resources for Students and Educators
 
Porting unity games to windows - London Unity User Group
Porting unity games to windows - London Unity User GroupPorting unity games to windows - London Unity User Group
Porting unity games to windows - London Unity User Group
 
Visual Studio Tools for Unity Unity User Group 23rd Feb
Visual Studio Tools for Unity  Unity User Group 23rd FebVisual Studio Tools for Unity  Unity User Group 23rd Feb
Visual Studio Tools for Unity Unity User Group 23rd Feb
 
Unity camp london feb 2015
Unity camp london feb 2015Unity camp london feb 2015
Unity camp london feb 2015
 
Marmalade @include2014 Dev leestott Microsoft
Marmalade @include2014 Dev leestott MicrosoftMarmalade @include2014 Dev leestott Microsoft
Marmalade @include2014 Dev leestott Microsoft
 
E book Mobile App Marketing_101
E book Mobile App Marketing_101E book Mobile App Marketing_101
E book Mobile App Marketing_101
 
Game Republic 24th April 2014 - Maximising your app revenue
Game Republic 24th April 2014  - Maximising your app revenueGame Republic 24th April 2014  - Maximising your app revenue
Game Republic 24th April 2014 - Maximising your app revenue
 
Updateshow Manchester April 2014
Updateshow Manchester April 2014Updateshow Manchester April 2014
Updateshow Manchester April 2014
 
Microsoft Office for Education
Microsoft Office for EducationMicrosoft Office for Education
Microsoft Office for Education
 
Microsoft Learning Experiences Skills and Employability
Microsoft Learning Experiences Skills and Employability Microsoft Learning Experiences Skills and Employability
Microsoft Learning Experiences Skills and Employability
 
Game Kettle Feb 2014 Gateshead
Game Kettle Feb 2014 GatesheadGame Kettle Feb 2014 Gateshead
Game Kettle Feb 2014 Gateshead
 
GamesWest 2013 December
GamesWest 2013 December GamesWest 2013 December
GamesWest 2013 December
 
Microsoft Graduate Recuirtment postcard
 Microsoft Graduate Recuirtment postcard Microsoft Graduate Recuirtment postcard
Microsoft Graduate Recuirtment postcard
 

Último

Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 

Último (20)

Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 

Microsoft Windows 8 Monogame Gaming Three Thing Game

  • 1. signing great XNA games for Windows 8 Dean Ellis dean@infinitespace-studios.co.uk @InfSpaceStudios Dominique Louis dominique@xamarin.com @SoftSavage
  • 2.
  • 3.
  • 4. You have your great ideas and exciting game designs…
  • 6. http://bit.ly/GJ_NavDesign A great Windows 8 game will make sure that navigation between all experiences is a fast, fluid, and delightful experience
  • 7. http://bit.ly/GJ_NavDesign • Makes users first experience a complete one. • Provides a great mechanism for providing users with updates/fresh content
  • 8. http://bit.ly/GJ_SemZoom • Semantic Zoom allows a user to get a different view of your data • Navigate between different levels • Quickly show unlocked content, recently released levels, or new achievements
  • 9. http://bit.ly/GJ_NavDesign • Great way to keep your game as front-and-centre experience. • Can use the top app bar as navigation home
  • 10. http://bit.ly/GJ_CommDesign • Will the control be used very frequently? • Is the control crucial to the playing of the game?
  • 11. http://bit.ly/GJ_Touch • Users approach tablets and touchscreens in a variety of ways • Windows 8 accommodates a multitude of interaction variations
  • 13.
  • 15. http://bit.ly/GJ_StateMgmt Game gets 5s to Game is not notified handle suspend before termination User Launche s Game Game notified when resumed Splash screen
  • 16. Additional Ideas for your game….
  • 17. http://bit.ly/GJ_LiveTiles • At-a-glance information delivery in a natural, attractive format • Draw the user back into the app with a single tap with fresh, tailored content via Live Tiles • Send tile updates even when your app isn’t running • Secondary tiles provide an entry point into a specific experience within your app • Scenarios: game-play status, latest leaderboard positions, multi-player messages, game news
  • 20. http://bit.ly/GJ_Contracts Provides users with a familiar and natural way to search for items across game. Scenarios: • A friend to start a multiplayer game against. • A user name on a leader board. • An achievement. • A specific level in a game with many levels.
  • 21. http://bit.ly/GJ_Contracts Provides a way to connect the player of your game to their social networks, friends, or other apps. From your game: • Sharing game levels, high scores, screenshots, custom objects etc. To your game: • Receiving in-game content, images, video etc.
  • 22. http://bit.ly/GJ_Contracts The settings charm provides a familiar and consistent way to modify an apps settings More settings menus can be added for account management or game specific menus. Scenarios: User-account info, help content, control mappings, notification settings, about app info, support info etc.
  • 23. http://bit.ly/GJ_Contracts This allows your game to share it’s content with other apps seamlessly and consistently. • The file picker makes it easy to organize content. You can also access content from other apps Scenarios: • Exporting images from game to start screen background, • using music from music app for game.
  • 24. http://bit.ly/GJ_Contracts Extend your experience beyond Windows 8 and push your content to devices on your local network. The ‘PlayTo’ feature allows relevant controls to be accessed on the first device without compromising the display on the other.
  • 26. http://bit.ly/GJ_Splash • Many games may take longer than the expected couple of seconds to load. • If that's true of your game, ensure that you provide some sort of indication to the user that the game is actively loading
  • 27. http://bit.ly/GJ_GreatGames • Communicate to users when the game is in a paused state: • removing them from the in- game experience and putting them back in the central hub • or by presenting a pause overlay or pause screen
  • 28. http://bit.ly/GJ_GreatGames Leaderboards are a crucial component for game enthusiasts. The competition factor keeps users engaged in your game and encourages other users in their network to return and maintain their rankings. Utilise location services to access local standings.
  • 29. http://bit.ly/GJ_GreatGames Drive engagement beyond standard gameplay with achievements. Utilize weight, color and size to distinguish between items that are close to being completed.
  • 30. http://bit.ly/GJ_RoamingData • Most people have more than one Windows PC. • Make your game a continuous and consistent user experience across all their Windows 8 PCs Roaming Scenarios: • Game settings and configuration • App licenses and in-app purchases from the Windows Store
  • 31. http://bit.ly/GJ_WAMS • Windows Azure Mobile Services makes it incredibly easy to connect scalable cloud backend to your games. • Easily store structured data in the cloud that can span both devices and users, • Integrate it with user authentication • Send out updates to clients via push notifications
  • 32. http://bit.ly/GJ_W8Store Designed for discovery • Spotlight, Recommend, Browse/Fil er, Search • IE10 & Deep links Unprecedented reach • Global reach: 200+ markets, • 100+ languages Flexible business models • Free, paid, in-app, trials • 3rd party in-app & advertising support Pricing • Developers control pricing • Up to 80% revenue share
  • 33. http:// bit.ly/GJ_W8Samples Windows 8 Samples http://bit.ly/GJ_W8API Windows 8 Store Apps API http://bit.ly/GJ_AppDevBlog Windows 8 Store Apps Dev Blog http://bit.ly/GJ_W8Forums Windows 8 Store Apps Forums
  • 34. Good luck with the Three Thing Game! • Thank you for your enthusiasm, support and ideas! • Looking forward to seeing some great games! Post Three Thing Game: • Register for a Windows 8 Developer Store account DreamSpark members have FREE Windows Store subscription! www.dreamspark.com • Build and sell great W8 store apps/games! http://www.microsoft.com/uk/msdn/windows8/
  • 35.
  • 36. •Dominique Louis – Xamarin •Dean Ellis – Xamarin(soon)
  • 37. Agenda  Overview  History  Games  Porting  Demos  Questions
  • 38. XNA 4.0 Supported Platforms XNA .NET 4.0 DirectX 9/11 Windows Phone 7 Windows Xbox 360
  • 39. Introducing MonoGame OpenSource implementation of XNA 4 API 2D SpriteBatch 3D (APIs and Model Loading) Load Existing XNA compiled assets (*.xnb) Sound and Music Input (Mouse, Keyboard, Touch, Gamepad) Effects (Basic Effects & Some Custom Shaders) Write Once, Play Everywhere
  • 40. Introducing MonoGame Only way to get your XNA game onto Windows 8! Actively being developed and promoted by core team members Me, Dean ( Xamarin ) Tom & his team ( Sickhead Games ) Steve ( Konaju Games ) Aranda ( Gnomic Studios ) Espes High Code Re-use Write Once, Play Everywhere
  • 41. Brief History of MonoGame? Project Started in June 2009 as XNATouch by Jalfx I joined on October 26th 2009 ( co-incidence?? ) Dec 2009 – v0.7 (2D and iOS only) Oct 2011 - v2.0 ( Added 2 platforms, Renamed to MonoGame) Dec 2011 - v2.1 Feb 2012 – (3D codedrop from Flying Dev Studios) March 2012 – 2.5 (Tom and Sickhead Games) June 2012 -2.5.1 (11,000 downloads) October 2012 – 3.0 BETA(available now!)
  • 43. Contributing individuals Oliver Brown Dean Ellis Tophathacker Koda Turtle Games David Lively Carl Ådahl Tom Spilman Niel Clancey Marshall Ward Grapes Nezz Randolph Burt Espes Danzel Javier Fernandez Nicolas Coderre Thiago Pastor Adrian Batzill Inverness Edward Rudd Akshay Arora Andre Esteve Raistlinthewiz David Leaver Jeff Johnson James Lupiani Christian Zangl Jorge Cantón Ferrero Mgroves Steve 'Sly' Williams Geoff Norton Jordan Phillips Tom Gooding Dominique Louis Jamesford42 Taskbit Tapani Värjölä Deathcradle Jeremy Bell Lukas Jadaml Ádám L. Juhász Ray Batts Renaud Bédard Nicolas Leonard Jhllnd Kenneth Pouncey Write Once, Play Everywhere
  • 44. The Future Embracing XNA: APIs, Shaders etc Extend: New platforms, APIs, Features Open: You can make it better or customize it for your game XNA was a great foundation MonoGame will continue to take it to new levels Write Once, Play Everywhere
  • 45. MonoGame Supported Platforms MonoGame Windows8 Xamarin Xamarin .NET 4.5 NET 4.0 MonoTouch Mono for Mono Android SharpDX Direct X OpenGL / OpenAL
  • 46. Future Platforms In Progress PlayStation Mobile 2D Working In Progress Raspberry Pi 2D, 3D Google Chrome Planned Windows Phone 8 Planned Ouya Planned
  • 47. High Code Re-use Xamarin compilers enable developers to build fully native iOS and Android games and apps in C#, that can share code with Windows apps. Through code re-use and sharing, and by unifying mobile app development in C#, Xamarin makes it possible to deliver gorgeous, performant, native apps for all major device platforms quickly
  • 48. Games
  • 49. Commercial games we know of iOS*  30+ Android*  15+ MacOS, Linux  10+ Windows 8 • 10+ Chrome  Bastion *Xamarin compilers makes it possible for MonoGame titles to reach iOS and Android users. Write Once, Play Everywhere
  • 51. Porting to MonoGame Project Setup  From scratch : ~30-60 minutes  With Templates : ~15 minutes Platform Specific  Resolutions  Sound/Video Minimal #ifdefs Write Once, Play Everywhere
  • 52. Things to think about It's Being used in AAA games It's Extendable It's Growing(games, developers, platforms) It's In your hands It's Nnow supported by Microsoft It's Currently the only way to Windows 8 It's OpenSource It's Active Lots of examples Write Once, Play Everywhere
  • 53. Demo
  • 54. Why Games.... Demand Most titles in the Windows Phone apps store are entertainment and utility apps Customers are downloading more games than any other type of app Customers are willing to spend money for the privilege There is an opportunity here to give customers what they want
  • 55. Type of Games.... Freemium games do better than paid games Action games are the best bet to turn a quick buck Strategy games dominate long-term Simulation games account for the second largest share. Opportunity to carve out a niche ( grow your fan base ) * Taken from http://www.appannie.com/blog/mobile-games-that-last/
  • 56. Summary Games are the #1 download and #1 money making app category Pick your niche, grow from there MonoGame provides a solution to get your cross platform game running as a Windows 8 Store App MonoGame provides a cross platform solution so that you can leverage your existing XNA development effort, across multiple marketplaces (iOS, Android, MacOS, Linux, PlayStation Mobile... (top secret) ) Follow the certification guidelines (WACK) to make your app Windows 8 Store ready
  • 57. Contact Dean Ellis Site : www.infinitespace-studios.co.uk Email : dean@infinitespace-studios.co.uk Twitter : @InfSpaceStudios Dominique Louis Email : dominique@xamarin.com Twitter : @SoftSavage
  • 58. Questions ?? MonoGame Site : www.monogame.net Repo : www.github.com/mono/MonoGame (fork away) Twitter : @MonoGameTeam Youtube : youtu.be/MonoGameTeam Mono Site : www.mono-project.com Repo : www.github.com/mono/ Xamarin Site : www.xamarin.com Twitter : @XamarinHQ

Notas do Editor

  1. Time: 1 minWelcome
  2. Time: 1 minuteWe like to talk of Windows 8 as Windows reimagined with a new interface that provides unified input across touch, mouse and keyboard whilst still preserving all the great work that we did in Windows 7Indeed, everything that runs on Windows 7 still runs on Windows 8 (in the same architecture) Windows from chipset to experience with support for a new range of capabilities, scenarios and form factorsUnprecedented user reach & engagement across a wide variety of different devicesWindows 8 makes it easy for your app to scale across desktops, laptops, tablets, All-in-ones and more.
  3. Time: 2 minsSo what about Windows 8 for gaming? Windows 8 provides unparalleled reach across a range of devices, from touch and pen-centered tablets with modern sensors to high-resolution laptop and desktop PCs. These different form factors represent a unique opportunity for game publishers to enable great experiences across a variety of use cases and scenarios.Highlights new capabilities in Windows 8 that are of particular importance for games, including:Sensors—Windows 8 has support for modern sensors including light, gyroscope, accelerometer, and location.Share contracts and Device contracts—New, top-level operating-system functionality makes games more social and lets them make use of nearby devices.Windows Store – lots or commerce models including makes it easy to offer a free trial without writing any code. It's the easiest way to increase conversion rates.Ability to show game controls in different layouts on large screen sizes for an optimal gaming experience.Support for different types of user interaction, including touch, pen, keyboard, and mouse.
  4. Time: 30 secsSo build up excitement and anticipation
  5. Time: 30 secsWe will now highlight some important ideas/capabilities that you can access using Windows 8 and the WinRT API to make your game can embrace Microsoft design style and simultaneously improve its users’ experience.
  6. Time: 1 minGames vary widely in complexity when it comes to how they handle navigation and the exposure of commands and experiences. They range from simple, lightweight puzzle games with no menus or options to richly complex strategy games with tiered menus that host myriad options. Some games only have one experience for the user—the game itself—while others can host achievement screens, leader boards, multiplayer lobbies, and more. A great Windows 8 game will make sure that navigation between those experiences is a fast, fluid, and delightful experience. The navigation pattern you choose will be informed by the type of experience your game provides, so it is strongly recommended that you review both of the patterns discussed here and understand them before continuing. If you have multiple rich experiences in your game, above and beyond the actual game itself, a hierarchical pattern would be beneficial in bringing all of your content to the top level, as opposed to burying it behind menus. This way, every time your game is played, all of your carefully crafted experiences are put in front of the player. If the game is the only experience, however, consider a flat pattern that allows users to swiftly navigate between multiple sessions in the game (for example, multiple one-on-one word games against friends). Pick the appropriate pattern to help users quickly and confidently find the content they want. Oftentimes, it is not the game itself but the other content within it that help determine which model you pursue. Lets look at these in a little more detail…
  7. Time: 1 minHierarchical patternThe hierarchical pattern enables you to put all of your content in front of users, delighting them and making their first experience a complete one. On your hub you can show entry points into the game itself, such as level select, new game, or continue game, as well as recent achievements, friends lists, and other areas of content, all on the same pannable surface. Each category can present content that the user can interact with directly, and section headers that can be used as navigation points to reach a deeper view of content relevant for that category. The hub can also be used to express some of the personality of your game, as shown in the example below, where the section view of the level-selection experience changes to reflect the experience of the portion of the game you’re currently viewing. The hub also provides a way to give updated and fresh content to users each time they view it, making it alive with activity even when they aren’t playing the game itself. For instance, consider the achievements experience modeled below. It divides the achievements into categories and provides information about each individual achievement all at once, telling users what it is and how close they are to unlocking it.
  8. Time 1minTalk about this
  9. Time: 1 minThe flat pattern is a great way to keep your game as the front-and-center experience and support seamless switching across sessions, even if there are no other heavyweight experiences within your game. Rather than taking the user to a sparse hub, simply use the top app bar as your navigation home: present the different users' sessions there and let the user move among them. If there is a preliminary state before your game is started, consider a presenting a screen that shows the user your branding and that also provides a place to identify as a “home” within the game. You don’t need to show the top app bar when your app starts. For example, Internet Explorer in the Windows Windows Store appUI experience handles this case by taking users to the web page they were last on and relying on them to swipe downAs you can see in the image, this game does not offer any experiences beyond the game sessions themselves and the means to initiate them. Rather than trying to move this small amount of functionality into a hub, the flat pattern enables this game to put all of its content in front of its users and let them quickly and confidently navigate it. their tabs to navigate.
  10. Time: 2 minsLocation: on-canvas or app barIn-game controls can be found in one of two places: on the game’s canvas itself or hidden away on an app bar that the user can invoke at will. Asking yourself two questions can help determine where to put them: Will this control be used very frequently?Is this control crucial to the playing of the game?If the answer to either question is yes, consider putting the control on the canvas itself. This will ensure that the control and also how to play the game are plainly obvious to the user, and that the user is not frustrated by constantly having to invoke the app bar just to make progress in the game. CLICKHowever, if the answer to neither question applies, consider putting your control in the app bar. This avoids cluttering the canvas with buttons and controls, and leaves plenty of space for the user to interact with the game itself. This approach reduces distractions and allows the game experience to shine through. In this app, there are no controls on the canvas. Users play the game via direct manipulation. However, when they swipe up from the bottom…CLICK…the application reveals an app bar that contains a number of controls, including ways to pause the game and to change what sort of weaponry they’re using. The game developer has determined that these commands are executed infrequently and so can be hidden most of the time. Some games may have a control that is important enough to take up space on the canvas.
  11. Time: 1 minIf you’re using virtual joystick or button controls on the canvas, let the user customize the size and the position of the controls, or make them relative so that they appear wherever the user puts down his or her fingers. There is no one-size-fits-all placement that is ergonomically pleasing to all users. In-game controls and interactions with them should always be at least 20 pixels from the edges of the screen so that they do not interfere with UI elements such as charms or app bars. For a default placement of a virtual joystick control, where the thumb is when the user is holding a slate. Direct manipulation is also encouraged as a means to control a game. Multi-touch supports panning and commanding at the same time, so users can do things like move their camera and shoot at the same time. Windows 8 devices may also have sensors, such as accelerometers, that can be used to interact with the game. Consider using these when they're available, but be aware that your app must provide alternative access to that functionality for PCs that do not have these sensors.Possible options for showing ergonomics:On Screen D-PadOn Screen ButtonsGeneral swipe to chop, shoot, etcDragMulti-touch
  12. Time: 1 minChanges in orientation and window sizeA game can be in one of four visual states: full screen landscape and portrait, and snapped and fill. Your game should always be playable in full, fill, or portrait states, and you are strongly encouraged to make your game playable when snapped if it makes sense to do so. For instance, a puzzle game could easily be continued while in snapped state, but a first-person shooter would be impractical to play while snapped. When your game is in fill state, it should still be playable and should simply adjust its presentation to the space provided. If focus moves from the game to the snapped app, the game should pause as expected. When your game is snapped, if it can be played (even if modifications to the game's UI are necessary), we strongly encourage you to make it playable. This practice enables multitasking and lets users continue to play your game while doing other things on their system. This approach is particularly great for lightweight, casual games that can occupy the user’s attention without necessarily occupying the entire screen. For example, a user could continue solving a puzzle or playing a board game that's in snapped view. If your game is not playable in snapped view, or if it reaches a state where further progress requires more screen space, it should be paused and should explain to the user that further action is impossible until the app is no longer in snapped view. The game should not programmatically move from snapped view to become the main app independently of user action, nor should it offer a UI that has the sole purpose of moving the game move out of snapped view. It is okay to have the game change to another view in response to user action, and it is also okay to rely on the user to change it from snapped view by using the divider. For instance, your game could offer an "unpause" button that would programmatically make the game the main app as part of resuming game play. Try not to surprise the user by moving the game out of snapped view when they do not expect it. 1366x768 min to support this.
  13. Time: 1 minute (2 CLICKS)and when your app is running, it’s not necessarily making direct API calls to the OS. a lot of APIs are “brokered” and that “broker” decides what to do based on a manifest that’s part of your app.There are APIs that we can’t just allow to “happen” without the user’s consent and so your application needs to say what it’s going to try and do and the user needs to be in control of that.It therefore looks at the applications manifest fileTo determine what the app is trying to access.
  14. Time: 1 minuteThe app has to declare what the app wants to do ( capabilities ) which can still be turned down by the user and it also has to declare what it can do on behalf of the operating system or other apps ( i.e. declarations ).If not declared can’t use at runtime. Protect system integrity. Privacy implications of devices. System prompts the user – make sure when you use you handle this possiblity, expect they may be blocked at runtime from lack of user consent. Some have no privacy implications (e.g. sensors) don’t need to be declared.VS provides a nice graphical container.
  15. Time: 2 minsthis is a huge change and one that needs understanding.In previous Windows version, user was in control of the apps lifetime – selecting to explicity kill it and could bring system to knees if too many running simultaneously.Your win 8 app is in one of 4 lifecycle states at any given time: not running, running , suspended or terminated. As your app transitions between states, it receives lifecycle events that help you provide a consistent and high performance experience to your users. All Win 8 apps move through these states as users launch apps, switch among them, and close them. Suspend – System resources focused on the app that the user is interacting with in the foregroundInactive apps have no impact on battery life or responsiveness, they are suspended by the OSEnables instant switching between apps!User can easily register for the suspend and resume events using Windows.UI.WebUI.WebUIApplication.addEventListener(‘suspending’, ‘resuming’)Suspended apps are not scheduled by the NT KernelNo CPU, Disk or Network consumedAll threads are suspendedApps remain in memoryKernel ensures apps are not suspended in critical sections that could cause system wide deadlocksApps instantly resumed from suspend when brought to foreground5 second phase to perform all operations…Termination – System needs more memoryUser closes the appSystem shutdownApps crashApps do not get notified when they are getting terminatedThere is no event fired during termination… you should save all your stuff by “suspending” … Need to think about saving and restoring state for the users info so that if they come back to the suspended app thenit is in the same place as they left it, with data refreshed.Plenty of guidance and examples online for this.
  16. Time: 30 secsThe things covered so far are must-think aboutsTo make your game stand-out then you should really think about some of the ideas coming up…
  17. Time: 1minTalk about how the user can pin 0, 1 or ( possibly ) more tiles on their start screen if the app offers 2ndary tiles.Talk about how those 2ndary tiles can provide launch context into the app ( jump to ‘movies’, jump to ‘theatres’ )Talk about how those tiles can display notifications; images & text badges – glyphs and numbers cycle through them ( if the user chooses to )Talk about how these also appear on the lock screen ( under the user’s control )Tiles are the “front door” to your app. A compelling live tile will draw users back into your app even when your app is not runningSecondary tiles:Differentiator from other apps in the Store, users will prefer the app with the great live tile.Tiles created by “pinning” content from app E.g user can pin weather tiles for different locations or their favorite stocks.Exposes relevant content eg.. New sci-fi films within a digital media app, local news in news app
  18. Time: 1minLetting you know when it’s your turnAnnouncing new levels being available for cut the rope
  19. Time: 1 minContracts A contract is like an agreement between one or more apps. Contracts define the requirements that apps must meet to participate in these unique Windows interactions.Search contract makes your app searchable from anywhere in the systemShare - People love to share, People often need data from one app in another appShare provides a lightweight, in context experience for app to app sharing Source app fills a data package (OS dealing with brokering between apps), target app processes data packageData package- Plain text, formatted URL, image, HTML, files, custom data formatSettings contract provides quick, consistent, in-context access to settings in your appPlay-to:you can help your users play digital media to connected DLNA devices from within your app. Users tap the Connect charm and then the Play To button, confident that your app will play their media to the DLNA device.Participating in this contract makes your app easy to use and encourages users to remain in your app for longer periods of timeApp-to-app: You can help users pick files from one app directly from within another app. Users gain freedom and flexibility to choose files that are stored and presented by apps.Participating in this contract helps you increase the popularity and adoption of your app
  20. Time: 1min
  21. Time: 1min
  22. Time: 1minAll of your game’s settings, options, and Help content should be accessible via the Settings charm. The Settings charm is where all Windows 8 applications host their settings and options, and it is the natural place for users to look when they want to adjust the game’s sound effects or toggle a color-blind mode on or off. For sound, we expect that games will want to have their own, more complex sound settings (for example, separate volume sliders for music, sound effects, and voice). Use a label to make it clear that the audio settings are specific to your game. Windows 8 provides a global volume control rather than having each application control its individual volume, but games can have multiple sound sources that users will expect to be able to tune independently. As noted earlier, Help content should also be located in the Settings charm. Initial play education, such as tutorials, should be made available to ensure that users know how to play the game. An example of this can be seen here, where the app makes the tutorial part of its initial game-play experience.
  23. Time: 1minExporting images from game to be background for start screenUsing music from music app to play in background of game
  24. Time: 1min
  25. Time: 1min
  26. Time: 30 secs
  27. Time: 1 minNot every game has to support pausing. Multiplayer games typically have no concept of being paused because multiple players are active at once, and games that are driven entirely by the user, with no other external factor such as a timer or clock, gain nothing by being paused. In these cases, there is no need to enter a paused state when users navigate away from the game, and going back to the game should present users with the same experience they were in before leaving if at all possible. If that's not possible (for instance, if a multiplayer gaming session has ended), the game should clearly communicate to users what state they are currently in. For games that do have meaningful pause scenarios, consider pausing when the game loses focus (for example, upon user invocation of charms or upon the appearance of a system dialog box). If the game’s visual state has changed due to rotation or being snapped, the game should continue if it is normally playable in its new state but should be paused if it is no longer playable. Additionally, include a pause button in your game. Decide on its location along with that of the other controls as discussed earlier. However, a game should not only rely on loss of focus to determine that it should pause. Communicating paused stateCommunicate to users when the game is in a paused state, either by removing them from the in-game experience and putting them back in the central hub or by presenting a pause overlay or pause screen. Don't permit interaction with the game while it is paused, except to unpause it. For puzzle, strategy, or timed games, it is advisable to obfuscate the game canvas during the pause so that users cannot gain an unfair advantage by pausing. The next example shows a game that shows its top app bar and enables navigation while the game is paused. Make it just as easy for users to unpause a game as it is to pause it. If you have a pause overlay or pause screen, it should contain some way to unpause the game. If you take a user back to a central hub, tapping the game's app tile should return the user to the game. When users unpause your game, consider giving them a moment to orient themselves before resuming the action. A countdown is a good way to do this. Separating pause from time flowWhile games that present time-flow controls—city-builder games, for example–can "pause" the flow of time, this is not the same thing as pausing the game. Pausing is the complete cessation of user interaction with the game, though some background rendering may continue so that animations continue to play.
  28. Time: 30 secs
  29. Time: 30 secs
  30. Time 1 min
  31. Time: 1min
  32. Time: 2mins
  33. Time: 30 secs
  34. Time: 30 secs
  35. Any Q&A?