Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C# / Edition 2

Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C# / Edition 2

by Jeremy Gibson Bond
ISBN-10:
0134659864
ISBN-13:
9780134659862
Pub. Date:
08/20/2017
Publisher:
Pearson Education
ISBN-10:
0134659864
ISBN-13:
9780134659862
Pub. Date:
08/20/2017
Publisher:
Pearson Education
Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C# / Edition 2

Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C# / Edition 2

by Jeremy Gibson Bond

Paperback

$79.99
Current price is , Original price is $79.99. You
$79.99 
  • SHIP THIS ITEM
    Qualifies for Free Shipping
  • PICK UP IN STORE
    Check Availability at Nearby Stores
  • SHIP THIS ITEM

    Temporarily Out of Stock Online

    Please check back later for updated availability.


Overview

Learn All the Design & Development Skills You Need to Make Great Games with Unity, the World's Most Popular Professional Game Engine

If you want to design and develop games, there is no substitute for strong, hands-on experience with modern techniques and tools. That is exactly what this book provides. Leading instructor and indie game developer Jeremy Gibson Bond covers all three disciplines that you need to succeed: game design theory, rapid iterative prototyping, and practical programming.

Building on two previous best-sellers, this Third Edition contains hundreds of improvements across more than 400 new pages, all designed to make it even easier to understand and more useful in modern game development.

The five game tutorials have been thoroughly revised and expanded to cover even more best practices for prototyping and development, and all examples now use Unity 2020.3 LTS (Long Term Support), a stable and feature-rich standard for years to come. The new content includes greatly enhanced tutorials, a chapter on Unity's high-performance Data-Oriented Tech Stack (DOTS), new Coding Challenges to help you transition to making your own games from scratch, and tips on next steps after you have finished the book. The revamped website includes playable versions of all example games, plus an exciting new tool that provides immediate feedback on potential errors in your own code.

Part I: Game Design and Paper Prototyping

  • Use the Layered Tetrad to understand and design powerful interactive experiences.
  • Explore the core game design practices of paper prototyping, testing, and iteration.
  • Learn effective strategies for staying on track and on schedule.
  • Get tips for finding a rewarding job in today's industry.

Part II: Programming C# in Unity

  • Learn C# from the basics through class inheritance, object-oriented programming, and data-oriented design.

Part III: Game Prototype Tutorials

  • Implement games across five genres: arcade, casual physics, space shooter, solitaire card game, and top-down adventure game. Each game is designed to be easily extensible into your own projects.Take three games from prototype to “first playable” through new extended tutorial chapters that refi ne the games further than in previous editions of the book.

NEW! Part IV: Next Steps

  • Tackle the new, growing library of Coding Challenges, a proven method for transitioning from tutorials to creating your own projects from scratch.Get ideas and resources for new projects to tackle on your own.

Product Details

ISBN-13: 9780134659862
Publisher: Pearson Education
Publication date: 08/20/2017
Series: Game Design
Edition description: New Edition
Pages: 1024
Sales rank: 297,524
Product dimensions: 7.00(w) x 8.90(h) x 1.80(d)

About the Author

