Book Image

Building your First Mobile Game using XNA 4.0

By : Brecht Kets, Thomas Goussaert
Book Image

Building your First Mobile Game using XNA 4.0

By: Brecht Kets, Thomas Goussaert

Overview of this book

With the dawn of the Windows Phone 7 platform, Microsoft has offered us an easy way to create 3D mobile games. In this book, we will build a 3D game for Windows Phone 7 together, taking full advantage of the graphics and touch capabilities, along with the sensors of the platform."Building your First Mobile Game using XNA 4.0" is the book for starting game development on the Windows Phone 7 platform. This book will go over the technical aspects of building games along with designing your own framework. Finally we'll build an actual game together from the ground up! This book will set future mobile game developers in the right direction.The XNA framework empowers us to build 2D and 3D games for PC, Xbox 360 and Windows Phone 7. We will use those capabilities to create stunning 3D games for the Windows Phone 7 platform. We will start by covering the basics like drawing graphics, followed by building a custom framework and end with building a game together!In this book, we will cover drawing 2D and 3D graphics, both static and animations. We will also cover the various ways of handling user input and help set the mood of our game playing both 2D and 3D sound, and accessing the user's media library. The only thing left before building a game is covering several techniques created for making our life easier while building the game, whilst building a framework to do just that. Finally, we'll build a 3D game together that will run on the Windows Phone 7 platform."Building your First Mobile Game using XNA 4.0" is the book you need to get started with mobile game development for Windows Phone 7. Its hands on approach will set you on your way in no time. Let's build some games!
Table of Contents (16 chapters)

Menus


It's time we made some menus. If we want menus, we need buttons to press. But before we make the buttons, we need to perform the following steps:

  1. Because a button uses touch to determine if it's being pressed, we need to add the current touch state to the render context so all objects have the latest touch state. We do this by adding an extra property to the render context and by setting the latest touch state in the Update method of the scene manager.

    // Extra property of the render context
    public TouchCollection TouchPanelState { get; set; }
    
    // Update the TouchPanelState in the 
    // Update of the Scene Manager
    RenderContext.TouchPanelState = TouchPanel.GetState();
  2. Add an extra HitTest method to our GameObject2D. This because touch returns a point instead of a rectangle. We can check if a point is in a rectangle by using the Contains method. Note that we use an extra argument that specifies whether we want to test all the children. This is not always the case, as you will see in the...