86:曙光系統
造成這種“要保護的NPC往怪堆里沖”的現象都是因為開發者事先沒有做好NPC的行為軌跡,所以NPC會做出各種不符合邏輯的行為。
袁圖拿來一臺筆記本電腦,這臺電腦里有一段事先做好的游戲場景。
“汪總請看,這個NPC會撿起敵人掉落在地上的武器,如果你靠近NPC,還能彈出選項讓NPC把手中的武器給你。”
“NPC手無寸鐵時,也不會貿然沖進敵人堆送死。”
“這段開車的地方,如果玩家從副駕駛進入,NPC就會自動進入駕駛位開車到任務指定地點,如果玩家進入駕駛位,NPC就會坐到副駕駛。”
“NPC還會和場景互動,比如把一邊的沙袋堆起來,做個臨時掩體,還能將載具擋在你和敵人之間,為你擋下一些火力!”
“它還會根據你的行為作出反饋,記得你之前做過的事情,能與周圍的環境互動,甚至有自己的作息表。“
“它能聽見腳步聲,發現倒地的隊友,你被包圍了也會趕過來救急,甚至還懂得戰斗的時候繞后,打敵人一個措手不及!”
“同時敵人的戰斗邏輯也都有所提升。”
“現在的敵人不同難度下會有不同的表現形式。”
“低難度下敵人只是躲在掩體里朝你開槍,不會移動位置。”
“高難度下,敵人不僅會離開掩體,還會撿起戰死隊友的槍,向你沖鋒時也不再是直線沖鋒,而是一種S形走位,甚至會把你丟出去的手雷丟回來。”
“而且高難度下,敵人甚至會和隊友進行一些戰術上的協作,他們會漸漸靠近你,將你包圍!”
“有時還會有尖兵突然摸到你附近給你來個措手不及!”
汪佳看完了袁圖的演示,總體感覺沒什么特別的:“這些,現在很多游戲都能做到啊。”
袁圖笑了笑:“但那些游戲都是經過了大量工作去設計這些人物行為的,那些游戲的NPC行為都是預先預設好的,只會根據腳本進行決策,而我演示的這個,只是市面上普通的射擊游戲模板,但這些人物和NPC的行為,都是AI系統自動完成的!”
那這個東西不錯啊,不同難度的敵人有不同的表現,隊友的行為也更智能了。
大大減少了開發游戲的工作量。
要知道,當游戲開發過程中預算吃緊時,第一個被砍的就是AI的預算!
項目組首先會削弱AI的需求,轉而去實現玩法內容。
這種情況下,游戲里的NPC只能執行一些非常簡單的行為,比如對著敵人盲射,胡亂從到敵人堆里。
原因之一是AI的提升需要許多投入才能看到成效,但是別的地方比如圖像,那真的是砸多少錢立馬就能看到效果。
但是現在的游戲體量越來越大,游戲設計師必須要在游戲里加入許多NPC作為玩家的“陪玩”角色。
每加入一個新NPC就可能需要設計許多行為邏輯。
以往游戲里的NPC可能上一秒和你不共戴天,然后你轉了一圈,消除了仇恨值之后,那個NPC立馬又和你稱兄道弟起來。
或者是你當著NPC的面盜竊,但是人家無動于衷。
如果說NPC這些智障行為玩家還有些看傻子的歡樂,那敵人的智障行為就真的是出戲了。
有些敵人貼臉對著主角開槍都是描邊大師,有些是經典小聾瞎。
生硬的戰斗并不有趣。
隊友NPC在戰斗中也往往是個劃水高手,不但無法給你帶來幫助,反而處處拖你后腿。
很多玩家都不喜歡那些和NPC一起戰斗的任務,就是因為這些NPC實在是太蠢了,只會給你帶來麻煩,影響游戲體驗。
汪佳希望的是有個能夠一鍵生成的傻瓜式操作,點點按鈕就能讓這些NPC“活”起來。
“而且這個系統還會向玩家學習, AI會越來越像真實的玩家!”
袁圖繼續說道:“還有這段,NPC在念臺詞時不再是站樁了,NPC會和周圍環境互動!這些NPC念臺詞時還能同時做別的事情,表情管理也很到位,即使沒有動作捕捉,NPC也會根據臺詞語音矯正口型,不會出現音畫不同步的情況。”
這個功能也不錯啊!
光是想要讓NPC做到不會“站樁念臺詞”需要很多精巧的設置,比如《巫師三》就經常切換鏡頭,通過轉換鏡頭的方式讓玩家把注意力關注在臺詞上而不是“這個NPC站著不動念臺詞。”
《賽博朋克2077》里,游戲制作者似乎很喜歡讓玩家“坐”。
杰克和你見面是一邊坐一邊吃面,德肖恩也是坐著和你談生意,很多場景的NPC也是坐著和你聊的。
2077的這些小細節沖淡了NPC照著劇本念臺詞的違和感,同時又降低了工作量。
的確,坐著談話也更符合現實的場景,人們日常生活中也總是坐著聊事情的。
游戲業界光是解決NPC站樁念臺詞的問題就花了非常大的功夫。
為了讓玩家更有代入感,游戲廠商做出了許多難以想象的努力。
這個AI系統的效果汪佳很滿意,盡管做到的只是市面上很多游戲都有的內容,但這可是一鍵自動生成的!方便了不少!
“這個系統現在是開源的吧?”汪佳問道。
“是的,將來所有開發者都可以下載到它的源代碼。”袁圖答道。
軟件界,很多東西都是開源的,很多人都想著做出個軟件能獲得什么利益,但事實是很多軟件項目都是免費開源的。
開源這種行為看起來有種無私奉獻的味道,而且開源能吸引更多的人幫助發現BUG,優化程序,他們也一樣會給你貢獻代碼,提高質量。
如今的互聯網,主流思維已經逐漸商業甚至自私了起來,程序員之間卻還有著開源的傳統。
開源也是有著利益可言的。
第一,開源能提升代碼質量,同時降低開發成本。
第二,開源能展示公司實力。
第三,開源能結識朋友,擴大影響力,很多軟件就是因為開源稱霸了全世界,比如某瀏覽器內核。
第四,許多復雜的項目需要很多人的共同努力,這些參與項目的人也能從中學習到許多事情,增加閱歷,然后又會反哺項目本身,這是一種共贏的行為。
第五,開源能保護項目,聽起來很扯淡,但這確實是很多公司的做法,開源的項目不會因為公司某個核心人員的離職而消失,它會永遠保留在開源社區上。
很多閉源的復雜項目都會因為重要技術人員的離職而消失。
這些利益不是能用錢衡量的。
“這個AI系統叫什么名字?”
“曙光。”
曙光系統的出現一定會成為游戲界的又一個里程碑。
當下的游戲引擎總是在提升游戲畫面質量,而在AI方面的提升卻不明顯。