Thông tin tài liệu
Discover the world of 2D and 3D game programming in C#
with XNA and Silverlight for Windows Phone 7 devices
Windows Phone 7
Game Development
Adam Dawes
www.it-ebooks.info
www.it-ebooks.info
i
Windows Phone 7
Game Development
■ ■ ■
Adam Dawes
www.it-ebooks.info
ii
Windows Phone 7 Game Development
Copyright © 2010 by Adam Dawes
All rights reserved. No part of this work may be reproduced or transmitted in any form or by any
means, electronic or mechanical, including photocopying, recording, or by any information
storage or retrieval system, without the prior written permission of the copyright owner and the
publisher.
ISBN-13 (pbk): 978-1-4302-3306-0
ISBN-13 (electronic): 978-1-4302-3307-7
Printed and bound in the United States of America 9 8 7 6 5 4 3 2 1
Trademarked names, logos, and images may appear in this book. Rather than use a trademark
symbol with every occurrence of a trademarked name, logo, or image we use the names, logos, and
images only in an editorial fashion and to the benefit of the trademark owner, with no intention of
infringement of the trademark.
The use in this publication of trade names, trademarks, service marks, and similar terms, even if
they are not identified as such, is not to be taken as an expression of opinion as to whether or not
they are subject to proprietary rights.
President and Publisher: Paul Manning
Lead Editors: Mark Beckner, Ewan Buckingham
Technical Reviewer: Don Sorcinelli
Editorial Board: Steve Anglin, Mark Beckner, Ewan Buckingham, Gary Cornell, Jonathan
Gennick, Jonathan Hassell, Michelle Lowman, Matthew Moodie, Duncan Parkes, Jeffrey
Pepper, Frank Pohlmann, Douglas Pundick, Ben Renow-Clarke, Dominic Shakeshaft, Matt
Wade, Tom Welsh
Coordinating Editor: Mary Tobin
Copy Editor: Nancy Sixsmith
Compositor: MacPS, LLC
Indexer: Brenda Miller
Artist: April Milne
Cover Designer: Anna Ishchenko
Distributed to the book trade worldwide by Springer Science+Business Media, LLC., 233 Spring
Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail
orders-ny@springer-sbm.com, or visit www.springeronline.com.
For information on translations, please e-mail rights@apress.com, or visit www.apress.com .
Apress and friends of ED books may be purchased in bulk for academic, corporate, or promotional
use. eBook versions and licenses are also available for most titles. For more information, reference
our Special Bulk Sales–eBook Licensing web page at www.apress.com/info/bulksales .
The information in this book is distributed on an “as is” basis, without warranty. Although every
precaution has been taken in the preparation of this work, neither the author(s) nor Apress shall
have any liability to any person or entity with respect to any loss or damage caused or alleged to be
caused directly or indirectly by the information contained in this work.
The source code for this book is available to readers at www.apress.com.
www.it-ebooks.info
iii
For Ritu and Kieran.
www.it-ebooks.info
iv
Contents at a Glance
■Contents v
■About the Author xix
■About the Technical Reviewer xx
■Acknowledgments xxi
■Introduction xxii
Part I: The Beginning 1
■Chapter 1: Windows Phone and .NET 3
Part II: XNA 21
■Chapter 2: Getting Started with XNA 23
■Chapter 3: Creating a Game Framework 59
■Chapter 4: User Input 99
■Chapter 5: Sounding Out with Game Audio 147
■Chapter 6: Drawing with Vertices and Matrices 159
■Chapter 7: The World of 3D Graphics 211
■Chapter 8: Further 3D Features and Techniques 257
■Chapter 9: Enhancing Your Game 313
■Chapter 10: The Application Life Cycle 333
Part III: Silverlight 351
■Chapter 11: Getting Started with Silverlight 353
■Chapter 12: Silverlight Controls and Pages 389
■Chapter 13: Gaming with Silverlight 423
■Chapter 14: Enhancing Your Silverlight Games 463
Part IV: Distribution 495
■Chapter 15: Distributing Your Game 497
■Chapter 16: Running on Other Platforms 517
■Index 539
www.it-ebooks.info
v
Contents
■Contents at a Glance iv
■About the Author xix
■About the Technical Reviewer xx
■Acknowledgments xxi
■Introduction xxii
Part I: The Beginning 1
■Chapter 1: Windows Phone and .NET 3
Looking Closely at Visual Studio Development for Windows Phone 4
Language Choices 5
IDE Features 5
Windows Phone Platform 7
Using Visual Studio for Windows Phone Development 9
Installing Visual Studio 9
Creating a Windows Phone Project 11
Designing a Page 12
Running the Application 14
Running on a Real Device 14
Getting Help 18
Windows Phone Game Development 19
Suitable Games 19
Selecting an Application Framework 19
www.it-ebooks.info
■ CONTENTS
vi
Welcome to the World of Windows Phone Development 20
Part II: XNA 21
■Chapter 2: Getting Started with XNA 23
What Is XNA? 23
Your First XNA Project 24
Creating the Project 24
Adding Some Content 25
Displaying the Graphic 26
Moving the Graphic 29
Examining the Solution in More Detail 31
Sprites in Detail 34
Supported Graphic Formats 34
Scaling 35
Rotation 37
Tinting 38
Partial Image Rendering 40
Layer Depth 41
Sprite Transparency 42
Alpha Tinting 44
Useful Sprite Effects 45
Setting a Background Image 45
Fading to Black 46
Fading between Images 48
Displaying Text 49
Font Support 49
Creating SpriteFont Objects 51
Displaying Text 52
Other Graphics Options 55
Rendering in Full Screen Mode 55
Supporting Portrait and Landscape Orientations 55
www.it-ebooks.info
■ CONTENTS
vii
Graphic Scaling 57
Suppressing Drawing 58
Experiment and Play with XNA 58
■
Chapter 3: Creating a Game Framework 59
Designing the Game Framework 59
The GameObjectBase Class 60
The SpriteObject Class 60
The TextObject Class 64
The GameHost Class 66
The GameHelper Class 71
Using the Game Framework 71
Referencing the GameFramework Project 72
Setting Inheritance for the Main Game Class 73
Creating Derived SpriteObject Classes 73
Adding Game Objects to the Game Host 78
Removing Objects from the Game Host 80
Overriding Object Properties 80
Benchmarking and Performance 83
The BenchmarkObject Class 84
Using BenchmarkObject 85
Performance Considerations 86
Game in Focus: Cosmic Rocks (Part I) 89
Designing the Game 90
Creating the Graphics 90
Creating the Game Objects 91
Running the Game 97
Creating XNA Games 98
■Chapter 4: User Input 99
Using the Touch Screen 99
Reading Raw Touch Data 100
www.it-ebooks.info
■ CONTENTS
viii
Reading Input Using the Touch Gestures 103
Sprite Hit Testing 108
Initiating Object Motion 119
Finger-Friendly Gaming 123
Reading the Keyboard and Text Input 124
Using a Hardware Keyboard 124
Prompting the User to Enter Text 127
Reading the Accelerometer 129
Initializing the Accelerometer 129
Using the Accelerometer Data 131
Simulating the Accelerometer in the Emulator 132
Game in Focus: Cosmic Rocks (Part II) 133
Making the Player’s Ship Shoot 134
Making the Player’s Ship Move 141
Implementing Hyperspace 143
Considering Input Design 145
■Chapter 5: Sounding Out with Game Audio 147
Sound Effects and Music 147
Playing Sound Effects 147
Adding Sound Effects to your Project 148
Playing the Sound Effects 149
Integrating Sound Effects into the Game Framework 150
Sound Effect Instances 150
Other Sound Effect Properties 152
Obtaining Sound Effects for your Game 152
An Interactive Example 153
Playing Music 153
To Play or Not To Play 153
Adding Music to your Project 154
Playing the Music 155
www.it-ebooks.info
[...]... Studio for Windows Phone Development Let’s take a look now at the steps required to begin development of Windows Phone games and applications Installing Visual Studio Installing Visual Studio for Windows Phone development is very easy If you do not already have a full version of Visual Studio installed, you can visit http://create.msdn.com to download Visual Studio 2010 Express for Windows Phone This... 529 Revisiting Some Example Projects 530 Developing Games for Windows Phone 7 and Windows 531 Running Silverlight Projects in the Browser 531 Differences between Silverlight and Silverlight for Windows Phone 532 Converting Projects from Windows Phone 7 532 Example Projects 5 37 Let’s Play… 538 ■Index 539 xviii... role-playing game on a train or simply want the few minutes of casual diversion that mobile gaming can provide while waiting for an appointment Windows Phone 7 Game Development aims to bring you the knowledge and techniques that you will need to create your own games for devices running the Microsoft’s powerful Windows Phone 7 operating system Starting with the basics of the platform and its development. .. PC-based application development This is not an introduction to programming or to Visual Studio itself You will, however, be given a complete guide to setting up the development environment for Windows Phone 7 programming, getting your first programs to compile, and interactively debugging your games as they run either on the Windows Phone 7 emulator included with the phone s free software development kit... Pages 469 Maintaining Game State 470 Game Settings 472 Creating a High Score Table 474 The High Score Table Classes 474 Instantiating the HighScores Object 476 Adding New Score Entries 477 Displaying the Scores 478 Playing Music and Sound Effects 479 Accessing the XNA Audio Library... Windows Phone development will appear Figure 1–3 shows the New Project window from Visual Studio 2010 Express for Windows Phone, containing just the Silverlight and XNA project template 9 www.it-ebooks.info CHAPTER 1 ■ WINDOWS PHONE AND NET Figure 1–3 Creating a new project in Visual Studio 2010 Express for Windows Phone Figure 1–4 shows the same window in Visual Studio 2010 Professional with the Windows. .. 371 Adding and Positioning Elements 371 The Document Outline Window 372 Using the Properties Window 373 Understanding Control Alignment 376 Colors and Brushes 378 Color Specifications 378 Brushes 379 Setting Colors in Code 386 Using Brushes Together 3 87 Exploring... Closely at Visual Studio Development for Windows Phone Let’s start by taking a look at the versions of Visual Studio that we can use for developing software for Windows Phone We can develop either using Visual Studio 2010 Express for Windows Phone, which is available free of charge, or by using one of the full versions of Visual Studio Both products will produce the same resulting games and applications... special capacitive styluses are available if you hunt around) The design of the Windows Phone operating system is based around touch input rather than stylus input, a decision that is consistent with most smartphone platforms and operating systems currently in production 7 www.it-ebooks.info CHAPTER 1 ■ WINDOWS PHONE AND NET Windows Phone devices will support multitouch, with a minimum of four distinct points... chapters tend to build on one another, so it is recommended that you read them in sequence to avoid knowledge gaps in later chapters Chapter 1 introduces Windows Phone 7 and using the Visual Studio 2010 development environment to create Windows Phone 7 games and applications It explains how to set up simple NET projects running against the emulator and real devices, explores debugging techniques, and . Dawes
www.it-ebooks.info
www.it-ebooks.info
i
Windows Phone 7
Game Development
■ ■ ■
Adam Dawes
www.it-ebooks.info
ii
Windows Phone 7 Game Development. Discover the world of 2D and 3D game programming in C#
with XNA and Silverlight for Windows Phone 7 devices
Windows Phone 7
Game Development
Adam Dawes
www.it-ebooks.info
www.it-ebooks.info
Ngày đăng: 21/02/2014, 19:20
Xem thêm: Tài liệu Windows Phone 7 Game Development ppt, Tài liệu Windows Phone 7 Game Development ppt