讓人流淚的大鷲,我終于知道它是怎么被做出來的了

距離通關《最后的守護者》已經過去一年,但游戲中那只神奇的大鷲依然讓我念念不忘。
如果要評選游戲中最讓人喜愛的動物,大鷲絕對會入選并成為冠軍的有力競爭者。它會嗚嗚低吟著過來蹭你吶,當它用柔軟的嘴把你叼起來時,你的心難道不會融化?如果大鷲沒成為冠軍,那大概是因為在游戲前期大鷲顯得不夠靈性,那段經歷想起來就火冒三丈,我現(xiàn)在都還記仇。但那才是一只動物該有的樣子吧……

我親眼看著老王一路咬牙切齒地通關《最后的守護者》,然后對著結局畫面靜靜流淚……
我一直很好奇開發(fā)組是怎么設計大鷲的,才讓這只虛構的動物顯得如此生動。當然我們可以簡單地理解它就是一套 AI,是無數(shù)行為參數(shù)調整的結果,但我還是希望能了解更多細節(jié)。
正好,本作開發(fā)商 genDESIGN 日前分享了他們在 CEDEC2017 上的演講資料,演講者為本作首席動畫師田中政伸。這份演講資料展示了《最后的守護者》的一些設計細節(jié),在此與大家分享:

首先,大鷲的特征包括:動物、四足行走、身體巨大、有羽毛。要實現(xiàn)這些特征,就有對應的設計需求,比如大鷲作為動物不能說話,也不能有擬人化表現(xiàn),只能靠它的動作動畫來表現(xiàn)感情;而羽毛要實現(xiàn)提升畫面信息量、反映空間(風)、表現(xiàn)感情的目標。

這一切的基礎是大鷲的 AI,AI 的設計目標是讓玩家感覺大鷲有“心”,會根據(jù)自己的意識判斷去行動。在下圖場景中,它可以分別和鎖鏈、少年、少年手中的桶發(fā)生互動——去玩鎖鏈、蹭少年、吃桶。

大鷲對這些可互動物體分別有一個“興趣等級”:對鎖鏈的興趣等級是15、對少年的34、對桶的興趣最高,有54的值。

如果大鷲和一個目標發(fā)生了互動,那他對該目標的興趣等級就降為0,此時它會去和其他目標發(fā)生互動。


在執(zhí)行大鷲的 AI 時,程序還會判斷地形的影響。如下圖,大鷲想吃桶,在地面上就直接吃了;桶在臺階上,大鷲就會用前足去撓;若是在高臺上,大鷲吃不到,就會嗚嗚叫。

在確定了行為邏輯后,下一步是讓這些行為“可信”,這就要靠動畫來表現(xiàn)。和很多游戲一樣,《最后的守護者》用“procedual animation(程序動畫,簡稱 PA)”自動生成大鷲的動作以應對不同的場景(這是很早就有的技術,上田文人自己的《ICO》就已經在用 PA,只是隨時代進步,PA的質量標準也在提升)。





資料中專門展示了少年扔出桶、大鷲用嘴接住桶然后吞下這一套演出的處理辦法:



演講最后提到的一個點是大鷲的羽毛,這應該是大鷲身上最有表現(xiàn)力的設計(之一)了。在設計上,它能表現(xiàn)大鷲的情感、羽毛顫動時玩家就能感受到空間里吹起的風,此外身披羽毛的大鷲讓畫面密度有了提升。




因為缺乏官方的講演稿,只通過 PPT 想對《最后的守護者》有更深的了解或許還不太夠。不過它已經能讓我們對游戲有一個更“理性”的理解。
但在看這份演講資料時,總有一個問題縈繞在我心頭——用數(shù)字、程序能模擬出真實的情感么?
我唯一能確認的是,眼淚是真的。