Muutke küpsiste eelistusi

E-raamat: Introduction to Game Design, Prototyping, and Development

  • Formaat: 1296 pages
  • Sari: Game Design
  • Ilmumisaeg: 05-Aug-2022
  • Kirjastus: Addison Wesley
  • Keel: eng
  • ISBN-13: 9780136619871
Teised raamatud teemal:
  • Formaat - PDF+DRM
  • Hind: 63,27 €*
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • Lisa ostukorvi
  • Lisa soovinimekirja
  • See e-raamat on mõeldud ainult isiklikuks kasutamiseks. E-raamatuid ei saa tagastada.
  • Formaat: 1296 pages
  • Sari: Game Design
  • Ilmumisaeg: 05-Aug-2022
  • Kirjastus: Addison Wesley
  • Keel: eng
  • ISBN-13: 9780136619871
Teised raamatud teemal:

DRM piirangud

  • Kopeerimine (copy/paste):

    ei ole lubatud

  • Printimine:

    ei ole lubatud

  • Kasutamine:

    Digitaalõiguste kaitse (DRM)
    Kirjastus on väljastanud selle e-raamatu krüpteeritud kujul, mis tähendab, et selle lugemiseks peate installeerima spetsiaalse tarkvara. Samuti peate looma endale  Adobe ID Rohkem infot siin. E-raamatut saab lugeda 1 kasutaja ning alla laadida kuni 6'de seadmesse (kõik autoriseeritud sama Adobe ID-ga).

    Vajalik tarkvara
    Mobiilsetes seadmetes (telefon või tahvelarvuti) lugemiseks peate installeerima selle tasuta rakenduse: PocketBook Reader (iOS / Android)

    PC või Mac seadmes lugemiseks peate installima Adobe Digital Editionsi (Seeon tasuta rakendus spetsiaalselt e-raamatute lugemiseks. Seda ei tohi segamini ajada Adober Reader'iga, mis tõenäoliselt on juba teie arvutisse installeeritud )

    Seda e-raamatut ei saa lugeda Amazon Kindle's. 

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.
Foreword xxv
Preface xxviii
Acknowledgments xli
About the Author xliii
PART I Game Design and Paper Prototyping
1(2)
1 Thinking Like a Designer
3(1)
You Are a Game Designer
4(1)
Bartok: A Game Design Exercise
4(7)
The Definition of Game
11(8)
Summary
19(2)
2 Game Analysis Frameworks
21(12)
Common Frameworks for Ludology
22(1)
MDA: Mechanics, Dynamics, and Aesthetics
22(4)
Formal, Dramatic, and Dynamic Elements
26(4)
The Elemental Tetrad
30(2)
Summary
32(1)
3 The Layered Tetrad
33(8)
The Inscribed Layer
34(1)
The Dynamic Layer
35(1)
The Cultural Layer
36(2)
The Responsibility of the Designer
38(2)
Summary
40(1)
4 The Inscribed Layer
41(26)
Inscribed Mechanics
42(9)
Inscribed Aesthetics
51(3)
Inscribed Narrative
54(11)
Inscribed Technology
65(1)
Summary
66(1)
5 The Dynamic Layer
67(22)
The Role of the Player
68(1)
Emergence
69(1)
Dynamic Mechanics
70(7)
Dynamic Aesthetics
77(8)
Dynamic Narrative
85(3)
Dynamic Technology
88(1)
Summary
88(1)
6 The Cultural Layer
89(14)
Beyond Play
90(1)
Cultural Mechanics
91(2)
Cultural Aesthetics
93(1)
Cultural Narrative
93(2)
Cultural Technology
95(1)
Authorized Transmedia Are Not Part of the Cultural Layer
96(1)
The Cultural Impact of a Game
97(4)
Summary
101(2)
7 Acting Like a Designer
103(26)
Iterative Design
104(8)
Innovation
112(1)
Brainstorming and Ideation
113(4)
Changing Your Mind
117(3)
Scoping!
120(7)
Summary
127(2)
8 Design Goals
129(22)
Design Goals: An Incomplete List
130(1)
Designer-Centric Goals
131(3)
Player-Centric Goals
134(16)
Summary
150(1)
9 Paper Prototyping
151(16)
The Benefits of Paper Prototyping
152(1)
Paper Prototyping Tools
153(3)
Paper Prototyping for Interfaces
156(1)
A Paper Prototype Example
157(5)
Best Uses for Paper Prototyping
162(1)
Poor Uses for Paper Prototyping
163(1)
Summary
164(3)
10 Game Testing
167(20)
Why Playtest?
168(1)
Being a Great Playtester Yourself
168(1)
The Circles of Playtesters
169(3)
Methods of Playtesting
172(11)
Other Important Types of Testing
183(2)
Summary
185(2)
11 Math and Game Balance
187(44)
The Meaning of Game Balance
188(1)
The Importance of Spreadsheets
188(2)
Examining Dice Probability with Sheets
190(17)
The Math of Probability
207(5)
Randomizer Technologies in Paper Games
212(3)
Weighted Distributions
215(1)
Weighted Probability in Google Sheets
216(1)
Permutations
217(2)
Using Sheets to Balance Weapons
219(9)
Positive and Negative Feedback
228(1)
Summary
229(2)
12 Guiding the Player
231(16)
Direct Guidance
232(2)
Indirect Guidance
234(8)
Teaching New Skills and Concepts
242(3)
Summary
245(2)
13 Puzzle Design
247(18)
Scott Kim on Puzzle Design
248(9)
The Steps of Solving a Puzzle
257(3)
Puzzle Examples in Action Games
260(2)
Designing and Developing Puzzle Games
262(1)
Summary
263(2)
14 The Agile Mentality
265(22)
The Manifesto for Agile Software Development
266(1)
Scrum Methodology
267(4)
Burndown Chart Example
271(14)
Creating Your Own Burndown Charts
285(1)
Summary
286(1)
15 The Digital Game Industry
287(22)
About the Game Industry
288(8)
Game Education
296(3)
Getting Into the Industry
299(6)
Don't Wait to Start Making Games!
305(3)
Summary
308(1)
PART II Programming C# in Unity
309(310)
16 Thinking in Digital Systems
311(12)
Systems Thinking in Board Games
312(1)
An Exercise in Simple Instructions
313(3)
Game Analysis: Apple Picker
316(6)
Summary
322(1)
17 Introducing Unity Hub and the Unity Editor
323(24)
Downloading Unity
324(3)
Introducing Our Development Environment
327(7)
Creating a Unity Account
334(1)
Checking Out a Sample Project
335(1)
Creating Your First Unity Project
335(3)
Learning Your Way Around Unity
338(1)
Setting Up the Unity Window Layout
339(6)
Summary
345(2)
18 Introducing Our Language: C#
347(12)
Understanding the Features of C#
348(7)
Reading and Understanding C# Syntax
355(3)
Summary
358(1)
19 Hello World: Your First Program
359(24)
Creating a New Project
360(3)
Making a New C# Script
363(7)
Making Things More Interesting
370(12)
Summary
382(1)
20 Variables and Components
383(22)
Introducing Variables
384(1)
Statically Typed Variables in C#
384(2)
Important C# Variable Types
386(3)
The Scope of Variables
389(1)
Naming Conventions
389(1)
Important Unity Variable Types
390(9)
Unity GameObjects and Components
399(4)
Summary
403(2)
21 Boolean Operations and Conditionals
405(18)
Booleans
406(4)
Comparison Operators
410(6)
Conditional Statements
416(6)
Summary
422(1)
22 Loops
423(14)
Types of Loops
424(1)
Set Up a Project
424(1)
While Loops
425(4)
Do... while Loops
429(1)
For Loops
429(4)
Foreach Loops
433(1)
Jump Statements within Loops
433(3)
Summary
436(1)
23 Collections in C#
437(36)
C# Collections
438(4)
Using Generic Collections
442(1)
List<T>
443(4)
Dictionary<Tkey, TValue>
447(4)
Array
451(6)
Multidimensional Arrays
457(4)
Jagged Arrays
461(4)
Jagged List<T>s
465(1)
Choosing Whether to Use an Array or List
466(1)
Summary
467(6)
24 Functions and Parameters
473(20)
Setting Up the Function Examples Project
474(1)
Definition of a Function
474(2)
What Happens When You Call a Function?
476(2)
Function Parameters and Arguments
478(2)
Returning Values
480(1)
Returning void
480(2)
Function Naming Conventions
482(1)
Why Use Functions?
482(3)
Function Overloading
485(1)
Optional Parameters
486(1)
The pa rams Keyword
487(2)
Recursive Functions
489(2)
Summary
491(2)
25 Debugging
493(28)
Getting Started with Debugging
494(12)
Stepping Through Code with the Debugger
506(13)
Summary
519(2)
26 Classes
521(18)
Understanding Classes
522(11)
Class Inheritance
533(5)
Summary
538(1)
27 Object-Oriented Thinking
539(36)
The Object-Oriented Metaphor
540(2)
An Object-Oriented Boids Implementation
542(32)
Summary
574(1)
28 Data-Oriented Design
575(44)
The Theory of Data-Oriented Design
576(6)
DOTS Tutorial and Example
582(35)
The Future of Unity DOTS
617(1)
Summary
618(1)
PART III Game Prototype Tutorials
619(568)
29 Apple Picker
621(60)
What You Will Learn
622(1)
The Apple Picker Prototype
622(1)
The Purpose of a Digital Prototype
623(1)
Preparing
624(13)
Coding the Apple Picker Prototype
637(24)
GUI and Game Management
661(17)
Summary
678(3)
30 Mission Demolition
681(72)
What You Will Learn
682(1)
The Mission Demolition Prototype
682(1)
Getting Started: Mission Demolition
683(1)
Game Prototype Concept
683(1)
Art Assets
684(7)
Coding the Prototype
691(45)
From Prototype to First Playable
736(15)
Summary
751(2)
31 Space SHMUP -- Part 1
753(54)
What You Will Learn
754(1)
Getting Started: Space SHMUP
755(2)
Setting the Scene
757(1)
Making the Hero Ship
758(13)
Adding Some Enemies
771(16)
Spawning Enemies at Random
787(3)
Setting Tags, Layers, and Physics
790(2)
Making the Enemies Damage the Player
792(5)
Restarting the Game
797(3)
Shooting (Finally)
800(5)
Summary
805(2)
32 Space SHMUP -- Part 2
807(90)
What You Will Learn
808(1)
Getting Started: Space SHMUP- Part 2
809(1)
Enemy to Enemy_0
810(1)
Programming Other Enemies
811(22)
Shooting Revisited
833(20)
Showing Enemy Damage
853(4)
Adding PowerUps and Boosting Weapons
857(12)
Race Conditions & Script Execution Order
869(3)
Making Enemies Drop PowerUps
872(4)
Enemy_4 --- A More Complex Enemy
876(12)
Tuning Settings for the Game Entities
888(2)
Adding a Scrolling Starfield Background
890(3)
Summary
893(4)
33 Prospector Solitaire - Part 1
897(72)
What You Will Learn
898(1)
The Prospector Game
899(2)
Getting Started: Prospector Solitaire
901(1)
Build Settings
902(4)
Setting Up the Unity Window Layout
906(1)
Setting Up the Camera and Game Pane
906(1)
Importing Images as Sprites
907(4)
Constructing Cards from Sprites
911(29)
Implementing Prospector in Code
940(21)
Implementing Game Logic
961(7)
Summary
968(1)
34 Prospector Solitaire -- Part 2
969(50)
What You Will Learn
970(1)
Getting Started: Prospector -- Part 2
971(1)
Additional Prospector Game Elements
972(13)
Adding GUI Elements to Display the Score
985(28)
Building and Running Your WebGL Build
1013(3)
Summary
1016(3)
35 Dungeon Delver -- Part 1
1019(76)
What You Will Learn
1020(1)
The Dungeon Delver Game
1021(1)
Getting Started: Dungeon Delver
1022(1)
Setting Up the Cameras
1023(3)
Understanding the Dungeon Data
1026(5)
Showing the Map with a Unity Tilemap
1031(11)
Adding the Hero
1042(13)
Giving Dray an Attack Animation
1055(4)
Dray's Sword
1059(2)
Programmatic Collision in Unity Tilemap
1061(9)
The InRoom Script
1070(2)
Enemy: Skeletos
1072(3)
Keeping GameObjects in the Room
1075(3)
Aligning to the Grid
1078(9)
Moving from Room to Room
1087(4)
Making the Camera Follow Dray
1091(3)
Summary
1094(1)
36 Dungeon Delver -- Part 2
1095(92)
What You Will Learn
1096(1)
Getting Started: Dungeon Delver -- Part 2
1097(1)
Dungeon Delver -- Part 2 Overview
1098(1)
Implementing TileSwaps
1098(7)
Swapping in LockedDoor GameObjects
1105(6)
Implementing Keys and Unlocking Doors
1111(8)
Adding GUI to Track Key Count and Health
1119(6)
Enabling Enemies to Damage Dray
1125(5)
Making Dray's Attack Damage Enemies
1130(1)
Modifying Enemy to Take Damage
1131(4)
Picking Up Items
1135(3)
Enemies Dropping Items on Death
1138(5)
Implementing a New Dungeon -- The Hat
1143(4)
Implementing a Grappler
1147(37)
Summary
1184(3)
PART IV Next Steps
1187(16)
37 Coding Challenges
1189(8)
What Is a Coding Challenge?
1190(1)
Getting Started on a Coding Challenge
1191(1)
Filling in the Blanks
1192(2)
How to Approach Each Challenge
1194(3)
38 Beyond This Book
1197(6)
Continue to Learn Unity Development
1198(1)
Build a Classic Game
1199(1)
Start a Small Game Project or Prototype
1199(1)
Make Games for Lifelong Enrichment
1200(1)
Consider Going to School for GameDev
1200(1)
Explore Advanced Game Design
1201(1)
Finally, Drop Me a Line
1201(2)
Index 1203
Jeremy Gibson Bond is a Professor of Practice teaching game design and development at Michigan State University, which in 2022 was ranked the #1 public university for undergraduate game development by Princeton Review three of the last four 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 and has also chaired the GameU summit. In 2013, Jeremy founded the company ExNinja Interactive, through which he develops his independent game projects. Jeremy has spoken several times at the Game Developers Conference. He also created the official Unity Certified Programmer Exam Review specialization on Coursera, which thousands of developers (including several Unity employees) used to prepare for the UCP exam from 2018-2022.

Prior to joining the Games 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-2013, Jeremy was an assistant professor teaching game design for the Games and Interactive Media Division of the University of Southern California's School of Cinematic Arts, which was named the #1 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. Jeremy has worked as a programmer and prototyper for companies such as Human Code and frog design; has 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 game Skyrates, which won the Silver Gleemax Award 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.