遊戲AI開發實用指南

遊戲AI開發實用指南 下載 mobi epub pdf 電子書 2025

[葡萄牙] 麥剋·達格雷斯(Micael DaGra?a) 著,楊奕 馬遙譯 譯
圖書標籤:
  • 遊戲AI
  • 人工智能
  • 遊戲開發
  • Unity
  • Unreal Engine
  • 行為樹
  • 尋路算法
  • 機器學習
  • 深度學習
  • 路徑規劃
想要找書就要到 圖書大百科
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!
齣版社: 機械工業齣版社
ISBN:9787111589402
版次:1
商品編碼:12325480
品牌:機工齣版
包裝:平裝
叢書名: 遊戲開發與設計技術叢書
開本:16開
齣版時間:2018-03-01
用紙:膠版紙
頁數:236

具體描述

內容簡介

智能和多樣化是一個成功遊戲的重要元素。本書將通過不同遊戲類型的人工智能示例幫助讀者進入遊戲AI編程,通過C#語言實現新、前沿的算法,終使遊戲通過有趣的人工智能設計增加更好的玩傢體驗。同時,本書將帶領讀者以不同的方式思考人工智能。

目錄

目  錄?Contents
譯者序
前言
關於作者
第1章 不同的問題需要不同的解決方案 1
1.1 遊戲AI解決方案的曆史簡述 1
1.2 電子遊戲中的敵人AI 2
1.3 從簡單到聰明的類人AI 3
1.4 視覺和聲音的感知 4
1.5 總結 5
第2章 可能性圖與概率圖 6
2.1 遊戲狀態 6
2.2 可能性圖 7
2.2.1 怎樣使用可能性圖 7
2.2.2 準備一個可能性圖(FPS遊戲) 8
2.2.3 創建一個可能性圖(FPS遊戲) 9
2.3 定義狀態 10
2.3.1 防守狀態 12
2.3.2 進攻狀態 13
2.3.3 可能性圖小結 16
2.4 概率圖 16
2.4.1 怎樣使用概率圖 17
2.4.2 接下來做什麼 19
2.5 總結 19
第3章 産生式係統 20
3.1 自動有限狀態機 22
3.2 基於效用的函數 26
3.3 遊戲AI的動態平衡 36
3.4 總結 37
第4章 環境與人工智能 38
4.1 視覺交互 39
4.2 基本環境交互 40
4.2.1 移動環境中的物體 40
4.2.2 環境中的障礙物 48
4.2.3 用區域阻斷環境 52
4.3 高級環境交互 54
4.3.1 適應不穩定的地形 55
4.3.2 使用射綫檢測評估決策 56
4.4 總結 58
第5章 動畫行為 59
5.1 2D動畫與3D動畫的對比 59
5.1.1 2D動畫-精靈 59
5.1.2 3D動畫-骨骼結構 61
5.2 動畫狀態機 62
5.3 平滑過渡 78
5.4 總結 79
第6章 導航行為和尋路 80
6.1 導航行為 80
6.1.1 選擇新的方嚮 80
6.1.2 點到點的移動 90
6.2 總結 123
第7章 高級尋路 124
7.1 簡單尋路與高級尋路 124
7.2 A*搜索算法 126
7.3 總結 149
第8章 群體交互 150
8.1 什麼是群體交互 150
8.2 電子遊戲與群體交互 151
8.2.1 《刺客信條》 151
8.2.2 《俠盜獵車》(GTA) 152
8.2.3 《模擬人生》 152
8.2.4 FIFA/實況足球 153
8.3 規劃群體交互 154
8.3.1 小組戰鬥 154
8.3.2 通信(警告區域) 157
8.3.3 通信(與其他AI角色交談) 160
8.3.4 團隊競技 161
8.4 群體碰撞避免 169
8.5 總結 171
第9章 AI規劃與碰撞避免 172
9.1 搜索 172
9.2 總結 189
第10章 感知 190
10.1 潛入類遊戲 190
10.2 關於戰術 190
10.3 關於感知 191
10.4 實現視覺感知 191
10.5 總結 225

前言/序言

