欧美日韩精品国产,欧美aⅴ99久久黑人专区,亚洲综合久久久久,中文字幕一区二区三区精彩视频

使用Unity HDRP創(chuàng)建逼真的體積云

文章來源: 作者:frank 發(fā)布時間:2021年11月08日 點擊數(shù):

近幾十年來,flat-painted skyboxes和HDRIs一直是天空和云渲染的首選解決方案。而現(xiàn)在,通過HDRP全新的體積云,你可以用動態(tài)云填充你的世界。對于系統(tǒng)的第一次迭代,Unity關(guān)注的更多是性能和易用性,因此你只需點擊幾下鼠標,就能以較低的圖形處理器成本創(chuàng)建出漂亮的視覺效果。

云渲染的簡史

直到上一代游戲機淘汰之前,體積云技術(shù)在游戲中應(yīng)用的情況一直是非常罕見的。立體的云,即占據(jù)世界中物理空間的云,通常僅限于飛行模擬器和少數(shù)開放世界的游戲。

造成這種情況的主要原因是渲染這種云的成本非常高。具體來說,當依賴于光線跟蹤或光線行進時,計算穿過云的光散射是一項費時費力的工作。而另一個原因則是,大多數(shù)3D游戲只需在地面(例如,地形或海洋)上進行,因此它們不需要動態(tài)天空系統(tǒng)或是飛行在云端上方的相機來推動游戲的進度。

因此,許多3D應(yīng)用程序就選擇使用靜態(tài)紋理來塑造云朵,如立方體貼圖或簡單的透明材料作為替換。通常,這些場景都是在離相機無限遠的地方進行渲染,因此云朵不會與地面世界完全相連接,這樣做的的優(yōu)點是可以以非常低的成本為靜態(tài)場景提供足夠的質(zhì)量。

隨著實時3D渲染的進步和硬件性能的提高,一個新的動態(tài)體積云的時代開始了。這打開了全新視覺體驗的大門,這一切都可以通過Unity的高清渲染管道(HDRP)實現(xiàn)。

體積云受Volume Framework’s global wind影響可投下真實的陰影。它們與Volumetric Fog和Physically Based Sky一起創(chuàng)造出令人印象深刻的體積太陽軸和令人瞠目結(jié)舌的日落效果。

而天空反射和環(huán)境探測,以及局部反射探測和平面反射,可以渲染云。這一過程組成了Unity全新的體積云系統(tǒng),該系統(tǒng)可以與大多數(shù)其他HDRP系統(tǒng)無縫交互。經(jīng)測試該系統(tǒng)在PlayStation 4(非PS4 Pro)上的延遲約為2ms,在最近的出廠的高端GPU上的延遲遠低于0.5ms。

易于設(shè)置

Unity中創(chuàng)建體積云只需要簡單的幾步即可完成。第一,確保啟用HDRP資產(chǎn)和HDRP Global Settings,以啟用“體積云”。

這只是一個使用材積平分法來控制體積云的方式。如大多數(shù)HDRP效果一樣,只需選擇現(xiàn)有的(全局)卷或創(chuàng)建一個新的卷,并將其分配到一個體積云組件中然后再添加到其配置文件中即可實現(xiàn)。其中有許多參數(shù)可以控制云的類型、風、光、陰影以及云的整體質(zhì)量和成本。

借助簡單模式下的四種內(nèi)置預設(shè),用戶可以立即創(chuàng)建多種類型的云場景如:少云,多云,陰雨和暴風雨天氣。對于這四種天氣類型的調(diào)整,可以最大限度地提高云層下、內(nèi)部和略高于云層部分的細節(jié)水平,最高可達10,000米(33,000英尺)。

本地云模式會影響飛入和飛過云的能力,同時也會間接影響性能水平。

當本地云模式被禁用,被渲染的云會離相機非常遠。這使用戶可以將相機遠平面保持在非常合理的距離。但很顯然這種模式會讓相機遠離云層。

當本地云模式被啟用,相機可以在云層下方、內(nèi)部和上方進行導航。但是,為了與地平線有足夠高的視距,可能需要將相機遠平面增加到100,000米以上,這具體取決于體積霧的密度。

出于這個原因,如果項目不需要攝像機飛入云層并一直保持在云層之上,請將本地云模式禁用。這時你仍將獲得相同的照明和陰影質(zhì)量,同時能夠保持較低的相機遠平面距離。

如果你需要相機飛上云端,則可以啟用本地云模式。至于基于物理的天空,體積云系統(tǒng)模擬了地球的曲率,因此云頂包裹著地球,并在地平線上提供了與陸地或海洋的真實連接。如果進一步彎曲云穹,你可以迫使它與世界相交匯,這意味著你可以大幅降低相機的遠平面距離。

