朱峰社區(qū)首頁 朱峰社區(qū)

搜索資源 注冊|登陸

等待

返回 展開菜單

充分利用 UE4 中的噪聲

Illusion粒子 觀看預(yù)覽

Illusion粒子

包含3節(jié)視頻教程
關(guān)注6.0萬

Illusion是特效制作者不可缺少的必備軟件。活用這個軟件你可以快速高效的制作2d粒子。更可以和影片結(jié)合制作各種特效。他的原理也是你學(xué)習(xí)特效必須知道的技術(shù)!

關(guān)閉

UE4 推出基于材質(zhì)的程序式噪聲已經(jīng)有一段時間了,但是大多數(shù)用戶因其高昂的性能成本而不得不限制對其的使用。因此,許多用戶采用的方法是在其他程序中編寫平鋪噪聲紋理,然后將其放進(jìn) UE4 中使用。很多人都希望能在 UE4 中執(zhí)行這個步驟,但是找不到足夠方便的方法來實現(xiàn)。

我們已經(jīng)在虛幻引擎 4.13 中滿足了這些需求。這些改進(jìn)可以分為幾個類別:

1) 平鋪噪聲選項
2) 新增加的沃羅諾伊噪聲
3) 性能優(yōu)化和其他改進(jìn)

我首先要感謝渲染工程師兼客座教授 Marc Olano,他與我合作解決了平鋪和沃羅諾伊選項。他還完成了所有性能改進(jìn)和代碼整理工作。許多原有的選項經(jīng)過了優(yōu)化,而且現(xiàn)在工具提示會描述成本。請注意,盡管這些優(yōu)化有很大幫助,但大部分的程序式噪聲形式仍然有很高的渲染成本,因此我們將談一談可以讓我們首先烘焙靜態(tài)紋理的平鋪噪聲選項。在最后一節(jié)我們將說說不同噪聲功能的相對開銷。

平鋪噪聲

在 4.13 中,如果把一個“噪聲(Noise)”節(jié)點放進(jìn)材質(zhì)中,您將會注意到底部有兩個新的選項,名為“平鋪(Tiling)”和“重復(fù)大。≧epeat Size)”:

如果選中平鋪(Tiling),噪聲將按指定的重復(fù)大小(Repeat Size)(即域)重復(fù)。如果您想烘焙掉一些平鋪噪聲,設(shè)置起來很簡單。您需要確保重復(fù)大小與您將要烘焙掉的取樣大小相符。最簡單的方法就是對“位置(Position)”輸入使用默認(rèn)的 0-1 紋理坐標(biāo),然后將“比例(Scale)”和“重復(fù)大。≧epeat Size)”設(shè)置為與上面的示例圖相同的值。

我們之所以對位置使用默認(rèn) 0-1 UV,是因為這樣一來我們就可以使用渲染工程師 Daniel Wright 提供的“將材質(zhì)繪制到渲染目標(biāo)(Draw Material to Render Target)”這個新功能。順便說一下,在本文中我們介紹的內(nèi)容相對于這個功能所能實現(xiàn)的效果僅僅是皮毛而已。您一旦完成下面的步驟,就可以將它復(fù)用于任意數(shù)量的相關(guān)操作,因此請耐心看下去。

首先我們需要在內(nèi)容瀏覽器中生成一個新的 Actor 藍(lán)圖。單擊“新增(Add New)”,然后單擊“藍(lán)圖類(Blueprint Class)”。當(dāng)新的對話框彈出時,單擊 Actor,然后給該資產(chǎn)命名。

接下來,我們需要在內(nèi)容瀏覽器中生成一個渲染目標(biāo)。單擊“新增(Add New)”,然后單擊“材質(zhì)和紋理(Materials and Textures)”,再單擊“渲染目標(biāo)(Render Target)”。接著雙擊這個新的渲染目標(biāo),將分辨率設(shè)置為您需要準(zhǔn)備的大小。我們就快完成了!

現(xiàn)在打開新添加的藍(lán)圖,導(dǎo)航至“事件圖(Event Graph)”。添加一個定制事件,將它命名為“Bake”。指定要烘焙的材質(zhì)和您創(chuàng)建的渲染目標(biāo)。

然后導(dǎo)航至“構(gòu)造腳本(Construction Script)”,調(diào)用定制事件 Bake:

