Siêu thị PDFTải ngay đi em, trời tối mất

Thư viện tri thức trực tuyến

Kho tài liệu với 50,000+ tài liệu học thuật

© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Sams Teach Yourself Windows Phone 7 Game Programming in 24 Hours pot
PREMIUM
Số trang
384
Kích thước
7.4 MB
Định dạng
PDF
Lượt xem
714

Sams Teach Yourself Windows Phone 7 Game Programming in 24 Hours pot

Nội dung xem thử

Mô tả chi tiết

ptg999

www.it-ebooks.info

ptg999

800 East 96th Street, Indianapolis, Indiana, 46240 USA

Jonathan S. Harbour

SamsTeachYourself

Hours

in24

Windows®

Phone 7

Game Programming

www.it-ebooks.info

ptg999

Sams Teach Yourself Windows®Phone 7 Game Programming in 24 Hours

Copyright © 2012 by Sams Publishing

All rights reserved. No part of this book shall be reproduced, stored in a retrieval system, or

transmitted by any means, electronic, mechanical, photocopying, recording, or otherwise, without

written permission from the publisher. No patent liability is assumed with respect to the use of

the information contained herein. Although every precaution has been taken in the preparation of

this book, the publisher and author assume no responsibility for errors or omissions. Nor is any

liability assumed for damages resulting from the use of the information contained herein.

ISBN-13: 978-0-672-33554-9

ISBN-10: 0-672-33554-9

Library of Congress Cataloging-in-Publication Data is on file.

Printed in the United States of America

First Printing November 2011

Trademarks

All terms mentioned in this book that are known to be trademarks or service marks have been

appropriately capitalized. Sams Publishing cannot attest to the accuracy of this information. Use

of a term in this book should not be regarded as affecting the validity of any trademark or service

mark.

Warning and Disclaimer

Every effort has been made to make this book as complete and as accurate as possible, but no

warranty or fitness is implied. The information provided is on an “as is” basis. The author and the

publisher shall have neither liability nor responsibility to any person or entity with respect to any

loss or damages arising from the information contained in this book.

Bulk Sales

Sams Publishing offers excellent discounts on this book when ordered in quantity for bulk pur￾chases or special sales. For more information, please contact

U.S. Corporate and Government Sales

1-800-382-3419

[email protected]

For sales outside of the U.S., please contact

International Sales

[email protected]

Editor-in-Chief

Greg Wiegand

Executive Editor

Neil Rowe

Development

Editor

Mark Renfrow

Managing Editor

Kristy Hart

Project Editor

Andrew Beaster

Copy Editor

Cheri Clark

Indexer

Ken Johnson

Proofreader

Sarah Kearns

Technical Editor

Jim Perry

Publishing

Coordinator

Cindy Teeters

Book Designer

Gary Adair

Composition

Nonie Ratcliff

www.it-ebooks.info

ptg999

Contents at a Glance

Introduction................................................................................ 1

Part I: Introduction

HOUR 1 Introduction to Windows Phone 7.................................................. 9

2 Getting Started with Visual C# 2010 for Windows Phone .................. 21

3 Printing Text ............................................................................. 39

4 Getting User Input...................................................................... 51

5 Drawing Bitmaps ....................................................................... 59

Part II: Sprite Programming

HOUR 6 Treating Bitmaps as Sprites .......................................................... 73

7 Transforming Sprites................................................................... 89

8 More Sprite Transforms: Rotation and Scaling ............................... 101

9 Advanced Linear and Angular Velocity ........................................ 117

10 When Objects Collide................................................................ 131

11 Managing Lots of Sprites ........................................................... 149

12 Sprite Color Animation ............................................................. 163

13 Sprite Transform Animation....................................................... 181

14 Sprite Frame Animation ............................................................ 197

15 Transforming Frame Animations ................................................ 213

16 Drawing with Z-Index Ordering.................................................. 231

Part III: Gameplay

HOUR 17 Using Location Services (GPS) ..................................................... 241

18 Playing Audio.......................................................................... 255

19 Reading and Writing Files Using Storage ...................................... 265

20 Creating a Graphical User Interface............................................. 277

21 Finite State Gameplay ............................................................... 295

www.it-ebooks.info

ptg999

22 The Physics of Gravity............................................................... 311

23 Rocket Science: Acceleration....................................................... 323

24 The Black Hole Game................................................................ 337

Index ..................................................................................... 359

iv

Sams Teach Yourself Windows Phone 7 Game Programming in 24 Hours

www.it-ebooks.info

ptg999

Table of Contents

Introduction 1

Audience and Organization .................................................................. 1

Conventions Used in This Book .............................................................. 5

Resource Files ...................................................................................... 5

Part I: Introduction

HOUR 1: Making Games for Windows Phone 7 9

Getting Started with Windows Phone 7 .................................................... 9

Windows Phone 7 as a Game Platform? ................................................ 10

