python之pygame初探人工智慧(五)

2021-09-26 01:18:47 字數 958 閱讀 3252

乙個好的遊戲除了最簡單的畫面等必要因素,我們需要考慮其趣味性,而趣味性則是由規則和智慧型共同控制的,規則的制定不是**來決定的,故我們這篇來學習更高大上的一部分–人工智慧

一、什麼是人工智慧

簡言之,就是自我感知和反應的人造系統

二、初探人工智慧

以超級瑪麗為例:

一直向前走,撞牆則換方向,其內部**可能只是

self.move_forward(

)if self.hit_wall():

self.change_direction(

)

而如果再複雜一點,能夠控制其發射,則**可能就是:

if self.state ==

"exploring"

: self.random_heading(

)if self.can_see(player)

: self.state =

"seeking"

elif self.state ==

"seeking"

: self.head_towards(

"player"

)if self.in_range_of(player)

: self.fire_at(player)

if noe self.can_see(player)

self.state =

"exploring"

觀察這段**,可知道其有兩種狀態:搜尋和鎖定

即搜尋時就隨處走動,發現目標就**,但很多因素沒有考慮到,整個過程比較簡單,故我們可以通過增加狀態來提高遊戲的可玩性

三、狀態機

有限狀態機(狀態機)fsm

其定義了兩方面內容

以上面**含義為例,我們所畫的狀態圖為:

第五篇pygame的學習就到此結束啦!

下次再具體學習如何用編寫具體的ai類及**

Python 學習筆記之pygame的安裝

介紹最方便的方法吧 網上有很多實用的 但是可能年頭太遠 不能用了 我是windows 3.6版本的 一 安裝pip 在cmd下輸入 python m pip version 如果有下面這個 就是有pip 可以直接安裝pygame了 如果沒有這一條的話 訪問 如果出現對話方塊,請儲存檔案 如果出現 將...

Python之pygame學習矩形區域(5)

在pygame中矩形區域這個模擬較特殊,在遊戲中,所有可見的元素都是以矩形區域來描述位置。可以從left,top,width和height值的組合建立rect。也可以從已經是rect或具有名為 rect 的屬性的python物件建立rect。任何需要rect引數的pygame函式也接受這些值中的任何...

python學習之 Django初探

django的安裝 在官網上可以看到,安裝有2種方法,一種是直接pip,還有一種是git 我在我的windows上安裝django,已經配置好了script的路徑 直接esay install django django被安裝在 c python27 lib site packages 建立第乙個工...