不知道大家有沒有刷到過那種對比視頻,如上圖所示他們不比遊戲的玩法和畫面,專門比較不同遊戲裏角色上下樓梯的動作.因爲不知道從什麼時候開始上下樓梯,成了繼水體效果、物理效果之後,玩家們用來比較遊戲高低的新項目,而偏偏就是這麼個不起眼的小動作卻難住了很多遊戲,不少3a大作熱門新遊紛紛落馬,其中又以鳴潮和絕區零兩個遊戲討論度最高!爲什麼這些遊戲裏上樓梯的動作如此怪異?爲什麼遊戲裏上樓梯會成爲一個業界難題呢?
這期就和大家來說道說道,遊戲是如何一步一步來解決樓梯問題的?在早期遊戲中上樓梯根本不是個問題,因爲大家都在忙着卷畫面卷玩法根本沒人會在意上樓梯到底真不真實!那時候的遊戲上樓梯主要有兩種方式:一種是直接翻越型,在很多遊戲中都會有一個翻越低矮障礙的功能,比如說地面上有塊石頭玩家就可以直接走上去而不會被卡住,那它的工作原理吶就是當玩家遇到障礙物時會檢測障礙物的高度,如果這個障礙物的高度低於某一個設定值那麼,玩家就會被直接瞬移到障礙物的頂端這樣就越過了這個障礙,只要我們把這個最大可跨越的高度設置足夠大那麼再高的障礙都可以如如履平地,在這種情況下樓梯就可以被看作是一個個低矮的障礙物摞在一起,當玩家遇到臺階時就會被直接傳送到臺階上面,那麼把這個動作重複連續起來就會有了上樓梯的感覺,那麼下樓梯也是一樣的道理,但這種方法的問題是角色的位置是瞬移的動作也是比較生硬,上一個臺階還好但很多臺階連起來,整個上樓梯的過程呢就會非常的顛.玩過早期版本CS的人應該能明白這種感覺,因此在更普遍的遊戲中會採用第二種方式上樓梯,就是把樓梯的碰撞體積抹平,雖然肉眼看起來是樓梯但實際上他就是一個斜坡,也完全可以實現樓梯的功能又不會產生抖動用起來非常的絲滑,那這種方法的問題是,角色的動作和樓梯是完全不匹配的,如果玩家在途中停下來可能會出現一隻腳懸空的情況,雖然這些方法都不算完美但也沒有看到誰因此感到不滿,所以在很長一段時間裏,遊戲裏的樓梯系統就再也沒怎麼變化過,直到近年來隨着遊戲越來越多,在細節上追求真實和沉浸感有人就開始覺得爲什麼不把樓梯做的真實一點呢?在現實中我們上樓梯腿是驅動力身子是跟着腿走的,而遊戲中吶腿只是掛件即使腿不動角色也可以照樣移動但製作者需要讓動畫看起來像是腿在驅動身體一樣,這本身就不容易!同時樓梯的結構也很複雜,臺階可能有不同的高度、不同的寬度、不同的斜度這樣都會影響腳的落點.
那麼要如何把角色運動、動畫和樓梯匹配在一起讓腳能夠每次都精準的落在樓梯上,這在過去確實是一個技術難題,一些遊戲爲了能夠準確的表現出上樓梯的動作就只能把上下樓梯變成像爬梯子一樣的固定動畫,這個過程中玩家是不能操控的,真正出現玩家能夠實時控制且精準的上樓梯動作是電子遊戲開始使用IK技術之後纔可能成爲的.IK就是逆運動學的簡稱!你可以不準確的理解成正向運動學,和現實中一樣就是大腿帶動小腿帶動腳進行移動.而逆向運動學則是像皮影戲,是腳帶動小腿再帶動大腿進行移動,遊戲只需要角色腳的位置,就可以反推出腿和關節的狀態,運用這個技術遊戲就可以實現逼真的腿部動作了.規則其實很簡單,角色會實時檢測地面高度和狀態,儘量讓腳去貼合地面,如果腳懸空了就往下移如果穿模了就往上移,再利用IK自動控制腿和膝蓋這樣就實現了可以自適應地面的腿部動畫不會穿模,即使站在斜坡上也不會懸空而且更好的消息是普通的走動畫面加上IK之後就可以直接適配樓梯了,之前說了臺階就像一個障礙物不管是高還是低腿都可以準確的落在臺階上,之後再通過IK做出抬腿的動作,這樣上樓梯的問題不就解決了嗎?然而,IK雖然解決了之前的老問題,但卻帶來了更多的新問題,如果我們仔細看的話,會發現角色上樓梯的動作非常的怪異,就像我們走路不抬腿蹭着往前走一樣,而且只要遇到障礙腳的運動軌跡就會改變從而帶動整個身體發生彈跳,所以整個上樓梯的過程非常不安定,其實這就是早期版本的鳴潮和絕區零中遇到的主要問題.上樓梯的動作之所以怪,因爲這裏用的本來就不是專門上樓梯的動作,而是角色行走的動作,只是在走路時遇到一個大的凸起讓腿抬起來了而已,而因爲腳是需要先遇到障礙之後纔會抬起,所以感覺上就總是慢了一拍整體看起來就很不協調,我們在正常上樓梯時腳步是先抬起之後再落下.如果只使用IK動畫之前說過的因爲位置瞬移而導致畫面顛的問題又回來了,尤其是在快速移動時會非常的明顯,這些都是我們需要解決的核心問題!如果要徹底解決這個問題,可能就需要給上下樓梯製作專門的動畫來匹配IK系統,但這無疑會給製作組帶來很多額外的工作量難免有些得不償失,所以之前只有像R星這樣的公司,願意在上下樓梯這件事上花這麼大的功夫.
這本來也不是什麼大事,因爲一般的遊戲視角都是在角色的背面,從這個角度看上去一切都是很正常的,只有從側面看時纔會發現這些問題,畢竟誰會這麼仔細的去看角色上樓梯的動作吶!二遊玩家們無死角的欣賞自己的角色,也算是這些遊戲的核心玩法之一了,因爲玩家們的呼聲最近鳴潮和絕區零,都對遊戲中上樓梯的部分進行了優化,但優化方式不太一樣:鳴潮就是在原來的IK基礎上對樓梯進行了優化,除此之外鳴潮還做了一些細節上的優化,比如識別到樓梯時角色的頭會跟着移,這不僅僅是爲了營造真實感,也是爲了改善原來角色上樓梯時上身僵直的狀態;而絕區零這邊則並不是在老的系統上進行優化,貌似是製作組給角色上下樓專門配備了一套動畫系統,爲什麼這麼說呢因爲玩了新版本的都知道,角色在上樓梯時腳步抬起的高度要比行走時更高不再拖地,基本上就還原了真實上樓梯時的運動軌跡,猜測絕區零應該使用了某種落點預測的技術,提前計算出角色腳步的落點,再根據落點的信息實時調整動畫,絕區零的優化絕對是增加了很多工作量和技術難題的,這是可以相信的!!!
總結:上樓梯之所以成爲業界難題,技術上的困難只是一部分,更大的困難在於它的性價比太低了,即使花費了很大功夫,做出了完美的上下樓梯動作,它的功能本質上和斜坡式樓梯也沒什麼區,也不會對遊戲性有什麼提升,而遊戲開發中通常希望把有限的產能放在更重要的地方上,比如核心功能開發、新內容製作和bug修復上,而像是把上下樓梯做的更真實這種需求,單是有這個想法,本身就已經是一個奢侈的事!鳴潮和絕區零,不但把功能要做出來還要進行優化迭代也就提現出瞭如今的國產二遊對玩家的意見和輿論的重視程度之高!上下樓梯雖然沒有啥實際用途,但只要玩家想要它就擁有最高的開發優先級!!!
更多遊戲資訊請關註:電玩幫遊戲資訊專區
電玩幫圖文攻略 www.vgover.com