History of the Platform ........................................................................ 11

Hardware Specifications ...................................................................... 16

Summary .......................................................................................... 17

Q&A ................................................................................................ 18

Workshop.......................................................................................... 18

HOUR 2: Getting Started with Visual C# 2010 for Windows Phone 21

Visual C# 2010 Express ........................................................................ 21

Using Silverlight for WP7 .................................................................... 24

XNA Game Studio .............................................................................. 30

XNA or Silverlight: What’s the Verdict? .................................................. 37

Summary .......................................................................................... 37

Q&A ................................................................................................ 38

Workshop.......................................................................................... 38

HOUR 3: Printing Text 39

Creating the Font Demo Project ............................................................ 39

Adding a New Font to the Content Project .............................................. 41

Learning to Use the SpriteFont Class ...................................................... 45

www.it-ebooks.info

ptg999

Printing Text...................................................................................... 46

Summary .......................................................................................... 48

Q&A ................................................................................................ 48

Workshop.......................................................................................... 49

HOUR 4: Getting User Input 51

Exploring Windows Phone Touchscreen Input ........................................ 51

Simulating Touch Input ...................................................................... 52

Using Gestures on the Touchscreen ........................................................ 55

Summary .......................................................................................... 56

Q&A ................................................................................................ 57

Workshop.......................................................................................... 57

HOUR 5: Drawing Bitmaps 59

Adding a Bitmap File to an XNA Project ................................................ 59

Loading a Bitmap File as an Asset ........................................................ 62

Drawing a Bitmap with SpriteBatch ...................................................... 63

Drawing Bitmaps with Transparency .................................................... 65

Summary .......................................................................................... 68

Q&A ................................................................................................ 68

Workshop.......................................................................................... 69

Part II: Sprite Programming

HOUR 6: Treating Bitmaps as Sprites 73

Bringing Bitmaps to Life ...................................................................... 73

Drawing Lots of Bitmaps...................................................................... 74

Running into Limits with Global Variables.............................................. 76

Creating a Simple Sprite Class .............................................................. 79

Summary .......................................................................................... 87

Q&A ................................................................................................ 88

Workshop.......................................................................................... 88

vi

Sams Teach Yourself Windows Phone 7 Game Programming in 24 Hours

www.it-ebooks.info

ptg999

HOUR 7: Transforming Sprites 89

Translating (Moving) a Sprite .............................................................. 89

Using Velocity as Movement Over Time.................................................. 91

Moving Sprites in a Circle .................................................................... 94

Summary .......................................................................................... 98

Q&A ................................................................................................ 98

Workshop.......................................................................................... 98

HOUR 8: More Sprite Transforms: Rotation and Scaling 101

Rotating a Sprite .............................................................................. 101

Scaling a Sprite ................................................................................ 108

Summary ........................................................................................ 114

Q&A .............................................................................................. 114

Workshop ........................................................................................ 115

HOUR 9: Advanced Linear and Angular Velocity 117

Calculating Angular Velocity .............................................................. 117

“Pointing” a Sprite in the Direction of Movement .................................. 124

Summary ........................................................................................ 129

Q&A .............................................................................................. 129

Workshop ........................................................................................ 129

HOUR 10: When Objects Collide 131

Boundary Collision Detection.............................................................. 131

Radial Collision Detection .................................................................. 139

Assessing the Damage ...................................................................... 141

Summary ........................................................................................ 147

Q&A .............................................................................................. 147

Workshop ........................................................................................ 147

HOUR 11: Managing Lots of Sprites 149

Robot Trash Collectors ...................................................................... 149

Summary ........................................................................................ 160

Q&A .............................................................................................. 160

Workshop ........................................................................................ 161

Contents

vii

www.it-ebooks.info

ptg999

HOUR 12: Sprite Color Animation 163

Getting Started with Color Animation .................................................. 163

Color Animation .............................................................................. 167

Summary ........................................................................................ 178

Q&A .............................................................................................. 178

Workshop ........................................................................................ 179

HOUR 13: Sprite Transform Animation 181

Adding Transform Support to the Animation Class ................................ 181

Combining Multiple Animations ........................................................ 189

Summary ........................................................................................ 194

Q&A .............................................................................................. 194

Workshop ........................................................................................ 195

HOUR 14: Sprite Frame Animation 197

Drawing Animation Frames................................................................ 198

Creating the Frame Animation Demo .................................................. 202

Summary ........................................................................................ 209

Q&A .............................................................................................. 210

Workshop ........................................................................................ 210

HOUR 15: Transforming Frame Animations 213

Drawing Frames with Color Mods ........................................................ 213

Drawing Frames with Transform Mods ................................................ 218

Animation Mods Demo...................................................................... 224

Summary ........................................................................................ 228

Q&A .............................................................................................. 228

Workshop ........................................................................................ 229

