Menu Expand
Object-Oriented Game Development

Object-Oriented Game Development

Julian Gold

(2004)

Additional Information

Book Details

Abstract

Games software has its roots in a "cottage" industry, ignoring formal methodologies, instead leaving the programmers to find homespun solutions to the technical problems faced. The picture has now changed: the scale of the problems faced by programmers means that more methodical techniques must be applied to game development to prevent projects spiralling out of control, both in terms of technical complexity and cost. The book addresses how program teams can develop ever more complex entertainment software within the constraints of deadlines, budgets and changing technologies. It establishes a set of best practices tempered with real-world pragmatism, understanding that there is no "one size fits all" solution. No member of the game development team should be working in isolation and the book will be useful to producers, designers and artists as well as the programmers themselves. In addition, the book addresses the needs of the growing number of Game Development courses offered in academia, giving students a much-needed insight into the real world of object-oriented game design. 

Table of Contents

Section Title Page Action Price
Cover Cover
Object-oriented Game Development iii
Contents vii
Acknowledgements xiii
Introduction 1
What is this book? 1
But why? 2
Who am I? 2
Who are you? 2
So what will you read about? 3
A brief history of games 4
The game development process 9
Philosophy 9
Reality bites 14
Summary 21
Software engineering for games 23
The peasants are revolting 23
The lords are revolting 24
Stopping the rot 25
The choice of language 51
A C++ coding policy 63
Summary 67
Object-oriented design for games 69
Notation 69
The design process 72
Patterns 76
Summary 134
The component model for game development 135
Definition: game engine 135
Motivation 135
Some guiding principles 138
Meet the components 149
Summary 227
Cross-platform development 229
Introduction 229
Summary 265
Game objects 267
Open your GOB 267
Game object management 281
Summary 326
Design-driven control 329
Decoupling behaviour from game code 330
Simplifying the creation and management of high-level behaviour 331
Event management details 341
Language issues 347
Summary 349
Iterative development techniques 351
Introduction 351
Incremental delivery 352
Iterated delivery 355
Summary 366
Game development roles 367
The cultural divides 367
The programming team 368
The art team 375
The design team 379
Putting it all together 384
Summary 385
Case study: Cordite 387
Technical analysis 387
Summary 414
Appendix: coding conventions used in this book 415
Bibliography 417
Web resources 419
Index 421