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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

一块CPU就能运行超逼真水流特效,胡渊鸣的算法被这样实现,本人看了都说好

發(fā)布時間:2023/11/23 综合教程 21 生活家
生活随笔 收集整理的這篇文章主要介紹了 一块CPU就能运行超逼真水流特效,胡渊鸣的算法被这样实现,本人看了都说好 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

  原創(chuàng)關(guān)注前沿科技量子位郭一璞魚羊發(fā)自凹非寺量子位報道公眾號 QbitAI 還沉醉在《黑神話:悟空》精細的 3D 計算機特效里呢? 做 3D 特效這件事兒,一浪更比一浪強。

  最近,一位名叫 John Lin 的網(wǎng)友,就分享了自己做的 3D 流體特效。 注意,用 GPU 渲染之后,運行下面分享的所有特效效果,都只要一塊 CPU。 而且是實時的,你可以用鼠標操縱改變水流和環(huán)境。 比如,彩虹色的流水注入不規(guī)則的泳池,整個水流的形狀、波瀾,完全符合現(xiàn)實世界的物理特征。

  水滿則溢,右邊的瀑布劃出了漂亮的拋物線。

  甚至還能做出這種類似跑馬燈的效果。

  水揚上天,瞬間激起了潔白的浪花,沖撞天花板的各個角落。

  如果把地形改的再復(fù)雜一點呢? 比如,我們把地形改成蘇州園林里的獅子林這種不規(guī)則假山組成的風格?

  加上水流,頓時就有了靈動的江南感。

  視角穿行其中,就像走在溶洞里一樣。

  如果水流激蕩,一樣能穿過每條石頭縫。

  真想@一下《江南百景圖》的策劃,下一部游戲別做 2D 平面風格了,做出這樣的特效豈不是更加狀況? 甚至,水流還可以適應(yīng)動態(tài)的地形。 不信你看下面的例子。

  水流穿過上層容器中心的洞,形成瀑布澆灌下層容器。

  如果我們把兩層之間的隔板刪掉,模擬的水流依然可以適應(yīng)地形的變化,用更快的速度墜落。

  簡直巧奪天工。在只用一塊 CPU 的情況下,有效粒子最高值達到了 200 萬之高。 如果不過癮,你可以可以看看視頻完整版: 其實,上面的特效用到的工具是 MLS-MPM 算法,它的一作正是姚班畢業(yè)生、MIT 在讀博士胡淵鳴大神,在賓夕法尼亞大學蔣陳凡夫老師的指導(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

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

總結(jié)

以上是生活随笔為你收集整理的一块CPU就能运行超逼真水流特效,胡渊鸣的算法被这样实现,本人看了都说好的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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