日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

《最后的守护者》的开发技术猜想

發(fā)布時(shí)間:2024/8/26 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《最后的守护者》的开发技术猜想 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

引文:之所以寫下這篇文章,不僅僅是通關(guān)了這個(gè)游戲,被游戲傳達(dá)的情感所震撼,而且作為一個(gè)正在進(jìn)行主機(jī)游戲開發(fā)的程序員,被這游戲中大鷲的羽毛、身體動(dòng)作和AI,以及攝像機(jī)的部分所深深吸引。我不得不承認(rèn),他們的首席程序員Makoto Izawa的技術(shù)水平,夠我花個(gè)五年到十年的時(shí)間追趕的,不過(guò),現(xiàn)在游戲引擎的發(fā)展,也給我的壓力減少了很多。

(事先聲明,本文游戲圖片來(lái)自于PlayStation官網(wǎng),貓圖來(lái)自我家雪靈,少量技術(shù)圖片來(lái)自谷歌,本文不會(huì)劇透)

首先說(shuō)說(shuō)這個(gè)游戲中制作人的創(chuàng)作來(lái)源。根據(jù)2009年6月3日IGN上一篇對(duì)上田文人的采訪,可以獲知一些基礎(chǔ)信息,中文翻譯的游戲名稱“食人的大鷲”確實(shí)是日文的原版翻譯,早期的英文名稱叫做"The Giant Man-Eating Eagle Toriko." 。Toriko的名字來(lái)源于兩種動(dòng)物:鳥(Tori)和貓(Neko)。而且上田文人本人也提到,這些動(dòng)物是受到小時(shí)候接觸過(guò)的寵物的影響,這些動(dòng)物不僅是貓和狗,也包括鴨子和猴子。所以游戲中的巨獸明顯體現(xiàn)了貓的主要行為特征,身體又包裹著羽毛,腳也采用鷹的形式。
?

可以清晰的看出,大鷲主要由鷹和貓組成


先來(lái)說(shuō)說(shuō)我猜想的羽毛制作方式,根據(jù)目前的物理引擎技術(shù),全身的羽毛估計(jì)是以帶角度限制的關(guān)節(jié)連接方法,安裝到大鷲身上的。經(jīng)過(guò)觀察,羽毛和周圍的物體并沒(méi)有實(shí)際的碰撞,所以羽毛受到的物理影響,基本上是大鷲身體的帶動(dòng)和風(fēng)場(chǎng)的力學(xué)運(yùn)算。
?

常見(jiàn)物理引擎中帶角度限制的連接方法


有一些羽毛炸起的動(dòng)作,用來(lái)表現(xiàn)大鷲的情感,估計(jì)是程序做了特殊的運(yùn)算處理,施加到每根羽毛一些反向力。按照我很隨便的估算,全身的羽毛應(yīng)該不會(huì)超過(guò)1000片,故此,遍歷所有羽毛,并進(jìn)行一些物理運(yùn)算,對(duì)目前的PS4主機(jī)來(lái)說(shuō),并不會(huì)帶來(lái)太大壓力。人物爬上大鷲的時(shí)候,局部的羽毛飄動(dòng),我認(rèn)為也是依靠小范圍的影響羽毛的物理運(yùn)算的方式實(shí)現(xiàn)的。題外話,我發(fā)現(xiàn)游戲中掉幀,主要是由于要?jiǎng)討B(tài)加載和卸載新場(chǎng)景導(dǎo)致的,如果場(chǎng)景已經(jīng)加載完成,死掉再次返回,同樣的位置就不會(huì)掉幀。
?

大致可以估算羽毛的數(shù)量,其實(shí)還是挺多的,之前沒(méi)有見(jiàn)過(guò)有人這么做過(guò)


另外,飄落的羽毛,應(yīng)該都是單獨(dú)的模型,在開場(chǎng)的時(shí)候,地上散落的羽毛,非常類似小灌木的做法,用幾個(gè)面片做十字交叉??罩酗h落的羽毛,應(yīng)該是類似粒子系統(tǒng)的方式來(lái)實(shí)現(xiàn)的,由于數(shù)量非常少,所以也不會(huì)增加太多的計(jì)算。
?

有些局部的單片羽毛,細(xì)節(jié)非常豐富


再來(lái)分析一下身體的動(dòng)作,大鷲的身體,如果我來(lái)設(shè)計(jì),大概會(huì)分為這么幾個(gè)主要部分:頭,耳朵,脖子,前肢,后肢,軀干,尾巴。作為貓的代表動(dòng)作,二手手游買號(hào)平臺(tái)耳朵一定是傳達(dá)情感的很重要元素,根據(jù)外界的環(huán)境和人物的互動(dòng),兩只耳朵可以躲避墻壁,前后抖動(dòng),豎起來(lái)傾聽(tīng)呼喚。脖子用來(lái)連接頭和身體,仔細(xì)觀察可以發(fā)現(xiàn),大鷲在狹窄的空間中轉(zhuǎn)身時(shí),和貓的動(dòng)作非常相似,先是接近180度的轉(zhuǎn)頭,然后身體可以用一種類似折疊的方式,原地轉(zhuǎn)身。再說(shuō)說(shuō)尾巴,大鷲的尾巴減少了很多貓的行為特征,比如開心時(shí)貓會(huì)豎起尾巴,但是大鷲不會(huì),大鷲的尾巴除了在游戲中特有的很多功能以外,平時(shí)的動(dòng)作,就是增加跳躍時(shí)的視覺(jué)平衡感。最后再說(shuō)說(shuō)大鷲的爪子,據(jù)我觀察,爪子的每跟手指都是采用了單獨(dú)的多段骨骼,再加上IK(骨骼反向動(dòng)力系統(tǒng)),爪子可以實(shí)現(xiàn)踩在一些尖角上時(shí),手指完全抓牢,再加上地磚碎裂的效果和AO(光影遮蔽系統(tǒng)),呈現(xiàn)出真的踩在環(huán)境中的感受,并且體現(xiàn)出巨獸的重量感。

