Artificial.Intelligence.for.Games.Second.Editon.pdf

所需积分/C币:10 2018-08-24 17:52:45 3.96MB PDF
34
收藏 收藏
举报

Artificial.Intelligence.for.Games.Second.Editon.pdf
Morgan Kaufmann Publishers is an imprint of elsevier 30 Corporate Drive, Suite 400, Burlington, MA 01803, USA This book is printed on acid-free paper. o Copyright o 2009 by Elsevier Inc. All rights reserved Designations used by companies to distinguish their products are often claimed as trademarks or registered trademarks. In all instances in which Morgan Kaufmann Publishers is aware of a claim, the product names appear in initial capital or all capital letters. All trademarks that appear or are otherwise referred to in this work belong to their respective owners. Neither Morgan Kaufmann Publishers nor the authors and other contributors of this work have any relationship or affiliation with such trademark owners nor do such trademark owners confirm, endorse or approve the contents of this work. Readers, however, should contact the appropriate companies for more information regarding trademarks and any related registrations No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means--electronic, mechanical, photocopying, scanning, or otherwise--without prior written permission of the publisher. Permissions may be sought directly from Elsevier's Science Technology Rights Department in Oxford, UK: phone: (+44)1865 843830,fax:(+44)1865853333,E-mail:permissions@elsevier.com.Youmayalsocompleteyourrequestonlineviatheelsevier homepage(http://elsevier.com),byselecting"support&cOntactthen"copyrightandPermissionandthen"obtaining Permissions Library of Congress Cataloging-in-Publication Data Millington, Ian Artificial intelligence for games/Ian Millington, John Funge. -2nd ed P Cm. Includes index isBN 978-0-12-374731-0 (hardcover: alk. paper 1. Computer games-Programming. 2. Computer animation. 3. Artificial intelligence Funge, John David, 1968-II. Title QA7676C672M5492009 006 2009016733 British Library Cataloguing-in-Publication Data A catalogue record for this book is available from the british library. ISBN:978-0-12-374731-0 For information on all Morgan Kaufmann publications visitourWebsiteatwww.mkpcomorwww.elsevierdirect.com Typeset by: diacriTech, Indi Printed in the United States of America 09101112135432 Working together to grow braries in developing countries www.elsevier.com Iwww.bookaid.orgiwww.sabre.org elsevier BOOKA Sabre Foundation For conorM For Xiaoyuan-JF ABOUT THE AUTHORS lanMillingtonisapartnerofIcosagonLtd.(www.icosagon.com),aconsultingcompanydevel oping next-generation AI technologies for entertainment, modeling, and simulation. Previously he founded Mindlathe Ltd the largest specialist AI middleware company in computer games, working on a huge range of game genres and technologies. He has a long background in Al, including PhD research in complexity theory and natural computing. He has published academic and professional papers and articles on topics ranging from paleontology to hypertext JohnFunge(www.jfunge.com)recentlyjoinedNetflixtostartandleadthenewGamePlatforms group. Previously, John co-founded aiLive and spent nearly ten years helping to create a successfu company that is now well known for its pioneering machine learning technology for games. AiLive co-created the Wii Motion Plus hardware and has established its Live ove products as the industry standard for automatic motion recognition. At ailive john also worked extensively on LiveAl,a real-time behavior capture product that is being used by the former lead game designer of Guitar Hero and rock band to create a new genre of game. John is also an assistant Adjunct Professor it the university of California, Santa Cruz (uCsc) where he teaches a game ai course that he proposed, designed and developed John has a phd from the university of Toronto and an ms from the University of Oxford. He holds several patents, is the author of numerous technical papers, and wrote two previous books on Game Al. IV CONTENTS ABOUT THE AUTHORS ACKNOWLEDGMENTS PREFACE ABOUT THE WEBSITE PART I Al AND GAMES CHAPTER INTRODUCTION 1.1 WHAT IS AI? 1.1.1 Academic al 1.1.2 Game Al 1.2 MODEL OF GAME AI 1.2.1 Movement 1.2.2 Decision Making 10 1. 2. 3 Strategy 10 1.2.4 Infrastructure 1.2.5 Agent-Based Al 1. 2.6 In the book 12 1.3 ALGORITHMS. DATA STRUCTURES. AND REPRESENTATIONS 12 1.3. 1 Algorithms 12 1.3.2 Representations 15 VI Contents 1.4 ON THE WEBSITE 1.4.1 Programs 16 1. 4.2 Libraries 17 5 LAYOUT OF THE BOOK 18 CHAPTER GAME AI 19 2.1 THE COMPLEXITY FALLACY 2. 1.1 When Simple Things look good 2. 1.2 When Complex Things Look Bad 20 2.1. 3 The Perception Window 21 2.1.4 Changes of Behavior 2 2.2 THE KIND OF AI IN GAMES 22 2.2.1 Hacks 22 2.2.2 Heuristics 23 2.2.3 Algorithms 24 2.3 SPEED AND MEMORY 25 2.3.1 Processor issues 25 2.3.2 Memory concerns 28 2.3.3 PC Constraints 29 2.3.4 Console constraints 2.4 THE AL ENGINE 31 2.4.1 Structure of an AI Engine 32 2.4.2 Toolchain Concerns 2.4.3 Putting It All Together 34 PART I TECHNIQUES 37 CHAPTER MOVEMENT 39 3.1 THE BASICS OF MOVEMENT ALGORITHMS 40 3.1.1 Two-Dimensional movement 41 3.1.2 Statics 42 3.1.3 Kinematics 45 3.2 KINEMATIC MOVEMENT ALGORITHMS 49 3.2.1 Seek 49 Contents vI 3. 2.2 Wandering 53 3.2.3 On the Website 3.3 STEERING BEHAVIORS 3.3. 1 Steering Basics 3.3.2 Variable Matching 3.3.3 Seek and fle 3.3.4 Arriv 3.3.5 Align 3.3.6 Velocity Matching 6 3.7 Delegated B 55566926781 3.3. 8 Pursue and evade 3.3.9 Face 7 3.3.10 Looking Where You're going 72 3.3.11 Wander 3.3.12 Path Following 76 3.3.13 Separation 82 3.3. 14 Collision avoidance 84 3.3. 15 Obstacle and Wall avoidance 90 3.3. 16 Summary 5 3. 4 COMBINING STEERING BEHAVIORS 3.4.1 Blending and arbitration 96 3.4.2 Weighted Blending 3.4.3 Priorities 3.4.4 Cooperative Arbitration 107 3.4.5 Steering Pipeline 108 3.5 PREDICTING PHYSICS 120 3.5.1 Aiming and Shooting 121 3.5.2 Projectile Trajectory 121 3.5.3 The Firing Solution 123 3.5.4 Projectiles with Drag 126 3.5.5 Iterative Targeting 128 3.6 JUMPING 134 3.6.1 Jump Points 135 3.6.2 Landing pads 138 3.6.3 Hole fillers 143 3.7 COORDINATED MOVEMENT 144 3.7.1 Fixed formations 144 3.7.2 Scalable formations 146 3.7.3 Emergent Formations 146 3.7.4 Two-Level Formation Steering 147 3.7.5 Implementation 151 Contents 3.7.6 Extending to More than Two Levels 157 3.7.7 Slot roles and Better Assignment 159 3.7.8 Slot assignment 162 3.7.9 Dynamic Slots and plays 166 3.7.10 Tactical Movement 168 3. 8 MOTOR CONTROL 171 3.8.1 Output Filtering 172 3.8.2 Capability-Sensitive Steering 174 3.8.3 Common Actuation Properties 175 3.9 MOVEMENT IN THE THIRD DIMENSION 3.9.1 Rotation in Three dimensions 178 3.9.2 Converting Steering Behaviors to Three Dimensions 180 3.9.3 Align 180 3.9.4 Align to Vector 181 3.9.5Fa 183 3.9.6 Look Where You're Going 186 3.9.7 Wande 186 3.9.8 Faking Rotation Axes 188 EXERCISES 192 CHAPTER PATHFINDING 197 4.1 THE PATHFINDING GRAPH 198 4.1.1 Graphs 198 4.1.2 Weighted Graphs 199 4.1.3 Directed Weighted Graphs 202 4.1.4 Terminology 203 4.1.5 Representation 203 42 DIJKSTRA 204 4.2.1 The Problem 205 4.2.2 The algorithm 206 4.2. 3 Pseudo-Code 210 4.2.4 Data Structures and Interfaces 212 4.2.5 Performance of Dijkstra 214 4.2.6 Weaknesses 214 4.3A 215 4.3.1 The problem 216 4.3.2 The algorithm 216 4.3.3 Pseudo-Code 220 4.3.4 Data Structures and interfaces 223 Contents 4.3.5 Implementation note 228 4.3.6 Algorithm Performance 228 4.3.7 Node array a 229 4.3.8 Choosing a Heuristic 231 4. 4 WORLD REPRESENTATIONS 237 4.4.1 Tile graph 239 4.4.2 Dirichlet domains 241 4.4.3 Points of visibilit 244 4.4.4 Navigation Meshes 246 4.4.5 Non-Translational problems 25 4.4.6 Cost Functions 251 4.4.7 Path Smoothing 251 4.5 IMPROVING ON A 255 4.6 HIERARCHICAL PATHFINDING 255 4.6.1 The Hierarchical Pathfinding Grap 256 4.6.2 Pathfinding on the hierarchical graph 259 4.6.3 Hierarchical Pathfinding on Exclusions 262 4.6.4 Strange Effects of Hierarchies on Pathfinding 263 4.6.5 Instanced geometry 265 4.7 OTHER IDEAS IN PATHFINDING 271 4.7.1 Open Goal Pathfinding 272 4.7.2 Dynamic Pathfinding g 272 4.7.3 Other Kinds of Information reuse 273 4.7.4 Low Memory algorithms 273 4.7.5 Interruptible Pathfinding 274 4.7.6 Pooling planners 275 4. 8 CONTINUOUS TIME PATHFINDING 276 4.8.1 The Problem 276 4.8.2 The algorithm 277 4.8.3 Implementation Notes 281 4.8.4 Performance 281 4.8.5 Weaknesses 282 4.9 MOVEMENT PLANNING 282 4.9.1 Animations 282 4.9.2 Movement Planning 283 4.9.3 Example 286 4.9.4 Footfalls 287 EXERCISES 288

