乙個好的遊戲除了最簡單的畫面等必要因素,我們需要考慮其趣味性,而趣味性則是由規則和智慧型共同控制的,規則的制定不是**來決定的,故我們這篇來學習更高大上的一部分–人工智慧
一、什麼是人工智慧
簡言之,就是自我感知和反應的人造系統
二、初探人工智慧
以超級瑪麗為例:
一直向前走,撞牆則換方向,其內部**可能只是
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 建立第乙個工...