HOUR 16: Drawing with Z-Index Ordering 231

Prioritized Drawing .......................................................................... 231

Summary ........................................................................................ 237

Q&A .............................................................................................. 237

Workshop ........................................................................................ 238

viii

Sams Teach Yourself Windows Phone 7 Game Programming in 24 Hours

www.it-ebooks.info

ptg999

Part III: Gameplay

HOUR 17: Using Location Services (GPS) 241

GPS 101 .......................................................................................... 241

Windows Phone Location Services........................................................ 243

Simulating Position Changes .............................................................. 245

Creating the Geo Position Demo.......................................................... 249

Summary ........................................................................................ 252

Q&A .............................................................................................. 252

Workshop ........................................................................................ 253

HOUR 18: Playing Audio 255

Getting Started with Windows Phone Audio .......................................... 255

Creating the Audio Demo Program...................................................... 259

Summary ........................................................................................ 262

Q&A .............................................................................................. 262

Workshop ........................................................................................ 263

HOUR 19: Reading and Writing Files Using Storage 265

Using Windows Phone Isolated Storage ................................................ 265

Creating the Storage Demo Example.................................................... 270

Summary ........................................................................................ 274

Q&A .............................................................................................. 275

Workshop ........................................................................................ 275

HOUR 20: Creating a Graphical User Interface 277

Creating the GUI Controls .................................................................. 278

Demonstrating the GUI Controls.......................................................... 287

Summary ........................................................................................ 292

Q&A .............................................................................................. 292

Workshop ........................................................................................ 292

Contents

ix

www.it-ebooks.info

ptg999

HOUR 21: Finite State Gameplay 295

Finite State Gameplay in Theory ........................................................ 295

Testing Game State............................................................................ 299

Summary ........................................................................................ 308

Q&A .............................................................................................. 308

Workshop ........................................................................................ 309

HOUR 22: The Physics of Gravity 311

Simulating Gravity............................................................................ 311

The Gravity Demo ............................................................................ 314

Summary ........................................................................................ 320

Q&A .............................................................................................. 321

Workshop ........................................................................................ 321

HOUR 23: Rocket Science: Acceleration 323

Building the Game ............................................................................ 323

Summary ........................................................................................ 334

Q&A .............................................................................................. 335

Workshop ........................................................................................ 335

HOUR 24: The Black Hole Game 337

Adding the Finishing Touches ............................................................ 337

Summary ........................................................................................ 357

Q&A .............................................................................................. 357

Workshop ........................................................................................ 357

Index 359

x

Sams Teach Yourself Windows Phone 7 Game Programming in 24 Hours

www.it-ebooks.info

ptg999

About the Author

Jonathan S. Harbour has been programming video games since the 1980s. His first game

system was an Atari 2600, which he played with, disassembled, on the floor of his room as

a kid. He has written on numerous subjects such as C++, C#, Basic, Java, DirectX, Allegro,

Lua, DarkBasic, Pocket PC, and game consoles. He is the author of another recent book

titled XNA Game Studio 4.0 for Xbox 360 Developers. He holds a Master’s degree in

Information Systems Management. Visit his web log and game development forum at

www.jharbour.com/forum, and his Facebook page at www.facebook.com/jharbourcom.

www.it-ebooks.info

ptg999

Dedication

Dedicated to FASA Corporation founders Jordan Weisman

and L. Ross Babcock III, whose games continue to inspire.

Acknowledgments

Thank you to the editorial staff at Sams for their hard work in getting this book polished

and into print: Neil Rowe, Mark Renfrow, Andy Beaster, Cheri Clark, Ken Johnson, Sarah

Kearns, Nonie Ratcliff, and a special thanks to Jim Perry for his technical advice. I enjoyed

working with all of you and hope we can do it again soon.

www.it-ebooks.info

ptg999

We Want to Hear from You!

As the reader of this book, you are our most important critic and commentator. We value

your opinion and want to know what we’re doing right, what we could do better, what

areas you’d like to see us publish in, and any other words of wisdom you’re willing to pass

our way.

You can email or write me directly to let me know what you did or didn’t like about this

book—as well as what we can do to make our books stronger.

Please note that I cannot help you with technical problems related to the topic of this book, and

that due to the high volume of mail I receive, I might not be able to reply to every message.

When you write, please be sure to include this book’s title and author, as well as your name

and phone or email address. I will carefully review your comments and share them with the

author and editors who worked on the book.

Email: [email protected]

Mail: Neil Rowe

Executive Editor

Sams Publishing

800 East 96th Street

Indianapolis, IN 46240 USA

Reader Services

Visit our website and register this book at www.samspublishing.com/register for convenient

access to any updates, downloads, or errata that might be available for this book.

www.it-ebooks.info

ptg999

This page intentionally left blank

www.it-ebooks.info

Tải ngay đi em, còn do dự, trời tối mất!