Upload
marjory-rodgers
View
226
Download
2
Tags:
Embed Size (px)
Citation preview
Accelerating Windows Store Game Developmentwith Open Source and Middleware
Chas. BoydWindows Graphics Program Management3-187
Windows 8.1 new APIsUser interface
Fundamentals
Devices Graphics and media Communications and data
ServicesGeo-
location
Proximity
Direct3D Direct2D Direct Write
PlayTo
Contracts
Bing
Azure Mobile
HTML5/CSS XAMLInput Controls
Authentication
Bluetooth
USB
HID WiFi direct
Point of service
3Dprinting Scanning
WebGL
HTTP
Contacts
Appoint-ments
Speech synthesis
Diagnostics
Portable
Sensors Playback Capture
Printing
SVGCanvas
Local storage SMS
Streams Background transfer
Syndication
Networking
XML and JSON
Skydrive
Live tiles and toastAccessibility Data binding
Application services
Threading/timers
Memory management Globalization Cryptography
Xbox Live
Movies & Cut Scenes
Your Killer Game
Game Input
Graphics Audio
Direct3D11.2
DirectX Video
PointerPoint PLM
Windows Live, Azure
Connected Services
Local Services
Direct2D
XInput
Sensor API
WASAPI
Windows Store Install
Xbox LIVE
Media Foundatio
nAppData
Contracts
Visual Studio
Asset Viewers
Asset Processors
Tools
Windows 8.1 Game Platform Technologies
HTML
XAML
XAudio2
Shader Debugging
WiFi Direct
Azure
Windows Game Developer Features
Windows 8Direct3D 11.1XAudio2PointerPointMouseLookXInputC++
Windows 8.1Direct3D11.2 Tiled Resources Scalers & Overlays HLSL Shader linker
8-25GB packagesMulti-monWi-Fi Direct
But There’s MoreInteresting game codebases rely on other components
These “middleware” components are critical to:Accelerate time to market, reduce risk, increase stabilitySimplify shipping across devices/screens (Developing “Cross-Microsoft Platform”)
Both open source technologies and commercial tech
We’ve partnered with the community to ensure these work well on Windows 8
Link in the pre-built lib binariesBe sure to get a Windows 8.1 version for use in 8.1 apps
Build the source in your environmentThen you can see how it works and tune to your scenario
Using Open Source
We’ve made great starting points for Windows Store gamesVS .sln solutions & Windows Store SDK API usageSamples ported to Windows Store projectsPorted UI code in samples to XAMLImplementations pass certification & work well on ARM
This enables you to spend your energy on the game
Microsoft’s Community Contributions
Physics of objects in a 2-D planeBallistics, collisions, rotation, friction, joints, constraints, motors, ray-queries, etc. ofCircles, rects, polygons, chains, ropes, etc.
Used in:Angry Birds, Tiny Wings, Cut The Rope, Crayon Physics Deluxe, Limbo, Rolando, Fantastic Contraption, Incredibots, Transformice, Happy Wheels, Cocos2D, etc.
Box2D
Box2D Demo App
Car Scene
Windows 8.1XAML UIDirectXPasses certification
Car driving over terrain -Now
Physics of 3D objectsBallistics, collisions, rotation, friction, joints, constraints, motors, ray-queries, etc.
Used in: Hydro Thunder: Hurricane, Trials HD
Has had GPU-accelerated fabric simulation using DirectCompute for years
Bullet Physics
Open source OpenGL ES2 API wrapperEnables easy transition from iOS or AndroidUsed by many popular productsOriginally built on Direct3D9, Now updated to Direct3D11 for Windows StoreRuntime shader compiles work in Windows 8.1http://code.google.com/p/angleproject
ANGLE – Almost Native GL Engine
Popular engine for sprite games on phones1000s of games already shipped
Runs on Windows 8 phone, Windows RT, Windows 8, etc.
http://www.cocos2d-x.org
Cocos2D-x
Full 3D rendering engineRich shader capabilities for photorealismIncludes native Direct3D module since starting
Used in: Ankh by Deck13, and Torchlight by Runic, etc.
Runs on Windows Phone
OGRE - OO Graphics Rendering Engine
SharpDXEfficient C# bindings to DirectX APIsLow-level Direct3D access for best C# performanceIncludes basic input, audio, file loading, etc.
Using C#?
MonoGameOSS implementation of the full XNA 4.0 API spec which Microsoft contributed to the community
Used in Armed, Skulls of the Shogun, Galactic Reign
http://channel9.msdn.com/posts/From-XNA-game-to-Windows-8
Using C#?
We’ve built partnerships to bring commercial technologies to the Windows Store
Range of pricing modelsYou get commercial support, some include source codeMost support custom plug-ins, scripting, etc.
Game Engines
Renderers
Physics
Network Services
Audio
Commercial Technologies
See Talk 3-044: Building Windows Store Games with Unity Friday 12-1pm
Also April Unity Windows 8 Event:http://channel9.msdn.com/Events/Windows-Camp/Building-Windows-Games-with-Unity
Unity 3D
Authentication & IdentityFriends ListPlayer Stats, Leaderboards, AchievementsMatchmaking -Real-time and AsynchronousSynchronous (real-time) MultiplayerSupports Windows Phone toohttp://hydra.agoragames.com/windows
Agora Hydra
Share ContractLink to your own store page
Windows AzureEasy to roll up a very basic service
Xbox Livegreat if you are coming from xbox
Other Connectivity Options
Popular physics libraryNow includes Vision 3D rendering engine, destruction, AI, and cloth modules
Supports the whole Microsoft ecosystem
Havok for Windows 8 and Windows Phone 8
Havok
Commercial implementation of OpenGL ES on Direct3D
Includes a full native C++ game API set
Runs on Windows Phone too
https://www.madewithmarmalade.com/windows8
Marmalade
Full IDE for game creationAsset marketplace
http://gamesalad.com/creator/windows-8
Game Salad
The most commonly used games middleware is available for Windows 8 store apps
Both open source and commercial middleware!
Go for it!
Conclusion: The Ecosystem is Ready
Update to the latest versions of any middleware componentsSet up a Windows 8.1 build environment and buildOptimize performance/Tune for device feature levelsAdd in cool new Windows features like: Contracts, live tiles, and notifications, overlays, etc.
Ship!
Let us know if there is more you need!
What to do next
Related talks Title Session ID
Building Games for Windows 2-047
What’s new in Direct3D 11.2 3-062
Massive virtual textures for games: Direct3D and Tiled Resources 4-063
DirectX Graphics Debugging Tools 3-141
Bringing Desktop PC Games to the Windows Store 3-190
Tales from the Trenches: Developing “The Harvest” and “Gunpowder” with Unity 3-044
Accelerating Windows Store Game Development with Middleware 3-187
Bringing Halo: Spartan Assault to Windows tablets and mobile devices 2-049
From Android or iOS: Bringing Your OpenGL ES Game to the Windows Store 3-189
Cutting Edge Games on Windows Tablets 3-043
Play Together! Leaderboards with Windows Azure and iMultiplayer with WiFi Direct 3-051
Innovations in High Performance 2D Graphics with DirectX 3-191
Evaluate this session
Scan this QR code to evaluate this session and be automatically entered in a drawing to win a prize!
© 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.