編譯藍(lán)圖后,系統(tǒng)將把您的材質(zhì)寫入渲染目標(biāo)。現(xiàn)在您要做的就是右鍵單擊渲染目標(biāo),然后選擇“創(chuàng)建靜態(tài)紋理(Create Static Texture)”和將要創(chuàng)建的紋理。

沃羅諾伊噪聲

沃羅諾伊噪聲非常適合用于翻騰的煙云、腐蝕圖案和自然界中的許多其他圖案。它有時也被稱作沃利噪聲或蜂窩噪聲,指的都是一回事。下面是您可以直接用虛幻引擎實現(xiàn)的一些基本可能:

從左到右:
1) 一個倍頻程,冪 = 2
2) 一個倍頻程,反轉(zhuǎn) (1-x)
3) 三個倍頻程,反轉(zhuǎn)

下面就是在 UE4 中純粹用沃羅諾伊噪聲生成的龜裂沙地:

下面是生成步驟的詳解:

從左到右:
1) 1 倍頻程的原始沃羅諾伊噪聲,已反轉(zhuǎn)
2) 通過使用添加到輸入位置的少量“梯度”噪聲而應(yīng)用了扭曲的沃羅諾伊噪聲
3) 使用使邊緣細(xì)節(jié)均衡化的“高通濾波”材質(zhì)取樣的沃羅諾伊噪聲。
4) 使用“根據(jù)高度貼圖建立法線貼圖”功能生成法線貼圖。

最后的沙地圖像是通過使用上文第 3 步中的紋理作為視差遮蔽貼圖材質(zhì)中的高度貼圖而生成的。

“高通濾波”是使用新的材質(zhì)功能“高通濾波紋理(High Pass Texture)”執(zhí)行的。邊緣變化是通過添加另一個梯度噪聲來實現(xiàn)的,該噪聲的作用是使偏移寬度變化。此版本的高通濾波功能需要一個紋理,所以在此時保存了該紋理以便使用:

還有一種版本的“高通濾波功能”使用的是其他功能而非紋理,適用于喜歡這種方法人。

要烘焙法線,只需要將上面第 3 步的結(jié)果烘焙到渲染目標(biāo),然后使用“根據(jù)高度貼圖建立法線貼圖”功能,再將此材質(zhì)渲染到渲染目標(biāo):

請注意,只要進(jìn)行少量的更改,例如降低高通濾波偏移量和增加高通濾波強(qiáng)度,就可以得到這樣的腐蝕圖案紋理變體:

下面是一個樣式化的翻騰煙柱:

這效果是通過對兩個作為平移紋理的簡單沃羅諾伊紋理進(jìn)行取樣得到的。系統(tǒng)將兩個紋理相乘,然后取平方根,以保持翻騰形狀的完整性。然后將它應(yīng)用到鋪嵌的圓柱體網(wǎng)格上。請注意,要先將最終高度乘以全局空間法線,然后才能連接到全局位置偏移。

這里有一個基于沃羅諾伊的大理石紋理示例:

下面是使用沃羅諾伊噪聲作為基礎(chǔ)生成大理石類紋理的方法:

從左到右:
1) 標(biāo)準(zhǔn)沃羅諾伊噪聲,1 倍頻程
2) 在輸入位置添加了“梯度”噪聲的沃羅諾伊噪聲,設(shè)置為 0.05
3) 將梯度噪聲乘以 0.3 后添加到沃羅諾伊輸入位置
4) 使用第三步的結(jié)果作為來自引擎/內(nèi)容的隨機(jī)紋理的紋理坐標(biāo):

Texture2D'/Engine/Engine_MI_Shaders/T_Base_Tile_Specular.T_Base_Tile_Specular'

這里使用的是名為梯度貼圖的技術(shù)。使用的顏色的確切范圍是通過先做加法和乘法再將結(jié)果插入紋理來控制的。您可以描繪定制紋理來尋找所需顏色,也可嘗試使用任何具有您想要提取的顏色的圖像。

這個示例僅僅在輸入位置添加了標(biāo)量扭曲。您可能已經(jīng)在上面的圖像中注意到,這種做法產(chǎn)生了對角線條紋圖案。對于大理石紋理來說,這是完美無缺,但是如果要得到其他效果,您可能需要對 X 和 Y 扭曲使用不同的噪聲模式,或者使用法線貼圖進(jìn)行偏移。

關(guān)于沃羅諾伊噪聲成本的說明

