2

Game Engine Architecture

853 Pages · 2009 · 11.96 MB · English

  • Game Engine Architecture

    Game Engine Architecture Game Engine Architecture


    Jason Gregory


    A K Peters, Ltd.


    Wellesley, Massachusetts A K Peters/CRC Press


    Taylor & Francis Group


    6000 Broken Sound Parkway NW, Suite 300


    Boca Raton, FL 33487-2742


    © 2009 by Taylor and Francis Group, LLC


    A K Peters/CRC Press is an imprint of Taylor & Francis Group, an Informa business


    No claim to original U.S. Government works


    Printed in the United States of America on acid-free paper


    10 9 8 7 6 5 4 3 2 1


    International Standard Book Number-13: 978-1-4398-6526-2 (Ebook-PDF)


    This book contains information obtained from authentic and highly regarded sources. Reasonable efforts have been made to publish reliable data and information, but the author


    and publisher cannot assume responsibility for the validity of all materials or the consequences of their use. The authors and publishers have attempted to trace the copyright holders


    of all material reproduced in this publication and apologize to copyright holders if permission to publish in this form has not been obtained. If any copyright material has not been


    acknowledged please write and let us know so we may rectify in any future reprint.


    Except as permitted under U.S. Copyright Law, no part of this book may be reprinted, reproduced, transmitted, or utilized in any form by any electronic, mechanical, or other means,


    now known or hereafter invented, including photocopying, microfilming, and recording, or in any information storage or retrieval system, without written permission from the


    publishers.


    For permission to photocopy or use material electronically from this work, please access www.copyright.com (http://www.copyright.com/) or contact the Copyright Clearance


    Center, Inc. (CCC), 222 Rosewood Drive, Danvers, MA 01923, 978-750-8400. CCC is a not-for-profit organization that provides licenses and registration for a variety of users. For


    organizations that have been granted a photocopy license by the CCC, a separate system of payment has been arranged.


    Trademark Notice: Product or corporate names may be trademarks or registered trademarks, and are used only for identification and explanation without intent to infringe.


    Visit the Taylor & Francis Web site at


    http://www.taylorandfrancis.com


    and the A K Peters Web site at


    http://www.akpeters.com Dedicated to


    Trina, Evan and Quinn Gregory,


    in memory of our heros,


    Joyce Osterhus and Kenneth Gregory. Contents


    Foreword xiii


    Preface xvii


    I Foundations 1


    1 Introduction 3


    1.1 Structure of a Typical Game Team 5


    1.2 What Is a Game? 8


    1.3 What Is a Game Engine? 11


    1.4 Engine Differences Across Genres 13


    1.5 Game Engine Survey 25


    1.6 Runtime Engine Architecture 28


    1.7 Tools and the Asset Pipeline 49


    2 Tools of the Trade 57


    2.1 Version Control 57


    2.2 Microsoft Visual Studio 66


    2.3 Profi ling Tools 85


    vii viii Contents


    2.4 Memory Leak and Corruption Detection 87


    2.5 Other Tools 88


    3 Fundamentals of Software


    Engineering for Games 91


    3.1 C++ Review and Best Practices 91


    3.2 Data, Code, and Memory in C/C++ 98


    3.3 Catching and Handling Errors 128


    4 3D Math for Games 137


    4.1 Solving 3D Problems in 2D 137


    4.2 Points and Vectors 138


    4.3 Matrices 151


    4.4 Quaternions 169


    4.5 Comparison of Rotational Representations 177


    4.6 Other Useful Mathematical Objects 181


    4.7 Hardware-Accelerated SIMD Math 185


    4.8 Random Number Generation 192


    II Low-Level Engine Systems 195


    5 Engine Support Systems 197


    5.1 Subsystem Start-Up and Shut-Down 197


    5.2 Memory Management 205


    5.3 Containers 223


    5.4 Strings 242


    5.5 Engine Confi guration 252


    6 Resources and the File System 261


    6.1 File System 262


    6.2 The Resource Manager 272


    7 The Game Loop and Real-Time Simulation 303


    7.1 The Rendering Loop 303


    7.2 The Game Loop 304


    Please note: To fully download this free PDF,EBook files you need know All free.
    Found by internet command,site not saved pdf file
You May Also Like

Related PPT Template in the same category.