Jeremy Gibson Bond is a Professor of Practice, teaching game design and development in the Media and Information Department at Michigan State University (http://gamedev.msu.edu), which has been ranked a top-ten game design program for the last several years. Since 2013, he has served the IndieCade independent game festival and conference as the Chair of Education and Advancement, where he co-chairs the IndieXchange summit each year. In 2013, Jeremy founded the company ExNinja Interactive, through which he develops his independent game projects. Jeremy has also spoken several times at the Game Developers Conference.
Prior to joining the faculty at Michigan State, Jeremy taught for three years as a Lecturer in the Electrical Engineering and Computer Science department at the University of Michigan Ann Arbor, where he taught game design and software development. From 2009 to 2013, Jeremy was an Assistant Professor of Practice teaching game design for the Interactive Media and Games Division of the University of Southern California's School of Cinematic Arts, which was named the number one game design school in North America throughout his tenure there.
Jeremy earned a Master of Entertainment Technology degree from Carnegie Mellon University's Entertainment Technology Center in 2007 and a Bachelor of Science degree in Radio, Television, and Film from the University of Texas at Austin in 1999. He started his career as a programmer and prototyper for companies such as Human Code and frog design; has also taught classes for Great Northern Way Campus (in Vancouver, BC), Texas State University, the Art Institute of Pittsburgh, Austin Community College, and the University of Texas at Austin; and has worked for Walt Disney Imagineering, Maxis, and Electronic Arts/Pogo.com, among others. While in graduate school, his team created the online game Skyrates, which won the Silver Gleemax Award for Strategic Gaming at the 2008 Independent Games Festival. Jeremy also apparently has the distinction of being the first person to ever teach game design in Costa Rica.

Table of Contents

Foreword by Richard Lemarchand xxiii
Preface xxvii

PART I: GAME DESIGN AND PAPER PROTOTYPING 1
Chapter 1 Thinking Like a Designer 3

You Are a Game Designer 4
Bartok: A Game Exercise 4
The Definition of Game 10
Summary 17
Chapter 2 Game Analysis Frameworks 19
Common Frameworks for Ludology 20
MDA: Mechanics, Dynamics, and Aesthetics 20
Formal, Dramatic, and Dynamic Elements 24
The Elemental Tetrad 28
Summary 29
Chapter 3 The Layered Tetrad 31
The Inscribed Layer 32
The Dynamic Layer 33
The Cultural Layer 34
The Responsibility of the Designer 36
Summary 37
Chapter 4 The Inscribed Layer 39
Inscribed Mechanics 40
Inscribed Aesthetics 47
Inscribed Narrative 49
Inscribed Technology 59
Summary 60
Chapter 5 The Dynamic Layer 61
The Role of the Player 62
Emergence 63
Dynamic Mechanics 64
Dynamic Aesthetics 70
Dynamic Narrative 75
Dynamic Technology 78
Summary 78
Chapter 6 The Cultural Layer 79
Beyond Play 80
Cultural Mechanics 81
Cultural Aesthetics 82
Cultural Narrative 83
Cultural Technology 84
Authorized Transmedia Are Not Part of the Cultural Layer 85
The Cultural Impact of a Game 86
Summary 89
Chapter 7 Acting Like a Designer 91
Iterative Design 92
Innovation 98
Brainstorming and Ideation 99
Changing Your Mind 103
Scoping 105
Summary 106
Chapter 8 Design Goals 107
Design Goals: An Incomplete List 108
Designer-Centric Goals 108
Player-Centric Goals 111
Summary 127
Chapter 9 Paper Prototyping 129
The Benefits of Paper Prototypes 130
Paper Prototyping Tools 131
Paper Prototyping for Interfaces 133
An Example Paper Prototype 134
Best Uses for Paper Prototyping 139
Poor Uses for Paper Prototyping 140
Summary 140
Chapter 10 Game Testing 143
Why Playtest? 144
Being a Great Playtester Yourself 144
The Circles of Playtesters 145
Methods of Playtesting 148
Other Important Types of Testing 156
Summary 157
Chapter 11 Math and Game Balance 159
The Meaning of Game Balance 160
The Importance of Spreadsheets 160
The Choice of Google Sheets for This Book 161
Examining Dice Probability with Sheets 162
The Math of Probability 174
Randomizer Technologies in Paper Games 178
Weighted Distributions 182
Permutations 184
Using Sheets to Balance Weapons 186
Positive and Negative Feedback 194
Summary 194
Chapter 12 Guiding the Player 195
Direct Guidance 196
Four Methods of Direct Guidance 197
Indirect Guidance 198
Seven Methods of Indirect Guidance 198
Teaching New Skills and Concepts 206
Summary 209
Chapter 13 Puzzle Design 211
Scott Kim on Puzzle Design 212
Puzzle Examples in Action Games 219
Summary 221
Chapter 14 The Agile Mentality 223
The Manifesto for Agile Software Development 224
Scrum Methodology 225
Burndown Chart Example 228
Creating Your Own Burndown Charts 238
Summary 238
Chapter 15 The Digital Game Industry 239
About the Game Industry 240
Game Education 243
Getting Into the Industry 246
Don't Wait to Start Making Games! 250
Summary 253
PART II: DIGITAL PROTOTYPING 255
Chapter 16 Thinking in Digital Systems 257

Systems Thinking in Board Games 258
An Exercise in Simple Instructions 259
Game Analysis: Apple Picker 261
Summary 267
Chapter 17 Introducing the Unity Development Environment 269
Downloading Unity 270
Introducing Our Development Environment 273
Launching Unity for the First Time 277
The Example Project 278
Setting Up the Unity Window Layout 278
Learning Your Way Around Unity 283
Summary 283
Chapter 18 Introducing Our Language: C# 285
Understanding the Features of C# 286
Reading and Understanding C# Syntax 292
Summary 294
Chapter 19 Hello World: Your First Program 295
Creating a New Project 296
Making a New C# Script 298
Making Things More Interesting 303
Summary 312
Chapter 20 Variables and Components 313
Introducing Variables 314
Strongly Typed Variables in C# 314
Important C# Variable Types 316
The Scope of Variables 319
Naming Conventions 319
Important Unity Variable Types 320
Unity GameObjects and Components 327
Summary 330
Chapter 21 Boolean Operations and Conditionals 331
Booleans 332
Comparison Operators 336
Conditional Statements 339
Summary 345
Chapter 22 Loops 347
Types of Loops 348
Set Up a Project 348
while Loops 348
do...while Loops 352
for Loops 352
foreach Loops 354
Jump Statements within Loops 355
Summary 357
Chapter 23 Collections in C# 359
C# Collections 360
Using Generic Collections 362
List 363
Dictionary 368
Array 371
Multidimensional Arrays 376
Jagged Arrays 379
Whether to Use Array or List 383
Summary 383
Chapter 24 Functions and Parameters 387
Setting Up the Function Examples Project 388
Definition of a Function 388
Function Parameters and Arguments 391
Returning Values 393
Proper Function Names 395
Why Use Functions? 395
Function Overloading 397
Optional Parameters 398
The params Keyword 399
Recursive Functions 400
Summary 401
Chapter 25 Debugging 403
Getting Started with Debugging 404
Stepping Through Code with the Debugger 410
Summary 418
Chapter 26 Classes 419
Understanding Classes 420
Class Inheritance 428
Summary 431
Chapter 27 Object-Oriented Thinking 433
The Object-Oriented Metaphor 434
An Object-Oriented Boids Implementation 436
Summary 455
PART III: GAME PROTOTYPE EXAMPLES AND TUTORIALS 457
Chapter 28 Prototype 1: Apple Picker 459

The Purpose of a Digital Prototype 460
Preparing 461
Coding the Apple Picker Prototype 470
GUI and Game Management 484
Summary 494
Chapter 29 Prototype 2: Mission Demolition 495
Getting Started: Prototype 2 496
Game Prototype Concept 496
Art Assets 497
Coding the Prototype 502
Summary 544
Chapter 30 Prototype 3: Space SHMUP 545
Getting Started: Prototype 3 546
Setting the Scene 548
Making the Hero Ship 549
Adding Some Enemies 557
Spawning Enemies at Random 566
Setting Tags, Layers, and Physics 568
Making the Enemies Damage the Player 571
Restarting the Game 575
Shooting (Finally) 577
Summary 581
Chapter 31 Prototype 3.5: Space SHMUP Plus 583
Getting Started: Prototype 3.5 584
Programming Other Enemies 584
Shooting Revisited 592
Showing Enemy Damage 609
Adding Power-Ups and Boosting Weapons 612
Making Enemies Drop Power-Ups 622
Enemy_4—A More Complex Enemy 625
Adding a Scrolling Starfield Background 634
Summary 636
Chapter 32 Prototype 4: Prospector Solitaire 639
Getting Started: Prototype 4 640
Build Settings 640
Importing Images as Sprites 642
Constructing Cards from Sprites 644
The Prospector Game 661
Implementing Prospector in Code 664
Implementing Game Logic 677
Adding Scoring to Prospector 685
Adding Some Art to the Game 698
Summary 704
Chapter 33 Prototype 5: Bartok 707
Getting Started: Prototype 5 708
Build Settings 710
Coding Bartok 711
Building for WebGL 750
Summary 752
Chapter 34 Prototype 6: Word Game 753
Getting Started: Prototype 6 754
About the Word Game 754
Parsing the Word List 756
Setting Up the Game 763
Laying Out the Screen 769
Adding Interactivity 778
Adding Scoring 782
Adding Animation to Letters 785
Adding Color 788
Summary 790
Chapter 35 Prototype 7: Dungeon Delver 793
Dungeon Delver—Game Overview 794
Getting Started: Prototype 7 795
Setting Up the Cameras 796
Understanding the Dungeon Data 798
Adding the Hero 808
Giving Dray an Attack Animation 818
Dray's Sword 821
Enemy: Skeletos 822
The InRoom Script 825
Per-Tile Collision 828
Aligning to the Grid 832
Moving from Room to Room 839
Making the Camera Follow Dray 842
Unlocking Doors 843
Adding GUI to Track Key Count and Health 848
Enabling Enemies to Damage Dray 852
Making Dray's Attack Damage Enemies 856
Picking Up Items 859
Enemies Dropping Items on Death 861
Implementing a Grappler 864
Implementing a New Dungeon—The Hat 872
The Delver Level Editor 877
Summary 877
PART IV: APPENDICES 879
Appendix A Standard Project Setup Procedure 881
Appendix B Useful Concepts 887
Appendix C Online Reference 947
Index 953

From the B&N Reads Blog

Customer Reviews