中文字幕欧美乱伦|手机AV永久免费|澳门堵场日韩精品|日本性爱欧美激情|蜜桃狠狠狠狠狠狠狠狠狠|成人免费视频 国|欧美国产麻豆婷婷|99久久久国产精品福利姬喷水|婷婷内射精品视频|日本欧洲一区二区

澎湃Logo
下載客戶端

登錄

  • +1

一塊CPU就能運行超逼真水流特效,胡淵鳴的算法被這樣實現(xiàn),本人看了都說好

2020-08-22 21:58
來源:澎湃新聞·澎湃號·湃客
字號

原創(chuàng) 關(guān)注前沿科技 量子位

郭一璞 魚羊 發(fā)自 凹非寺

量子位 報道 | 公眾號 QbitAI

還沉醉在《黑神話:悟空》精細(xì)的3D計算機特效里呢?

做3D特效這件事兒,一浪更比一浪強。

最近,一位名叫John Lin的網(wǎng)友,就分享了自己做的3D流體特效。

注意,用GPU渲染之后,運行下面分享的所有特效效果,都只要一塊CPU。

而且是實時的,你可以用鼠標(biāo)操縱改變水流和環(huán)境。

比如,彩虹色的流水注入不規(guī)則的泳池,整個水流的形狀、波瀾,完全符合現(xiàn)實世界的物理特征。

水滿則溢,右邊的瀑布劃出了漂亮的拋物線。
甚至還能做出這種類似跑馬燈的效果。
水揚上天,瞬間激起了潔白的浪花,沖撞天花板的各個角落。
如果把地形改的再復(fù)雜一點呢?

比如,我們把地形改成蘇州園林里的獅子林這種不規(guī)則假山組成的風(fēng)格?

加上水流,頓時就有了靈動的江南感。
視角穿行其中,就像走在溶洞里一樣。
如果水流激蕩,一樣能穿過每條石頭縫。
真想@一下《江南百景圖》的策劃,下一部游戲別做2D平面風(fēng)格了,做出這樣的特效豈不是更加狀況?

甚至,水流還可以適應(yīng)動態(tài)的地形。

不信你看下面的例子。

水流穿過上層容器中心的洞,形成瀑布澆灌下層容器。
如果我們把兩層之間的隔板刪掉,模擬的水流依然可以適應(yīng)地形的變化,用更快的速度墜落。
簡直巧奪天工。在只用一塊CPU的情況下,有效粒子最高值達到了200萬之高。

如果不過癮,你可以可以看看視頻完整版:

其實,上面的特效用到的工具是MLS-MPM算法,它的一作正是姚班畢業(yè)生、MIT在讀博士胡淵鳴大神,在賓夕法尼亞大學(xué)蔣陳凡夫老師的指導(dǎo)下完成。

水流的效果,讓胡淵鳴本人都覺得驚艷,稱贊作者代碼功底強。

而且,不少同行開發(fā)者看到之后也都贊嘆不已,impressive、awesome,各種好詞輪流夸:

他們覺得,能在單個的CPU核心上跑起來,簡直驚人。
MLS-MPM是什么

胡淵鳴團隊發(fā)表在SIGGRAPH 2018上的一篇論文,介紹了MLS-MPM算法。

MLS-MPM,全稱是Moving Least Squares Material Point Method,移動最小二乘材料點方法。

用移動最小二乘法,將APIC(The Affine Particle-In-Cell Method)和動量方程弱形式一致的力計算統(tǒng)一起來,實現(xiàn)了新的應(yīng)力散度離散化,使MPM的運行速度快了兩倍,還成功模擬了MPM此前并不支持的各種新現(xiàn)象,包括材料切割、動態(tài)開放邊界和剛性體的雙向耦合。

它的基本步驟是這樣的:

(1)從粒子到網(wǎng)格。使用APIC將質(zhì)量和動量從粒子轉(zhuǎn)移到網(wǎng)格上。

(2)更新網(wǎng)格動量。用半隱式歐拉法或隱式歐拉法更新網(wǎng)格動量。

(3)從網(wǎng)格到粒子。使用APIC將網(wǎng)格中的速度和仿射/多項式系數(shù)傳遞給粒子。

(4)粒子變形梯度。利用速度梯度的MLS近似更新粒子變形梯度。

(5)更新粒子塑性。預(yù)測粒子變形梯度的塑性(如果有的話)。

(6)粒子平移。用新速度更新粒子位置

與傳統(tǒng)MPM唯一的區(qū)別是步驟(2)中力的表達和步驟(4)中粒子變形梯度的更新。

MLS-MPM在這兩個步驟中均比MPM更容易實現(xiàn),可以輕松實現(xiàn)性能的提升。

另外,為了解決材料不連續(xù)和剛體耦合等問題,胡淵鳴團隊還開發(fā)了Compatible Particle-In-Cell(CPIC)算法,允許基于粒子和網(wǎng)格節(jié)點之間的相對位置的材料點不連續(xù)和無限薄的邊界。

這樣就可以把MPM和剛性體雙向耦合在一起,實現(xiàn)切割的模擬。

現(xiàn)在,借助這個算法,就可以實現(xiàn)各種和符合物理規(guī)則、看起來像真的一樣的運動特效了。
傳送門

如果你想具體了解MLS-MPM算法,可以看這篇論文:

A Moving Least Squares Material Point Method with Displacement Discontinuity and Two-Way Rigid Body Coupling

http://taichi.graphics/wp-content/uploads/2019/03/mls-mpm-cpic.pdf

GitHub地址在此:

https://github.com/yuanming-hu/taichi_mpm

不過,由于這個項目比較早期,胡淵鳴本人更推薦使用「太極」:

https://github.com/taichi-dev/taichi

試一試,說不定能做出更驚艷的作品?

— 完 —

本文系網(wǎng)易新聞?網(wǎng)易號特色內(nèi)容激勵計劃簽約賬號【量子位】原創(chuàng)內(nèi)容,未經(jīng)賬號授權(quán),禁止隨意轉(zhuǎn)載。

原標(biāo)題:《一塊CPU就能運行超逼真水流特效!胡淵鳴的算法被這樣實現(xiàn),本人看了都說好》

閱讀原文

    本文為澎湃號作者或機構(gòu)在澎湃新聞上傳并發(fā)布,僅代表該作者或機構(gòu)觀點,不代表澎湃新聞的觀點或立場,澎湃新聞僅提供信息發(fā)布平臺。申請澎湃號請用電腦訪問http://renzheng.thepaper.cn。

    +1
    收藏
    我要舉報
            查看更多

            掃碼下載澎湃新聞客戶端

            滬ICP備14003370號

            滬公網(wǎng)安備31010602000299號

            互聯(lián)網(wǎng)新聞信息服務(wù)許可證:31120170006

            增值電信業(yè)務(wù)經(jīng)營許可證:滬B2-2017116

            ? 2014-2025 上海東方報業(yè)有限公司

            反饋