摘要:不可否認我國近年來計算機軟件與硬件系統(tǒng)得到快速發(fā)展,其在游戲畫面設計方面也注重引入虛擬現(xiàn)實以及3D圖形技術等,一定程度上可與電影畫面表現(xiàn)力相媲美。然而實際進行游戲軟件開發(fā)過程中,仍缺少配套的理論指導,即使許多人工智能技術開始應用于設計環(huán)節(jié)中,但多局限在設計人員自身主觀經(jīng)驗方面,游戲中所表現(xiàn)的人工智能極為落后。本文主要從游戲引擎、角色運動以及路徑規(guī)劃等方面,對人工智能技術的應用進行探析。
關鍵詞:人工智能技術;游戲軟件;應用
隨著計算機技術的快速發(fā)展,對游戲軟件的設計也提出更高的要求。以人工智能技術為典型代表,是近年來游戲軟件開發(fā)應用的主要技術之一,能夠滿足實時特性要求,為游戲玩家?guī)砀S富的體驗。對此,在游戲軟件設計中,如何發(fā)揮人工智能技術的作用,成為現(xiàn)行游戲軟件開發(fā)需關注的重要內(nèi)容。
一、人工智能技術在游戲引擎中的體現(xiàn)
在用戶對計算機游戲需求不斷提高的背景下,為游戲程序設計帶來極大的難題,如3D游戲在游戲畫面表現(xiàn)力提高方面,需注重3D圖形技術的應用,而設計中除考慮美術設計內(nèi)容外許多游戲邏輯環(huán)節(jié)中也要求引入較多的數(shù)據(jù),無論在數(shù)據(jù)處理或整合等各方面都面臨極大的挑戰(zhàn),由此,便產(chǎn)生游戲引擎的概念,其要求采用分層次的設計方式,一定程度對人工智能技術的應用進行明確。具體應用中,游戲引擎結(jié)構(gòu)主要可細化為三方面,即:第一,高層接口。該接口設計中,主要考慮人工智能算法作用的發(fā)揮,程序設計人員可通過調(diào)用接口對游戲角色的戰(zhàn)術活動、攻擊活動等進行操作,其中人工智能算法的作用主要體現(xiàn)在對中層接口的調(diào)用方面。第二,中層接口。該接口的設計主要結(jié)合低層接口中相關的動畫控制或運動控制等功能,確保游戲角色可進行難度較高的行為動作。第三,低層接口。該接口的作用在于控制角色的動畫與基本動作,并提供物理計算與3D渲染等功能,但需注意其功能僅設定在控制角色朝向或位置方面,許多高層次運動、行為如速度等,主要由中層接口完成[1]。
二、人工智能技術在角色運動中的應用
對游戲中角色的運動,主要考慮到位置與朝向兩方面屬性,而在角色類型上,又可細化為如動物或人類等自由運動角色,以及依托于轉(zhuǎn)向力實現(xiàn)運動的,如飛機或汽車等角色。其中人工智能技術的應用首先體現(xiàn)在隨機運動方面,以往游戲設計中,進行角色移動的控制主要利用隨機數(shù),角色的運動不具備較強的穩(wěn)定性與一致性,對此利用人工智能技術完成隨機移動的設計:①對角色轉(zhuǎn)向力利用噪聲函數(shù)進行計算;②將可作為轉(zhuǎn)向力的變量融入隨機函數(shù)中,確保左右運動盡可能保持一致性;③記錄運動的路線與實際位置,確保再次運動中不會重復之前的路線;④通過投射目標點的方式,使角色向該目標點前進。其次,從躲避障礙物角度。由于游戲中的角色往往受自身機動性限制,即使應用相關的模型算法也難以防止碰撞問題的產(chǎn)生,對此可引入傳感器進行障礙物的判斷,但通常障礙物形狀過于復雜的情況下單純利用傳感器難以有效解決碰撞問題。這種情況下便需進行游戲物體的區(qū)分,判斷其是否為動態(tài)或靜態(tài)等。其中動態(tài)物體多指為處于移動狀態(tài)的角色或道具,可被稱為碰撞圓柱體,而靜態(tài)物體一般體現(xiàn)在游戲場景中的如墻壁或房間等物體,可引入相應的尋路算法判斷物體移動路徑。除此之外,人工智能技術在角色運動方面也表現(xiàn)在如模式運動或群聚行為等方面,往往引入一定的算法如追蹤算法、測試框算法以及Boid算法等確保角色運動的設計更為合理[2]。
三、人工智能技術在路徑規(guī)劃中的應用
路徑規(guī)劃中,通常需應用全局或局部兩種尋路的方式。其中全局方式主要指一次性完成目的地路徑的計算,多適用于戰(zhàn)略游戲中,而局部方式則主要以周邊環(huán)境變化特征為依據(jù)進行方向的確定,在動作游戲中的體現(xiàn)較為明顯。在確定路徑規(guī)劃尋路方式的基礎上還需構(gòu)建相應的搜索空間,其主要指對路徑相關屬性,如路邊或路點等進行分析。不難發(fā)現(xiàn)大多三維游戲中所體現(xiàn)的場景多以三維形式存在,但場景中本身存在模擬重力,場景實質(zhì)為二維圖,如其中的運動方式包括飛行、跳躍等都將二維圖作為基礎。因此搜索空間的構(gòu)建需以二維平面投影為基礎。具體構(gòu)建中,人工智能技術的應用多體現(xiàn)在空間劃分、導航網(wǎng)絡以及指出路點位置等方面。實際路徑規(guī)劃中,無論選擇哪種尋路方式都可能因場景中角色過多或畫面復雜等出現(xiàn)資源過載情況,需利用人工智能技術進行路徑規(guī)劃的優(yōu)化,具體方法包括:第一,對最短路徑進行計算??稍谟螒蜍浖\行中不再拘泥于查查路徑方面,而通過路徑查找表的描述尋找最短路徑。第二,對路徑代價的計算,其主要判定路點之間運動最小的代價,可直接通過交叉索引對代價進行分析,第三,采用分層次的方式。游戲軟件設計中對于搜索空間圖可進行不同級別的構(gòu)建,在完成路徑計算的基礎上使搜索空間更為細致,保證路徑計算更為準確。這樣在完成路徑規(guī)劃優(yōu)化的條件下,才可使游戲軟件路徑規(guī)劃更加合理[3]。
結(jié)論:游戲軟件中,引入人工智能技術是使游戲動畫效果提高的重要途徑。實際應用中除文中提及的游戲引擎、角色運動以及路徑規(guī)劃等方面內(nèi)容外,人工智能技術的應用也表現(xiàn)在邏輯控制以及腳本系統(tǒng)設計等方面,只有游戲軟件設計中發(fā)揮人工智能技術優(yōu)勢的情況下,才可解決以往游戲中存在的動畫表現(xiàn)力不強以及系統(tǒng)資源過載等問題。
參考文獻:
[1] 楊易東.人工智能技術在計算機游戲軟件中的應用[J].通訊世界. 2015(16).
[2] 葛瑋,吳佳.計算機游戲中的人工智能技術[J].電子技術與軟件工程. 2014(10).
[3] 劉偉,王目宣.淺談人工智能與游戲思維[J].科學與社會. 2016(03).
作者簡介:
孫力(1980—),男,漢族,黑龍江齊齊哈爾人,吉林大學軟件工程碩士,哈爾濱信息工程學院軟件學院軟件工程專業(yè)教師,研究方向:游戲開發(fā)、虛擬、增強、混合現(xiàn)實應用開發(fā)。