可以清晰的看到大鷲的爪子使用了多段骨骼和IK、AO


還有AI的部分,我覺(jué)得大鷲的AI部分,最難做的應(yīng)該是狹小空間的動(dòng)作判定,很多時(shí)候如果大鷲的姿勢(shì)不對(duì),或者執(zhí)行動(dòng)作的空間不夠,會(huì)導(dǎo)致大鷲完全沒(méi)有反應(yīng),或者原地跺腳,順帶產(chǎn)生的時(shí)間延遲和失控感,也正好符合設(shè)計(jì)師要表達(dá)的情緒。了解到這一點(diǎn),大家也可以測(cè)試一下,大鷲在獲得了正確的指令時(shí),其實(shí)反饋還是很迅速的,明顯的特征是,接收了正確的指令,會(huì)先原地叫一聲,然后開始后退,開始執(zhí)行指令。
?

據(jù)我觀察,收到確認(rèn)的指令,大鷲會(huì)先叫一聲


再說(shuō)說(shuō)攝像機(jī),由于設(shè)計(jì)的需要,在非常狹小的空間中,主角還要能擠到大鷲和墻之間,導(dǎo)致完全沒(méi)有攝像機(jī)的位置?,F(xiàn)代游戲的第三人稱攝像機(jī),都是要通過(guò)碰撞運(yùn)算,盡量避免出現(xiàn)穿越模型的情況出現(xiàn)。所以,大鷲中的攝像機(jī)在躲避碰撞的動(dòng)作瞬間會(huì)黑屏一下,導(dǎo)致很多極限情況下,攝像機(jī)卡在一個(gè)位置,不停的黑屏,完全失控。這里我想出了一個(gè)解決方案,就是如果出現(xiàn)這種情況,應(yīng)該把攝像機(jī)的拍攝焦點(diǎn)切換為大鷲,然后在大鷲周圍尋找可以停留攝像機(jī)的空間。由于主角爬上大鷲或者從大鷲身上下來(lái),并不一定需要視覺(jué)觀察,玩家可以連續(xù)推上,完成爬上,連續(xù)按X鍵實(shí)現(xiàn)下落。所以,應(yīng)該讓玩家視覺(jué)盡量處在一個(gè)舒適的位置,盲操作,我想,也會(huì)比現(xiàn)在連續(xù)黑屏閃爍的體驗(yàn)好很多。
?

這是我們現(xiàn)在的項(xiàng)目中實(shí)現(xiàn)的攝像機(jī)近平面碰撞


最后,我還想說(shuō)說(shuō)一個(gè)特別傳神的技術(shù)點(diǎn),實(shí)現(xiàn)起來(lái)雖然不難,但是也會(huì)占用大量的開發(fā)時(shí)間,這個(gè)就是手柄的震動(dòng)。PS4 DualShock手柄從字面上也可以看出,這個(gè)手柄有兩個(gè)振動(dòng)器,一個(gè)高頻一個(gè)低頻,分別位于手柄的左右兩側(cè),大鷲這個(gè)游戲,全程使用手柄振動(dòng)來(lái)增強(qiáng)大鷲的生物感。撫摸大鷲脖子時(shí),會(huì)獲得像貓一樣的呼嚕振動(dòng),大鷲揮動(dòng)小翅膀時(shí)也會(huì)獲得發(fā)力感。如果能夠采用XboxOne手柄的4個(gè)振動(dòng)器,那全程立體的振動(dòng)體驗(yàn)估計(jì)會(huì)更棒一些吧?
?

從手柄拆解圖可以看出高低頻振動(dòng),源自不同重量的振子


我猜想的這些技術(shù)點(diǎn),說(shuō)起來(lái)輕松,真的從無(wú)到有的都實(shí)現(xiàn)出來(lái),并且做到現(xiàn)在游戲中的狀態(tài),是非常困難的,需要大量的學(xué)習(xí)和研究,并且這種技術(shù)點(diǎn)的突破,是無(wú)法靠增加團(tuán)隊(duì)人數(shù)提高速度的。進(jìn)行了這些思考以后,也非常能夠理解為何這個(gè)游戲從PS2時(shí)代一直開發(fā)到了PS4時(shí)代,換我來(lái)做,估計(jì)要開發(fā)到PS5時(shí)代吧,哈哈~

最后放上幾張我家“雪靈”的照片,對(duì)比一下大鷲的姿態(tài):
?

總結(jié)

以上是生活随笔為你收集整理的《最后的守护者》的开发技术猜想的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。