...展开详情
试读 127P Artificial.Intelligence.for.Games.Second.Editon.pdf
立即下载 低至0.43元/次 身份认证VIP会员低至7折
一个资源只可评论一次,评论内容不能少于5个字
您会向同学/朋友/同事推荐我们的CSDN下载吗?
谢谢参与!您的真实评价是我们改进的动力~
关注 私信
上传资源赚钱or赚积分
最新推荐
Artificial.Intelligence.for.Games.Second.Editon.pdf 10积分/C币 立即下载
1/127
Artificial.Intelligence.for.Games.Second.Editon.pdf第1页
Artificial.Intelligence.for.Games.Second.Editon.pdf第2页
Artificial.Intelligence.for.Games.Second.Editon.pdf第3页
Artificial.Intelligence.for.Games.Second.Editon.pdf第4页
Artificial.Intelligence.for.Games.Second.Editon.pdf第5页
Artificial.Intelligence.for.Games.Second.Editon.pdf第6页
Artificial.Intelligence.for.Games.Second.Editon.pdf第7页
Artificial.Intelligence.for.Games.Second.Editon.pdf第8页
Artificial.Intelligence.for.Games.Second.Editon.pdf第9页
Artificial.Intelligence.for.Games.Second.Editon.pdf第10页
Artificial.Intelligence.for.Games.Second.Editon.pdf第11页
Artificial.Intelligence.for.Games.Second.Editon.pdf第12页
Artificial.Intelligence.for.Games.Second.Editon.pdf第13页
Artificial.Intelligence.for.Games.Second.Editon.pdf第14页
Artificial.Intelligence.for.Games.Second.Editon.pdf第15页
Artificial.Intelligence.for.Games.Second.Editon.pdf第16页
Artificial.Intelligence.for.Games.Second.Editon.pdf第17页
Artificial.Intelligence.for.Games.Second.Editon.pdf第18页
Artificial.Intelligence.for.Games.Second.Editon.pdf第19页
Artificial.Intelligence.for.Games.Second.Editon.pdf第20页

试读结束, 可继续阅读

10积分/C币 立即下载