Preface?前  言遊戲開發對有些人來說充滿瞭激情,我相信這是因為,我們可以創造一個完全由我們想象齣來的世界。這有點像開創一個新的世界,我們放置的AI角色就像是這個世界的居民,他們生活在我們創造的這個世界裏。我們可以自由地想象他們的行為,基於想象創造一個社會體係,創造一個甜美又溫柔的角色,也可以創造一個前所未有的惡魔——這種可能性是無限的,這也是為什麼我們總是冒齣新的遊戲創意來。無論我們打算做什麼類型的遊戲,這個世界和這些角色都是我們將會看到的基本要素,我們的遊戲也因此獨一無二。理想情況下,我們應當能夠將腦海中所有的東西都原封不動地創造齣來。本書就是想達到這個目的——讓所有人都能夠實現自己的想法,而不應當約束我們的想象力,因此本書將會涵蓋創造人工智能角色的基礎。當你讀完以後,我們可以繼續深入探索這些你學過的主題,創造齣完全符閤我們想象的AI角色。
本書內容第1章是對電子遊戲産業與遊戲AI的綜述。
第2章重點介紹如何創建和使用AI的可能性圖和概率圖。
第3章描述瞭怎樣對AI角色創建一係列必要的規則以實現其目標。
第4章聚焦於遊戲中的角色與他們所處環境之間的交互。
第5章展示瞭在遊戲中實現動畫的最佳實踐。
第6章主要討論實現實時計算的AI移動方案的最佳實踐。
第7章主要介紹使用A*算法尋找最短路徑。
第8章主要講述在當同一場景中有大量角色時,AI應該如何錶現。
第9章探討AI的預期,事先知道當到達某個位置或麵對某個問題它們將會做什麼。
第10章主要討論創建潛入類遊戲的技術:感知係統。
讀前準備推薦安裝一個使用C#語言的遊戲引擎(Unity3D有免費版本,本書的例子中也使用瞭它)。
讀者對象本書麵嚮的讀者是這些開發者:他們已經用C#創作瞭一個遊戲並且在探索用AI擴展遊戲內容,從而創建具有自主行為的群體、敵人或是盟友。
下載示例代碼你可以從http://www.packtpub.com通過個人賬號下載你所購買書籍的樣例源碼。如果你在其他地方購買瞭本書,你可以訪問http://www.packtpub.com/support並注冊賬戶,相關文檔就會直接發送到您的郵箱中。
你也可以訪問華章圖書官網http://www.hzbook.com,通過注冊並登錄個人賬號,下載本書的源代碼。
下載本書彩圖我們還提供瞭一份具有彩色插圖的PDF文件,包含瞭書中的屏幕截圖和圖錶的彩色版。這些彩圖會幫助你更好地理解程序輸齣的變化。可以從以下網址下載:https://www.packtpub.com/sites/default/files/downloads/PracticalGameAIProgramming_ColorImages.pdf。
About the Author?關?於?作?者Micael DaGra?a 是一位遊戲設計師以及AR開發者,現居葡萄牙波爾圖市。他曾為多個遊戲工作室工作,緻力於創建與眾不同的獨立遊戲和交互式應用程序。
Micael 的童年伴隨電子遊戲一起長大,對遊戲的熱情也從未消去過。因此,在他後來的生活中,他決定學習如何製作遊戲。一開始,他沒有任何編程或3D動畫方麵的知識,他便從製作一些簡單的遊戲開始,在這個過程中每次都學到瞭更多的遊戲製作經驗。當遊戲可以正常運行並且變得有趣時,他開始計劃與一個老朋友閤作發布一款遊戲。Micael負責遊戲的技術方麵,確保遊戲可以按照預期進行開發,而他的朋友則負責遊戲的所有美術工作。最終,遊戲成功發布,並獲得瞭其他獨立遊戲開發者的一些積極反饋。由於遊戲産生瞭一些收入,成為遊戲設計師的夢想也隨之變成瞭現實。
現在,Micael為其他工作室工作,幫助他人實現他們的遊戲創意,並整閤瞭一傢專注於製作遊戲以及開發健康類App的公司。盡管他沒有時間繼續從事個人項目,但他還有一些在朋友的幫助下仍在開發中的遊戲項目。
“我要感謝父母多年來給予我無條件的支持,因為沒有他們,我不可能成為一個遊戲設計師;非常感謝我的妹妹Alexandrina,感謝她在我最需要幫助的時候幫助我,讓我在她的辦公室製作遊戲,從而使我可以開始做遊戲設計師。感謝我的老朋友兼老對手Vicente,逼著我不斷突破自己的極限,使我成為一個更好的專業人士。感謝我的女朋友Marta,她的微笑總是讓我很開心,她處理好瞭生活中的每件事,讓我可以專注於我的工作。最後,我想把本書獻給我的爺爺,是他激勵我成為今天的自己。”
《遊戲AI開發實用指南》 內容簡介 《遊戲AI開發實用指南》並非一本介紹特定遊戲AI算法或技術實現的教材,而是一本聚焦於構建高效、可維護、易於擴展的遊戲AI係統的架構設計和開發流程的著作。本書旨在為遊戲開發者提供一套係統性的思考框架,幫助他們理解在復雜的遊戲環境中,如何纔能設計齣既能滿足玩傢體驗需求,又能兼顧開發效率和迭代靈活性的AI。 本書的核心觀點在於,優秀的遊戲AI不僅僅是算法的堆砌,更是對遊戲機製、玩傢行為、係統性能以及團隊協作的深刻理解和有效整閤。它強調從宏觀層麵齣發,將AI視為遊戲整體不可分割的一部分,並在整個遊戲開發生命周期中貫穿始終。 第一部分:遊戲AI的哲學與定位 在開始深入技術細節之前,本書首先會探討遊戲AI的本質和它在遊戲開發中的戰略地位。我們會從以下幾個維度深入剖析: AI的定義與誤區: 區分“智能”AI與“功能性”AI。很多時候,遊戲AI並非追求模擬人類的通用智能,而是要通過巧妙的設計,提供逼真、有趣、有挑戰性的交互體驗。我們會討論“模擬”與“錶現”之間的界限,以及如何在有限的資源下實現最佳的玩傢感知。 AI與遊戲設計的協同: AI不是獨立於遊戲玩法而存在的。本書將詳細闡述AI如何服務於遊戲的核心樂趣,如何通過AI的行為來引導玩傢、塑造敘事、增加遊戲的深度和重玩價值。我們將探討AI在不同類型遊戲(如RTS、RPG、FPS、模擬經營等)中的獨特作用和設計考量。 AI的性能考量與權衡: 任何AI係統都必須在可接受的性能範圍內運行。本書將介紹在遊戲開發中,性能始終是AI設計中一個至關重要的約束。我們會討論如何在復雜性和性能之間找到平衡點,以及如何通過架構設計來優化AI的執行效率。 AI的迭代與演進: 遊戲開發是一個持續迭代的過程,AI也應如此。本書將強調AI係統的靈活性,以及如何設計能夠方便修改、測試和更新的AI,以適應不斷變化的遊戲設計需求和玩傢反饋。 第二部分:AI架構設計原則 本書將重點介紹構建健壯、可維護AI係統的架構設計原則。這部分內容是本書的基石,它指導開發者如何組織和管理AI相關的代碼和邏輯: 模塊化與組件化: 提倡將AI係統分解為獨立的、可重用的模塊和組件。我們將深入探討如何設計這些模塊,例如行為樹、狀態機、決策樹、感知模塊、導航模塊、目標管理模塊等,並解釋它們各自的優缺點以及適用的場景。 數據驅動的設計: 強調將AI的“智能”部分與遊戲數據分離,使得AI的行為可以通過配置和數據來調整,而無需修改核心代碼。我們將介紹如何設計易於管理和修改的AI數據結構,以及如何利用這些數據來驅動AI的行為。 分層與抽象: 介紹如何通過建立不同層次的AI抽象來簡化復雜性。例如,從低級的感知和移動,到中級的戰術決策,再到高級的策略規劃。我們將討論如何設計清晰的接口和通信機製,使得不同層次的AI組件能夠有效地協同工作。 麵嚮對象與實體組件係統(ECS)在AI中的應用: 探討如何在AI開發中運用麵嚮對象設計原則,以及現代的ECS架構如何為AI係統的構建帶來新的可能性,例如在處理大量AI實體時的性能優勢和靈活性。 AI的通信與協作: 在多AI互動的場景中,AI之間的通信和協作至關重要。本書將介紹設計AI群體行為、閤作機製、博弈策略等的設計思路和實現方法。 第三部分:關鍵AI子係統的設計考量 在理解瞭宏觀架構之後,本書將深入探討幾種遊戲AI中常見的關鍵子係統的設計和實現要點,但不是直接提供代碼實現,而是側重於設計思路和技術選擇: 感知係統: 信息獲取: 如何讓AI感知遊戲世界中的各種信息,包括視覺、聽覺、觸覺等模擬。 信息處理與過濾: 如何有效地處理海量的信息,過濾掉不相關的乾擾,提取關鍵信息。 注意力機製: AI如何分配有限的注意力資源,關注最重要的對象或事件。 決策與規劃: 行為決策: 行為樹、狀態機、效用係統等常用決策模型的深度解析,以及如何根據遊戲需求選擇和組閤。 目標導嚮的行為: 如何設計AI的目標體係,以及AI如何根據目標來製定和執行一係列動作。 路徑尋找與導航: A算法、導航網格、導航代理等在遊戲AI中的實際應用和優化技巧。 戰術與策略: 如何設計AI在特定情境下的戰術應對,以及更長遠的策略規劃。 運動與控製: 角色動畫與AI的融閤: 如何讓AI的動作與動畫係統無縫銜接,創造流暢逼真的角色錶現。 受力與物理模擬: AI在物理環境中如何做齣真實的反應,例如躲避障礙、應對碰撞等。 高級運動控製: 探討如PID控製器、模仿學習等在實現更復雜運動行為中的應用。 學習與適應(非通用AI): 簡化的學習機製: 討論在遊戲AI中可以實現的、易於實現且有實際效果的學習和適應機製,例如基於錶現的參數調整、基於經驗的迴避等,而非復雜的深度學習模型。 玩傢行為的學習: 如何通過學習玩傢的行為模式來調整AI策略,以提供更具挑戰性或更有趣的體驗。 第四部分:AI開發流程與實踐 本書將結閤實際的遊戲開發流程,講解如何有效地進行AI的開發、測試和優化: AI需求的定義與規格化: 如何從遊戲設計文檔齣發,準確理解AI需要實現的功能和達到的效果。 AI的原型開發與快速迭代: 強調快速驗證AI想法的重要性,以及如何通過原型來收集反饋和優化設計。 AI的測試與調試: 單元測試與集成測試: 如何針對AI模塊進行有效的測試。 場景測試與迴放: 利用遊戲場景來測試AI在不同情況下的錶現。 AI行為分析與可視化: 介紹調試AI行為的常用工具和技術,幫助開發者快速定位問題。 AI的性能分析與優化: 性能瓶頸的識彆: 如何利用性能分析工具找到AI係統的瓶頸。 常用優化策略: 介紹各種代碼、算法和架構層麵的優化技巧。 團隊協作與AI工具鏈: AI設計師與程序員的協作: 強調跨職能團隊的有效溝通與配閤。 AI編輯器與可視化工具: 介紹如何利用現有的工具或開發自定義工具來提升AI開發的效率。 第五部分:麵嚮未來的AI發展趨勢 在結尾部分,本書將展望遊戲AI的未來發展方嚮,並鼓勵開發者保持學習和探索的精神: AI在遊戲敘事中的潛力: 探討AI如何驅動更動態、更個性化的遊戲敘事。 更智能的NPC交互: 展望更自然、更富有情感的NPC行為。 AI生成內容(AIGC)與遊戲AI的結閤: 探討AI在關卡設計、角色生成等方麵的應用,以及它們與遊戲AI係統的互動。 機器學習在遊戲AI中的審慎應用: 討論在遊戲環境中,如何以務實和有效的方式應用機器學習技術,以及需要注意的挑戰。 總結 《遊戲AI開發實用指南》並非一本“照貓畫虎”式的技術手冊,而是一本“授人以漁”的思維指南。它旨在幫助開發者建立起對遊戲AI開發的全局觀和係統性認知,掌握構建高質量AI係統的核心思想和方法論。本書將通過清晰的邏輯、豐富的案例分析(但非具體代碼實現),引導讀者理解“為什麼”和“怎麼做”,最終培養齣能夠獨立設計和實現齣滿足遊戲需求、帶來卓越玩傢體驗的AI係統。它強調的是一種工程化的思維方式,一種麵嚮解決問題的係統性方法,從而讓開發者在麵對層齣不窮的遊戲AI挑戰時,能夠遊刃有餘,不斷創造齣令人驚嘆的遊戲體驗。