沃羅諾伊噪聲成本很高,有四種不同的質(zhì)量級別可選。它們的區(qū)別就在于搜索的單元數(shù)量。一般來說,質(zhì)量級別數(shù)字越小,網(wǎng)格失真越少。請注意,當(dāng)您放置噪聲節(jié)點時,它默認(rèn)設(shè)置為 6 倍頻程,但是您只會看到 1 個倍頻程的指令計數(shù):

1 級質(zhì)量搜索 8 個單元,每個倍頻程約 160 條指令
2 級質(zhì)量搜索 16 個單元,每個倍頻程約 320 條指令
3 級質(zhì)量搜索 27 個單元,每個倍頻程約 540 條指令
4 級質(zhì)量搜索 32 個單元,每個倍頻程約 640 條指令

作為對比,一個典型的材質(zhì)大約有 100 條指令。一個使用 4 級質(zhì)量沃羅諾伊噪聲的 6 個倍頻程的材質(zhì)將有大約 3800 條指令,渲染成本要高出約 30 倍。1 級質(zhì)量沃羅諾伊噪聲的 1 個倍頻程只需要 160 條指令,對于基本材質(zhì)來說比較合理。

從左到右:
1) 1 級質(zhì)量
2) 2 級質(zhì)量
3) 3 級質(zhì)量
4) 4 級質(zhì)量

請注意,2 級質(zhì)量要比其他幾級暗一點,這是因為使用了兩個偏移 2x2x2 的網(wǎng)格,其點陣較為密集。只要乘以 2 就可以解決這個問題。

性能特性

為了演示使用噪聲節(jié)點的真實成本,我使用一個全屏幕四邊形,測量了每種功能使用 1-6 個倍頻程的性能成本。我還增加了與矩形紋理取樣的比較。對于矩形紋理取樣,倍頻程只是相加在一起的附加取樣。

不出所料,大部分噪聲選項的渲染速度明顯慢于簡單的紋理查找!翱焖偬荻 - 3D 紋理”顯然是最快的紋理功能,因為它已經(jīng)烘焙到體積紋理上,而其他“基于紋理”的選項都使用 2D 噪聲紋理來執(zhí)行隨機(jī)性運算,這就需要更多數(shù)學(xué)運算來以 3D 方式取樣。因此如果您需要使用程序式噪聲,也需要使場景的渲染保持快速,那么“快速梯度”就是目前的最佳選擇,但是請記住,如果將它用在很大的面積上,或者平鋪值增加過多,就會顯示重復(fù)的圖案。

高質(zhì)量的沃羅諾伊噪聲功能是成本最高的,因此如果需要在性能受到限制的環(huán)境中使用它們,請務(wù)必將它們烘焙到紋理中。

我希望這些信息對您有用,能讓您在自己的項目中有效地利用噪聲。


朱峰社區(qū)3dsmax2016模擬學(xué)習(xí)系統(tǒng) 朱峰社區(qū)3dsmax2016模擬學(xué)習(xí)系統(tǒng)

朱峰社區(qū)網(wǎng)頁版
朱峰社區(qū)網(wǎng)頁版(手機(jī)掃描-分享-添加到屏幕)


朱峰社區(qū)公眾號
朱峰社區(qū)微信公眾號(微信掃一掃-關(guān)注)

資源說明圖文教程無法下載,只能觀看圖片和文字。
版權(quán)規(guī)則本站圖文皆來自互聯(lián)網(wǎng)共享資源,如涉及到版權(quán)請查看版權(quán)規(guī)則。本平臺提供圖文僅可用于個人學(xué)習(xí),如用于商業(yè)請購買正版。您必須遵守的版權(quán)規(guī)則

未知用戶

未知用戶

fsxcdrz

fsxcdrz

普通會員

非常不錯的教程

贊0

踩0

17年1月24日

zhuquan1989

zhuquan1989

普通會員

贊0

踩0

17年1月24日

2005-2025 朱峰社區(qū) 版權(quán)所有 遼ICP備2021001865號-1
2005-2025 ZhuFeng Community All Rights Reserved

VIP

朱峰社區(qū)微信公眾號

回頂部

1.復(fù)制文本發(fā)給您的QQ好友或群、微信等;好友點擊鏈接以后,轉(zhuǎn)發(fā)就成功了。 2.如朋友點擊您的鏈接,您需要需刷新一下才行;同一個好友僅能點擊一次。
購買VIP,觀看所有收費教程。