Artificial Intelligince
動物和人都有求生的本能,在它的指導(dǎo)下,得以完成一些基本的和生存有關(guān)的行為。而計算機(jī)是20世紀(jì)誕生的產(chǎn)物,能夠快速的處理輸入,邏輯和數(shù)學(xué)運(yùn)算。AI,就是使計算機(jī)具備一定的本能,使它具備一定的行為能力。
AI領(lǐng)域
當(dāng)然,想讓計算機(jī)像真正的人那樣具備各種情況下的行為能力,AI這個課題就會變得過于龐大。所以AI一般是指在特定環(huán)境,特定領(lǐng)域,處理特定問題的這么一項(xiàng)技術(shù)。(這聽起來有點(diǎn)像算法,實(shí)際上AI就是一種算法)。
AI主要處理的問題
1.計算機(jī)識別問題。
通過camera或者別的輸入設(shè)備獲取圖像信息,并通過算法將其識別為有用的信息。
最近幾年隨著硬件水平的不斷提高,這一領(lǐng)域發(fā)展很快。Google,蘋果都有各自的識別產(chǎn)品。
2.自然語言處理(nature-language processing)
讓人理解語言是不太困難的一件事。但是自然語言對于計算機(jī)來說,就不那么簡單了。一句話可以有不同的說法。同一句話結(jié)合不同的語境又可能有不同的意思。不過可喜的是,這一領(lǐng)域現(xiàn)在已經(jīng)有很多成熟的解決方案了。
3.處理直覺
直覺對人來說是十分自然的一件事,直覺幫助人在沒有完全弄清問題的情況下做出正確的判斷。像你去了一個陌生的城市,肚子餓了,總能找到比較好的餐館吃飯。但是想讓計算機(jī)具備直覺,卻是非常難的一件事。直覺是基于大量的知識庫,同時在人腦中形成正確的化學(xué)反應(yīng)。目前這一領(lǐng)域還在發(fā)展當(dāng)中。
游戲AI領(lǐng)域
為什么要在游戲中加入AI,這個涉及到游戲設(shè)計了。游戲設(shè)計又是另外的一門知識,要談到這一塊,這個系列幾乎就沒辦法完成了了。。。這也很簡單,游戲是為了挑戰(zhàn)而生的。游戲中的AI,是為了讓游戲具備一定的挑戰(zhàn)性。
在游戲世界中,我們希望NPC具備智能,就像它真的是活生生的生物一樣。然而要讓一個NPC具備與生物相同的智能,考慮到項(xiàng)目的真正需求,這一點(diǎn)也不太必要(雖然現(xiàn)在的計算機(jī)已經(jīng)足夠應(yīng)付這樣的運(yùn)算了)。很多時候,AI只是讓NPC看上去像有一些智能,但實(shí)際上,它只是幾個狀態(tài)的轉(zhuǎn)換而已。
e.g.
舉個例子,魔獸世界中的NPC怪,基本狀態(tài)有,巡邏,追玩家,射殺玩家這三種。
這3種狀態(tài),通過一定的規(guī)則,在一定的事件下,轉(zhuǎn)換。在代碼中,是通過狀態(tài)機(jī) StateMachine來實(shí)現(xiàn)的。就是設(shè)計模式中的狀態(tài)模式。之后我們會談到。
今天先寫到這里吧。隨著UNITY,COCOS2D這樣的集成工具出現(xiàn),制作一款游戲?qū)τ谝粋€想實(shí)現(xiàn)游戲夢想的人來說,大大節(jié)省了時間,而且這個圈子里的精英人士還會提供插件(有很多事免費(fèi)的),更是進(jìn)一步節(jié)省了制作一款游戲的時間。就我個人而言,我很慶幸自己生在了這個時代(Good Time)!
Have a nice trip!