用戶評價

評分

這本書最大的價值在於它成功地搭建瞭一座理論與實踐之間的堅實橋梁。它不是一本隻停留在概念層麵的“白皮書”,也不是一本隻關注特定引擎工具的“操作手冊”。它更像是一本關於“如何像一名資深工程師一樣思考”的思維訓練營。作者不斷引導讀者去思考代碼背後的設計哲學,去理解為什麼某些設計模式在遊戲領域比在其他軟件領域更具優勢。當我閤上書本,重新審視我過去的一些項目時,我能清晰地看到自己思維上的盲點和可以提升的空間。這本書不僅教會瞭我如何實現某個功能,更重要的是,它教會瞭我如何去設計一個健壯、可擴展且易於維護的係統。這對於任何誌在遊戲行業深耕的專業人士來說,都是一筆無法估量的財富。

評分

從排版和印刷質量上來說,這本書的製作水平絕對是上乘之作。紙張的質感厚實適中,墨水的清晰度極高,即便是長時間閱讀也不會感到眼睛疲勞,這對於需要長時間麵對屏幕和書本的開發者來說,是一個非常貼心的設計。圖錶的繪製也極其精美和專業,復雜的係統架構圖和數據流嚮圖被清晰地分解和可視化,使得原本抽象的概念變得直觀易懂。我可以毫不誇張地說,這本書的實體版本在書架上看起來也很有分量感,完全配得上其內容的深度和廣度。很多技術書籍在內容上尚可,但在實體呈現上卻顯得廉價粗糙,這本書在硬件和軟件(內容)兩方麵都做到瞭極緻的平衡,這體現瞭齣版方對知識的尊重。

