黑神話悟空中的流體力學

朦朦:hi帥臣

帥臣:hi朦朦

朦朦:帥臣,北斗導航,流體圈兒的應該都知道啊,最資深的流體領域科普UP,后發展為集人文、社科、實事、哲學為一體的殿堂級導師

帥臣:朦朦,我的觀眾認識的可能不多,她是從去年開始從事視頻創作的,最美麗的流體領域科普UP,沒有之一!

朦朦:咱倆停止商業尬吹,言歸正傳啊,我最近想做一期黑神話悟空中的流體力學主題的視頻。正好帥臣前幾天剛打了通關,對里面的場景比較了解,就想著和帥臣一起與大家聊聊黑悟空中的流體力學。

黑神話悟空中的流體力學的圖1

帥臣:確實,我在打的整個過程中感受到很多場景都有流體的影子,比如天命人在水里行走,會蕩起漣漪。揮舞金箍棒,會激起浪花等等

朦朦:對,因為游戲里要產生身臨其境的沉浸感,就要盡量模擬出現實世界的物理規律,要遵守牛頓力學定律呀、質量守恒、能量守恒等等。

帥臣:這點和工業仿真很像,工業研發中,也常用仿真代替實驗,用軟件來模擬現實的世界。所以工業仿真軟件和游戲的物理引擎本質很像,都是基于相同的物理規律,不同點是游戲引擎對物理規律會做比較多的簡化。畢竟工程中追求精度,游戲中追求速度。

朦朦:是的,比如,第一關中天命人在水中行走產生的漣漪和棒子打在水中產生浪花,這在工程中是典型的兩相流問題,像船在海中航行就和這個很像。如果在工業仿真軟件里模擬它會用VOF兩相流模型,將人和金箍棒的擾動作為邊界條件輸入,求解水和空氣的N-S方程。過程中要考慮水和空氣的接觸角、各自的密度、粘性等等。最后得到水氣交界面隨時間的變化,也就是產生的浪花。

黑神話悟空中的流體力學的圖2

帥臣:對,但是在游戲中,遠沒有這么復雜。最簡單的處理方式是不考慮物理規律,做成水波動的動畫直接插入。但現在高級的物理引擎,比如黑悟空用的虛幻5的chaos引擎,可能就用到了流體模擬。基于N-S方程做一些簡化:比如忽略水氣間相互作用、忽略粘性項、把3維簡化為2維計算等。

黑神話悟空中的流體力學的圖3

黑神話悟空中的流體力學的圖4

這個波紋細看,會覺得很長,且不會傳到遠處,和實際會有差別,當然也不排除它此處用的就是沒有解流體方程直接畫的動畫,但也可能是游戲引擎中對流體方程簡化的結果。

黑神話悟空中的流體力學的圖5

黑神話悟空中的流體力學的圖6

朦朦:還有天命人站在草地上揮舞金箍棒。如果從工程角度研究,用工業軟件算,要考慮金箍棒直徑、長度、離地高度、揮舞速度、周圍空氣密度。然后模擬金箍棒會對地面附近產生多大的擾動,同時這個擾動會讓地上的草產生多大的形變。這一套操作是足夠嚴謹,但可能要計算個幾小時。

黑神話悟空中的流體力學的圖7

帥臣:也就是你揮一下棒,幾小時后,唉,草動了。那肯定不行哈,游戲中只需要根據金箍棒的移動方向,給地上植物一個方向一致的均勻力,讓植物在這個力的作用下變形就行了。至于這個力有多大,應不應該均勻分布,不重要。游戲中的物理現象不需要多精確,快而流暢就好了。

黑神話悟空中的流體力學的圖8

朦朦:還有第二關打虎先鋒,帥臣你前幾天發了個視頻,打的過程中你說到血池是非牛頓流體的事,彈幕很驚訝你的關注點哈。

帥臣:對,這可能是職業病吧,看到游戲中有關流動的現象就會很自然地聯想到這種現象是如何產生的,因為人體內的血液是比較典型的剪切稀化流體,而虎先鋒的血池內的血液是在體外的,可能會凝固,力學性質就復雜了。

黑神話悟空中的流體力學的圖9

朦朦:工程上,人們對于非牛頓流體的模擬,提出了很多經驗性質的模型來表示粘性和應力應變的關系,比如冪次模型、交叉模型等。但在游戲中,不會這么精細,所謂血池,可能僅僅是變了顏色和密度的水,其余處理過程就和普通牛頓流體差不多。

黑神話悟空中的流體力學的圖10

帥臣:還有像第二章沙子上的滑行、第四章盤絲洞蟲子射的毒液、第五章巖漿,巖漿可能就是貼圖了,畢竟粘性很大,流動感不是很強,巖漿的流動看起來貌似是靜止的,這是典型的層流。

黑神話悟空中的流體力學的圖11

說到這我還想吐槽一下,天命人在沙子上的滑行不符合能量守恒,跳起來之后好像水平方向的速度分量就突然消失了。

黑神話悟空中的流體力學的圖12

朦朦:這會兒可能又會飄過彈幕感嘆帥臣的關注點。其實前面舉了這么多黑悟空中的例子呀,就是想告訴大家游戲中的物理引擎和工程中的物理引擎是同根同源頭,或者說游戲中對現實世界的仿真模擬與工業級的仿真模擬同根同源。其實世界上第一臺通用計算機在1946年出現時,當時的目的就是為了計算火炮的彈道,這個場景和現在的槍戰游戲很接近。

黑神話悟空中的流體力學的圖13

帥臣:而且,不僅游戲物理引擎會對物理規律做簡化,工程上仿真軟件里也一樣會做簡化,比如對N-S方程的簡化,工程中最常用的雷諾平均模型,就是面對大量計算做出的無奈妥協。而游戲物理引擎在這個妥協的基礎上又往前邁了一步而已。

黑神話悟空中的流體力學的圖14

朦朦:但現在隨著計算機性能越來越好,游戲物理引擎其實也在精度上逐漸提高。甚至有些工程場景,希望有快速結果且對精度要求不高的,也會用游戲引擎做模擬。比如汽車碰撞模擬、洪水災害模擬、履帶車駕駛模擬,甚至航天員的訓練。換句話說,游戲和現實世界的邊界將來可能會越來越模糊

黑神話悟空中的流體力學的圖15

帥臣:很可能未來有一天,計算機計算能力足夠強,物理引擎將不再有游戲級和工程級的區別,游戲即工程。看完這期視頻,觀眾以后打游戲再也不用心虛了。這哪是打游戲啊,這明明是在做仿真計算!

黑神話悟空中的流體力學的圖16

朦朦:haha,要不要飄一個“此處無不良引導”。今天和帥臣一起借黑悟空的游戲聊了聊其中的物理引擎和工程級仿真的異同,不知大家是否喜歡這樣的主題和形式,如果喜歡,歡迎點贊轉發。也期待和帥臣下次的合作。帥臣拜拜~

帥臣:朦朦拜拜~

登錄后免費查看全文
立即登錄
App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP

3