Learning Game AI Programming with Lua (Paperback)

David Young

  • 出版商: Packt Publishing
  • 出版日期: 2014-11-28
  • 售價: $1,860
  • 貴賓價: 9.5$1,767
  • 語言: 英文
  • 頁數: 352
  • 裝訂: Paperback
  • ISBN: 1783281332
  • ISBN-13: 9781783281336
  • 相關分類: 程式語言人工智慧
  • 下單後立即進貨 (約3~4週)

相關主題

商品描述

Leverage the power of Lua programming to create game AI that focuses on motion, animation, and tactics

About This Book

  • Focus on programming game AI rather than handling low-level resource management
  • Bind Lua to build a script-based game AI using a C++ backend that provides hooks for graphics, physics, and resource handling
  • A tutorial-based approach where AI functionalities are layered piece by piece to create fully functional AI

Who This Book Is For

If you are a game developer or a general programmer who wishes to focus on programming systems and techniques to build your game AI without creating low-level interfaces in a game engine, then this book is for you.

Knowledge of C++ will come in handy to debug the entirety of the AI sandbox and expand on the features present within the book, but it is not required.

What You Will Learn

  • Create an animation state machine to drive AI animations within Lua
  • Build and find paths on navigation meshes
  • Write and debug Lua scripts within a full-scale Lua IDE
  • Develop decision logic with behavior trees, state machines, and decision trees to build modular, reusable AI
  • Manage short- and long-term knowledge representation with blackboard data structures
  • Add sensory perception to give AIs the ability to see and hear
  • Develop high-level tactics with multiple AIs based on influence maps

In Detail

Game AI can be easily broken up into a number of components such as decision making, animation handling, and tactics, but the balance and interaction between each system strikes a balance between good AI and bad AI.

Beginning with an introduction to the AI sandbox, each new aspect of game AI is introduced, implemented, and then expanded upon. Going forward, you will learn to utilize open source libraries such as Ogre3D, Bullet Physics, OpenSteer, Recast, Detour, and Lua to create an AI sandbox with an entire codebase available to expand and step through.

This is done through a step-by-step approach, from learning to move basic shapes to fully animating your soldiers. By the end of the book, your AI will be able to navigate, pathfind, manage animation playback, communicate, and perceive their environment.

商品描述(中文翻譯)

運用Lua程式設計的力量,創建專注於運動、動畫和戰術的遊戲人工智慧

關於本書
- 專注於程式設計遊戲人工智慧,而不是處理低層級資源管理
- 使用C++後端將Lua綁定,建立基於腳本的遊戲人工智慧,提供圖形、物理和資源處理的鉤子
- 以教學為基礎的方法,逐步分層AI功能,創建完全功能的人工智慧

本書適合對程式設計系統和技術,以建立遊戲人工智慧而不需在遊戲引擎中創建低層級介面的遊戲開發人員或一般程式設計師。

了解C++將有助於除錯AI沙盒的整體,並擴展本書中的功能,但不是必需的。

你將學到什麼
- 創建動畫狀態機以驅動Lua中的AI動畫
- 在導航網格上建立和尋找路徑
- 在完整的Lua IDE中編寫和除錯Lua腳本
- 使用行為樹、狀態機和決策樹開發決策邏輯,以建立模塊化、可重用的AI
- 使用黑板資料結構管理短期和長期的知識表示
- 添加感知能力,使AI能夠看到和聽到
- 基於影響地圖開發多個AI的高級戰術

詳細內容
遊戲人工智慧可以輕鬆地分為多個組件,例如決策製定、動畫處理和戰術,但每個系統之間的平衡和互動會影響良好和糟糕的人工智慧。

從介紹AI沙盒開始,逐步引入、實現並擴展遊戲人工智慧的每個新方面。接下來,您將學習使用Ogre3D、Bullet Physics、OpenSteer、Recast、Detour和Lua等開源庫,創建一個AI沙盒,並提供整個程式碼庫以擴展和逐步進行。

這是通過逐步的方法完成的,從學習移動基本形狀到完全動畫化您的士兵。在本書結束時,您的AI將能夠導航、尋找路徑、管理動畫播放、通信和感知環境。