UnrealEngine4禪意花園項(xiàng)目中的水池
來源:
52vr |
責(zé)任編輯:傳說的落葉 |
發(fā)布時(shí)間: 2019-06-13 08:22 | 瀏覽量:
這篇文章介紹了禪意花園項(xiàng)目中的水的效果實(shí)現(xiàn)方法。
禪意花園
禪意花園是Epic Games的官方項(xiàng)目,現(xiàn)在已經(jīng)開放在Market Place中自由下載。這個(gè)項(xiàng)目中使用了特別的方法來實(shí)現(xiàn)水池,效果如下:
水面表現(xiàn)
整體的水池效果分成水面與池底兩塊,針對(duì)于水面來說使用了Cubemap + noise,原本不是十分特別的地方,但是針對(duì)于Cubemap反射這一塊有個(gè)黑魔法,值得一看:
這個(gè)函數(shù)寫的很復(fù)雜而且不好閱讀,應(yīng)該是美術(shù)寫的。但是如果把它翻譯成代碼其實(shí)不難理解——它處理的是以場景設(shè)計(jì)師在關(guān)卡中放置的一個(gè)點(diǎn)為反射點(diǎn),通過這個(gè)反射點(diǎn)、水面像素和相機(jī)位置的計(jì)算來獲得一個(gè)反射向量。這個(gè)反射向量在對(duì)應(yīng)的CubeMap中采樣,從而獲得水面的反射效果,效果如下:
目前這個(gè)材質(zhì)的實(shí)現(xiàn)似乎還有點(diǎn)小問題,可以進(jìn)行修復(fù)。這里不方便將修復(fù)后的材質(zhì)放出,讀者可以自己進(jìn)行實(shí)現(xiàn)。
總體來講這個(gè)想法很新穎,可以在僅僅使用Emissive Color與Opacity通道的情況下來實(shí)現(xiàn)很好的水面的效果,尤其在反射效果上的效果很不錯(cuò)。
因此,這個(gè)水面效果可以在移動(dòng)平臺(tái)上兼顧性能和效果。
水底
禪意花園中水池的水底效果的腦洞也開的很大。在正常情況下想要表現(xiàn)水底的效果通常是使用Refraction通道。但是Refraction通道在某些設(shè)備上表現(xiàn)的不太正常,性能也是一個(gè)必須考慮的問題。
因此水底的模型是讓水底本身使用World Position Offset通道來對(duì)頂點(diǎn)進(jìn)行位移操作,這種操作主動(dòng)讓池底的網(wǎng)格模型進(jìn)行浮動(dòng),這樣一來也就會(huì)比較好適配大部分的設(shè)備。
這種做法是很新穎的,另一方面效果也很不錯(cuò)。
后記
看到了Epic Games提出的一些解決問題的方法,感覺到提出這些方法的人似乎已經(jīng)到了另一種境界。《孫子兵法》說“以正合,以奇勝。”大部分人似乎花了太多的功夫在“正”上,例如不停地去鉆底層,硬碰硬的提高效率和表現(xiàn)。但是是否能夠在“奇”這一塊來解決實(shí)際的問題,這種“奇”的能力又該怎么去培養(yǎng)?
-
分享到:
相關(guān)文章
網(wǎng)友評(píng)論
您需要登錄后才可以發(fā)帖 登錄 | 立即注冊(cè)
關(guān)閉
- 用戶名:
- 密 碼:
- 驗(yàn)證碼:
看不清? 點(diǎn)擊更換
- 忘記密碼?
全部評(píng)論:0條
推薦
熱門