評分

我不得不說,這本書的實操性遠超我的預期。許多技術書籍往往在理論講解上大刀闊斧,但在具體的代碼實現和調試細節上卻一筆帶過,導緻讀者在實際操作中寸步難行。然而,這本書在這方麵做得尤為齣色,每一個章節的示例代碼都經過瞭反復的打磨和優化,可以直接復製粘貼到自己的項目中進行測試和修改。作者對於代碼風格的規範性也極為重視,這對於團隊協作開發尤其重要。在講解到某些核心功能模塊的實現時,書中不僅展示瞭“是什麼”,更細緻地剖析瞭“為什麼這樣設計”,這種對設計思想的深度挖掘,遠比單純的代碼堆砌來得更有價值。閱讀這本書的過程,就像是跟著一位經驗豐富的導師進行一對一的輔導,每一步的思考路徑都清晰可見,讓人在不知不覺中提升瞭解決復雜問題的能力和代碼的健壯性。

評分

這本書的裝幀設計非常吸引人,封麵采用瞭深邃的藍色調,配以簡潔有力的白色字體,給人一種專業、嚴謹又不失活力的感覺。初次翻閱時,被其清晰的目錄結構所震撼,內容組織得井井有條,從基礎理論到高級應用,層層遞進,非常適閤希望係統學習遊戲開發相關技術的讀者。作者在開篇部分對於技術選型和開發流程的闡述,顯得非常老道和務實,沒有過多空泛的理論,而是直擊痛點,讓人感覺這是一本真正能在實戰中用到的工具書。尤其值得稱贊的是,書中對不同開發環境的兼容性考慮得非常周全,即便是初學者也能很快找到適閤自己的切入點,而經驗豐富的開發者也能從中找到提升效率的捷徑。書中引用的案例都非常貼近當前主流遊戲開發的實際需求,講解深入淺齣,即便是復雜算法也能用通俗易懂的語言加以解釋,這一點極大地降低瞭閱讀門檻,讓人閱讀起來毫不費力,充滿瞭探索的樂趣。

評分

這本書的敘事風格非常獨特,它不像傳統教科書那樣闆著臉孔,而是帶著一種與讀者平等對話的親和力。作者似乎非常瞭解遊戲開發者在學習過程中容易遇到的那些“坑”,因此在關鍵節點會適時地插入一些“過來人的經驗談”,這些看似隨筆的點滴,實則蘊含著寶貴的行業智慧。比如,在討論性能優化章節時,作者沒有僅僅列齣優化列錶,而是結閤具體場景,分析瞭不同優化手段的適用範圍和潛在副作用,這種辯證的看待問題的角度,讓讀者學會瞭如何在權衡中做齣最佳決策。更令人驚喜的是,書中對未來技術趨勢的預測和探討,也顯得十分精準和具有前瞻性,這使得這本書不僅僅是一本解決當下問題的指南,更像是一份麵嚮未來的學習路綫圖,讓人感到視野為之開闊。

相關圖書

本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.teaonline.club All Rights Reserved. 圖書大百科 版權所有