ebook img

Introduction to Game Development, Second Edition PDF

1013 Pages·2009·8.85 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Introduction to Game Development, Second Edition

INTRODUCTION TO GAME DEVELOPMENT, SECOND EDITION Edited by Steve Rabin Charles River Media A part of Cengage Learning Australia, Brazil, Japan, Korea, Mexico, Singapore, Spain, United Kingdom, United States Introduction to Game Development, © 2010 Course Technology, a part of Cengage Learning. Second Edition ALL RIGHTS RESERVED. No part of this work covered by the copyright Edited by Steve Rabin herein may be reproduced, transmitted, stored, or used in any form or by any means graphic, electronic, or mechanical, including but not limited Publisher and General Manager, to photocopying, recording, scanning, digitizing, taping, Web distribution, Course Technology PTR: information networks, or information storage and retrieval systems, except Stacy L. Hiquet as permitted under Section 107 or 108 of the 1976 United States Copyright Act, without the prior written permission of the publisher. Associate Director of Marketing: Sarah Panella For product information and technology assistance, contact us at Cengage Learning Customer & Sales Support, 1-800-354-9706 Content Project Manager: Jessica McNavich For permission to use material from this text or product, submit all requests online at cengage.com/permissions Marketing Manager: Further permissions questions can be emailed to Jordan Casey [email protected] Acquisitions Editor: Heather Hurley All trademarks are the property of their respective owners. Project and Copy Editor: Marta Justak Library of Congress Control Number: 2008941417 ISBN-13: 978-1-58450-679-9 Technical Reviewer: Steve Rabin ISBN-10: 1-58450-679-2 CRM Editorial Services Coordinator: eISBN-10: 1-58450-705-5 Jennifer Blaney Course Technology, a part of Cengage Learning Interior Layout: 20 Channel Center Street Shawn Morningstar Boston, MA 02210 USA Cover Designer: Mike Tanamachi Cengage Learning is a leading provider of customized learning solutions with office locations around the globe, including Singapore, the United CD-ROMProducer: Brandon Penticuff Kingdom, Australia, Mexico, Brazil, and Japan. Locate your local office at: international.cengage.com/region Indexer: Valerie Haynes Perry Cengage Learning products are represented in Canada by Nelson Education, Ltd. Proofreader: Michael Beady For your lifelong learning solutions, visit courseptr.com Visit our corporate website at cengage.com Printed in the United States of America 1 2 3 4 5 6 7 11 10 09 Table of Contents Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix How to Use this Book . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii Contributor Bios. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii PART 1 CRITICAL GAME STUDIES. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1 A Brief History of Video Games . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Robert T. Bakie 1.2 Games and Society . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Robert T. Bakie PART 2 GAME DESIGN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 2.1 Game Design. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 Isaac Barry 2.2 Game Writing and Interactive Storytelling. . . . . . . . . . . . . . . . . . . . . 139 Leslie Stirling PART 3 GAME PROGRAMMING: LANGUAGES AND ARCHITECTURE. . 165 3.1 Teams and Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 Noel Llopis 3.2 C++, Java, and Scripting Languages . . . . . . . . . . . . . . . . . . . . . . . . . 189 Noel Llopis 3.3 Programming Fundamentals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 Noel Llopis iii iv Contents 3.4 Game Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 Noel Llopis 3.5 Memory and I/O Systems. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 Noel Llopis 3.6 Debugging Games . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313 Steve Rabin PART 4 GAME PROGRAMMING: MATH, COLLISION DETECTION, AND PHYSICS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329 4.1 Mathematical Concepts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331 Eric Lengyel 4.2 Collision Detection and Resolution . . . . . . . . . . . . . . . . . . . . . . . . . . 367 Steve Rabin and Bretton Wade 4.3 Real-Time Game Physics. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387 Graham Rhodes PART 5 GAME PROGRAMMING: GRAPHICS, ANIMATION, AI, AUDIO, AND NETWORKING . . . . . . . . . . . . . . . . . . . . . . . . . . 421 5.1 Graphics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423 Tom Forsyth 5.2 Character Animation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477 Tom Forsyth 5.3 Artificial Intelligence: Agents, Architecture, and Techniques. . . . . . 521 Steve Rabin 5.4 Artificial Intelligence: Pathfinding Overview . . . . . . . . . . . . . . . . . . . 559 Syrus Mesdaghi 5.5 Audio Programming. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577 James Boer 5.6 Networking and Multiplayer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 603 Chuck Walters Contents v PART 6 AUDIO VISUAL DESIGN AND PRODUCTION . . . . . . . . . . . . . . 641 6.1 Visual Design. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 643 Mark Peasley 6.2 3D Modeling. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657 David Johnson 6.3 3D Environments. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 679 Jeff Selbig 6.4 2D Textures and Texture Mapping. . . . . . . . . . . . . . . . . . . . . . . . . . . 687 Tito Pagan 6.5 Special Effects. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 701 David Johnson 6.6 Lighting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 719 Peter Lewis 6.7 Animation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727 Tito Pagan 6.8 Cinematography. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 753 Peter Lewis 6.9 Audio Design and Production . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 765 Tommy Tallarico and Todd M. Fay PART 7 GAME PRODUCTION AND THE BUSINESS OF GAMES . . . . . . 789 7.1 Game Production and Project Management . . . . . . . . . . . . . . . . . . . 791 Tom Sloper 7.2 Game Industry Roles and Economics . . . . . . . . . . . . . . . . . . . . . . . . 837 Kathy Schoback 7.3 The Publisher-Developer Relationship . . . . . . . . . . . . . . . . . . . . . . . 857 Ed Bartlett 7.4 Marketing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 879 Sue Bohle 7.5 Intellectual Property Content, Law, and Practice . . . . . . . . . . . . . . . 895 Stephen Rubin 7.6 Content Regulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 923 Stephen Rubin vi Contents ABOUT THE CD-ROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 937 INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 939 Acknowledgments Many dedicated people helped create this book. First and foremost, I want to thank the authors. This book is a tribute to their hard work and dedication to sharing their knowledge with others. As leaders in their respective fields, it takes a great deal of sacrifice and goodwill for them to spend their free time distilling their wisdom for others to benefit from. For this effort, I thank them. This book started out as a dream to bring top industry veterans together to create an unparalleled tome of knowledge and wisdom. Charles River Media strongly believed in this project from the start and entrusted me with bringing it to fruition. I want to thank them for their guidance, support, and faith. The entire staff of Charles River Media was also very helpful and skilled in putting this book together quickly, and they deserve many thanks as well. I want to thank Jason Della Rocca, former executive director of the IGDA, not only for his encouragement for this project, but also for his support and contribution to the IGDA and the IGDA Curriculum Framework, which inspired and guided this book. Thanks also to the other Curriculum Development Committee members: Tracy Fullerton, Magy Seif-El Nasr, Darius Kazemi, Darren Torpey, Yusuf Pisan, Rob Catto, Doug Church, Robin Hunicke, Katherine Isbister, Katie Salen, Warren Spector, and Eric Zimmerman. I want to extend additional thanks to Rob Bakie, Isaac Barry, Hal Barwood, Jim Charne, Henry Cheng, Miguel Gomez, Jeff Lander, Eric Lengyel, Tito Pagan, and GrahamRhodes for help recruiting authors, as well as reviewing many of the chapters. Finally, I want to thank my loving wife and my children, Aaron and Allison, for supporting me during this endeavor, as well as my parents, Diane and Barry, and my in-laws, Jim and Shirley. vii This page intentionally left blank Preface Welcome to Introduction to Game Development, 2nd Edition. This is a unique book in that it combines the wisdom and expertise of over 20 game indus- try professionals to give you an unprecedented view of game development —from game design, to programming, to production and business issues. The greatest challenge in creating this book was to cover virtually all of game development, while still maintaining the depth necessary to truly understand and appreciate state-of-the-art processes. The solution was to gather some of the brightest and most respected experts in the industry and allow each author to go into the detail that he or she felt was necessary to cover his or her field of expertise. While this resulted in a very large book by most standards, it was critical to maintaining all of the key concepts and ideas, while giving practical insight into the problems of real game development. The background of the respective authors is most impressive. Most have more than a decade of experience in the games industry and are leaders in their respective fields, speaking regularly at the annual Game Developers Conference, instructing college-level game development classes on the side, or having written books of their own. What sets this book apart is the incredible insight and experience that each author brings to his or her chapter, with the entire gamut of game development explored. No one person could write a book like this, since it requires lifetimes of specialization and experience to understand and distill the issues. However, don’t take my word for it; browse through each author’s biography in the following pages. Book Structure and Inspiration The structure of this book is largely based on the International Game Developers Association (IGDA) Curriculum Framework proposed by the IGDA Curriculum Development Committee. Through cooperation between respected game industry professionals and academia, this committee was able to define a framework that would give guidance to schools and universities working to create their own academic programs in game development. While the IGDA Curriculum Framework is an ongoing process, it provided the guidance and inspiration for this book. ix

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.