流體運動,可以說是游戲世界最重要的物理現(xiàn)象之一。小到下雨,大到波浪,精細到淚珠滾出眼眶,真實到血液沁出傷口,這些畫面效果在游戲引擎中,都需要做精確的流體運動計算。
在最近網(wǎng)易旗艦古風端游《逆水寒》的更新中,開發(fā)組推出了一款“水槍”,這是一個完全沒用但很沙雕的趣味物品,很多玩家玩過以后,下巴都笑掉了。
但是沙雕歸沙雕,在這看似沒啥用的水槍背后,其實是中國游戲流體物理引擎組件一次從無到有的技術(shù)研發(fā)。
今天,小編就來向大家正式介紹隱藏在水槍背后的網(wǎng)易雷火工作室前沿科技“流體噴射算法”!
在游戲里,想要呲一道水出來,其實是很難的。水無常形,水的運動軌跡,是最難琢磨的,所以以往一般采用貼圖的形式解決。
也就是說開發(fā)者畫好一道固定的水線,不管誰來呲怎么呲,呲出來的都是一道統(tǒng)一的固定的系統(tǒng)設(shè)定好的水線,貼圖生成的水,沒有體積,也沒有靈魂。
在以畫面真實而著稱的《逆水寒》里,如果再繼續(xù)搞貼圖,就不合時宜了。
開發(fā)組最初嘗試用一款美國的游戲物理效果組件來制作流體的運動,可用著用著就發(fā)現(xiàn),該技術(shù)很難在游戲里做交互效果,同時還費算力,在優(yōu)化上無從下手,應(yīng)用于游戲中處處受限,無法突破。
所以雷火工作室的程序員頭一鐵,決定干脆自己做一個新的。于是就有了現(xiàn)在這套“流體噴射算法”!
它的原理是用無數(shù)個粒子組成流體,基于重力、風力、釋放者施加的推力、粒子之間的互相作用力等等因素去計算流體噴射出來以后的運動軌跡。
同時還要計算流體被其他流體或固體阻攔以后的濺射運動軌跡。
貼圖里的水,是設(shè)計者規(guī)定好了它怎么噴射與流動;而“流體噴射算法”中的水,是完全由水自己決定怎么動。
也就是說以前大多數(shù)游戲里噴出來的貼圖水,都是虛假的紙片水,而在《逆水寒》里終于實現(xiàn)了“指哪噴哪、噴哪濕哪”的真實的有碰撞體積的水。
這么神奇的技術(shù),其實在電影特效領(lǐng)域早就被廣泛引用了,但為什么別的的游戲不做呢?主要還是因為性價比很低,具體有兩個方面:
一是對開發(fā)者而言性價比很低,需要投入很多技術(shù)力量去開發(fā),花費極高的成本得到的也只是流體效果更真實一點而已。
而且這種“更真實”普通人還不一定能直觀地感知到,只有專業(yè)人士看了才會驚呼“臥槽這么厲害”。所以很多開發(fā)團隊想來想去,不如還是繼續(xù)畫貼圖吧。
二是對玩家而言性價比也低,粒子運動的計算量巨大,玩家玩游戲時為了得到這種真實,電腦可能需要耗費大量算力在上面。
但是雷火的技術(shù)團隊,恰好是由一群從來不考慮性價比的技術(shù)宅組成!三個程序員接下了這項工作,看了看需求文檔,感覺非常簡單。
然后,花費了8個月時間吃了能堆滿一間會議室的外賣才搞出來……雖然雷火不用考慮性價比,但是必須得考慮玩家。
所以技術(shù)團隊主攻方向是如何減輕玩家電腦得負荷,技術(shù)團隊在最消耗算力的“粒子鄰近檢測”模塊開發(fā)出了一個國際領(lǐng)先的加速結(jié)構(gòu),直接破解了這個核心難題。
同時配合muller2013的PBF算法,分針計算等技術(shù),做出了一套在計算機算力嚴重不足的情況下,這套“流體噴射算法”也能妥善運行的保底機制。
同時還應(yīng)用了一套粒子表面重建技術(shù),一顆顆粒子地完整還原自然界流體豐富的表面細節(jié)。整個組合起來,就是現(xiàn)在游戲中可以玩到的超高自由度可以讓NPC濕身的呲水槍了。
所以說了這么多,大費周章,就是為了呲個水???
是,但又不完全是。
對流體噴射算法而言,呲水槍只是一次小小的測試,有了這種純物理算法帶來的具有真實體積的液體效果與液體流動計算,設(shè)想一下我們可以完成多少偉大的游戲嘗試。
雷火工作室可以做出真實而壯觀的火山噴發(fā),也可以真實地模擬細微的流汗出血效果,以后的水系技能表現(xiàn)可以做到絕無雷同。
(模擬石油的噴射與流出)
毫不夸張地說,這是中國游戲開發(fā)者在電子世界中第一次真正意義上馴服了水。
水無常形,在電子世界里馴服水絕非易事。
雷火的技術(shù)團隊敢為天下先,始終致力于探索最前沿的圖形技術(shù),不斷挑戰(zhàn)硬件和算法的極限,他們對所謂的“研發(fā)性價比”嗤之以鼻,只求為玩家?guī)碚鎸崱⒏鎸?、超越真實的游戲畫面?/p>
游戲類型:角色扮演
游戲畫面:3D
游戲模式:即時
游戲題材:武俠
入庫時間:2020-03-20
當前狀態(tài):等級封頂,江湖無限
三歲完成十萬以內(nèi)加減乘除法!《逆水寒》女玩家嚇傻:我生了個人形計算器?[07-09]
游戲里生娃也要隨份子?《逆水寒》幫主一月工資全發(fā)了紅包[07-08]
玩完整個玩家交流會 居然沒發(fā)現(xiàn)她是女生 花木蘭驚現(xiàn)《逆水寒》[07-07]
這孩子我是真養(yǎng)不了勒 你們《逆水寒》要有本事 你們拿去養(yǎng)[07-06]
95后單身女玩家決定在《逆水寒》免費試生娃[07-05]
為什么三周年的《逆水寒》,還有這么多新玩家?[07-05]
《逆水寒》媽媽粉有多逆天 捏個愛豆娃 好好養(yǎng)他[07-02]
鼓勵操作型玩家《逆水寒》擲30萬現(xiàn)金操辦公平聯(lián)賽[07-01]
相關(guān)評論