另外在場景中風受到了特別的關(guān)注,風再現(xiàn)了現(xiàn)實世界中常見的浮力現(xiàn)象。在Unity中對風有四種控制。例如,用戶可以創(chuàng)建靜態(tài)云,但通過侵蝕風,或者可以通過造型風我們可以創(chuàng)造出迷人的遠景。

除了簡單的模式下提供的四種預設(shè)之外,用戶還可以使用自定義預置,該功能允許用戶使用曲線和滑塊控制大多數(shù)云的屬性。這種模式非常強大,可以在幾秒鐘內(nèi)用多層云創(chuàng)建各種各樣的云景。

要創(chuàng)建太陽軸,只需切換體積霧屬性并設(shè)置其最大高度和體積霧距離到幾千米。這樣,定向光就可以影響大氣層,并在云層下產(chǎn)生美麗的陽光散射。

最后是手動模式,該模式支持專業(yè)用戶創(chuàng)建云覆蓋紋理和查找表(LUT),以便手動控制LUT定義的每個垂直云切片的位置。

渲染技術(shù)

云體積由2D覆蓋貼圖和LUT設(shè)定的不同高度剖面所驅(qū)動,該剖面指定了密度、侵蝕和環(huán)境遮擋等屬性。使用兩個3D噪聲紋理來吞噬云體積,以生成不同的云形狀:

形狀噪聲:生成大片云形狀的低頻噪聲

侵蝕噪聲:提供云層表面微觀細節(jié)的高頻噪聲

在渲染時,HDRP的體積云系統(tǒng)使用光線行進,這是一種依賴于從相機向物體和光源分步投射光線的技術(shù)。在案例中,向云體投射初級光線來對云表面進行采樣。然后,次級光線被投射到太陽上,以遮擋云層表面的像素。

為了進一步降低成本,同時將視覺降格降至最低,該過程以四分之一分辨率進行,并進行時間重投影和累積。這意味著云系統(tǒng)使用來自先前幀的樣本來構(gòu)建完整的結(jié)果。因此,當相機高速移動時,在必須渲染沒有任何歷史記錄的云的部分時,可能會出現(xiàn)一些重影或重建鬼影。盡管如此,Unity仍然提供了一個非常有效的抗重影解決方案,該解決方案支持快速的相機移動和高風速場景。

需要特別注意的是薄的幾何形狀,如樹葉等,不會產(chǎn)生任何明顯的偽像,因為相鄰云的像素通常很難分辨。

一天中,諸如日出和日落的這些時間對于塑造云來說是一個特殊的挑戰(zhàn),因為景觀和天空之間的曝光差異很大,地球的曲率及其產(chǎn)生的陰影;太陽低垂場景中光散射的復雜性,以及光線傳播的長距離對云的渲染都是挑戰(zhàn)。

當前的限制和未來的改進

像任何系統(tǒng)一樣,體積云系統(tǒng)需要在一定范圍內(nèi)表現(xiàn)最佳。目前,Unity針對攝像機位于云卷下方、內(nèi)部和略高于云卷的情況進行了高度優(yōu)化。因此,12公里(40,000英尺)以上的空間和位于極高海拔的場景并不特別適合當前的體積云系統(tǒng),因為侵蝕貼面可能會變得非常假,如下圖所示。

此外,Unity目前僅支持一個云卷。這意味著存在于所述體積中的所有云形狀共享相同的噪聲、風向和照明屬性。未來,Unity將考慮支持多個云卷,以便對用戶希望創(chuàng)建和制作動畫的每一層云提供更精細的控制。

此外Unity還將增加對準點燈光和向云投射陰影對象的支持。這對在太空中或飛行模擬器中模擬帶有閃光燈的飛船照射周圍的云朵時非常有效。同時,局部體積霧也可以在某些靜態(tài)場景中使用。

在視覺質(zhì)量方面,Unity將考慮支持兩個以上級別的噪聲控制,為高級平臺、交互式幀率和離線應(yīng)用程序提供更高的畫面質(zhì)量。

主站蜘蛛池模板: 鄂伦春自治旗| 浮山县| 桃源县| 怀来县| 中牟县| 北辰区| 松滋市| 淳安县| 明光市| 南陵县| 新干县| 永定县| 麦盖提县| 左贡县| 鄄城县| 湖州市| 城口县| 山阳县| 黄大仙区| 伊金霍洛旗| 铜川市| 扎兰屯市| 巨鹿县| 盱眙县| 勃利县| 通辽市| 临汾市| 册亨县| 繁峙县| 黑水县| 冕宁县| 昆山市| 扬州市| 称多县| 萍乡市| 云南省| 大丰市| 安丘市| 诏安县| 日土县| 应用必备|