Download presentation
Presentation is loading. Please wait.
Published byBrett Sutton Modified over 8 years ago
1
Introduction to the development of 2D Windows 8 games using Direct X and C++ Markus Jost CEO, Lead Programmer, Codebox GmbH markus.jost@codebox.ch
2
Agenda
3
Dream Build Play 2008 The Path of Go – Xbox LIVE Arcade Various Indie Titles for Mobiles
4
The Platform Chapter 1/3
7
Direct X
8
Differences in game development between the phone and the desktop: http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj662930(v=vs.105).aspx http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj662930(v=vs.105).aspx Supported Direct3D APIs for Windows Phone 8: http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj207010(v=vs.105).aspx http://msdn.microsoft.com/en-us/library/windowsphone/develop/jj207010(v=vs.105).aspx
9
The Basics Chapter 2/3
10
Lifecycle of a Videogame
12
Translating 3D points into Screen-space (2d)
13
Sample 0 Creating a new project
15
Sample 0.5 From 3D to 2D
16
Pipeline Direct3D 11: http://msdn.microsoft.com/en-us/library/windows/hardware/ff569022(v=vs.85).aspxhttp://msdn.microsoft.com/en-us/library/windows/hardware/ff569022(v=vs.85).aspx
18
Sample 1 Loading Texture Rendering Sprite
19
Reading user input with DirectX Source: http://en.wikipedia.org/wiki/DirectInput http://en.wikipedia.org/wiki/DirectInput
20
Sample 2 Reading User Input Moving Sprite
21
Basic Collision Detection float denom = ((B2.Y – B1.Y) * (A2.X – A1.X)) – ((B2.X – B1.X) * (A2.Y - A1.Y)); if (denom == 0) { return null; } else { float ua = (((B2.X – B1.X) * (A1.Y – B1.Y)) – ((B2.Y – B1.Y) * (A1.X – B1.X))) / denom; float ub = (((A2.X – A1.X) * (A1.Y – B1.Y)) – ((A2.Y – A1.Y) * (A1.X – B1.X))) / denom; if (ua 1) || (ub 1) return null ; return A1 + ua * (A2 – A1) }
22
Sample 3 Basic Collision
24
Sample 4 Audio
25
Questions? Chapter 3/3
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.