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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ue4场景没阴影_UE4 Mobile使用动态阴影的一些小结

發布時間:2025/4/16 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ue4场景没阴影_UE4 Mobile使用动态阴影的一些小结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

UE4在Mobile平臺里,除了預先烘焙的靜態陰影之外,對于動態物體一般使用兩種陰影:調制陰影(Modulated Shadows)和級聯陰影(Cascade Shadows,簡稱CSM)。

調制陰影是UE3時代就已經有的產物,關于它的資料不多,基本只知道它比一般的Shadows要省,而且還能隨意更改顏色。調制陰影看上去非常平滑沒有鋸齒,因此可能是用Shadow Volume生成的。根據虛幻官網的介紹,他們使用調制陰影主要用來解決場景打光過亮導致陰影太淡的問題。由于在游戲制作中一般只有一盞燈是去投射動態陰影,如果場景里還有別的燈光,就會導致這盞投射陰影的燈貢獻光照的比例變小,因此投射出的陰影變得不明顯。場景師可能就會因此提出需要,要求加深陰影的顏色。由于調制陰影的顏色是自由控制并不是根據燈光計算出來的,自然比一般的陰影要便宜得多。但是實際使用后,我發現調制陰影存在以下的幾個問題:

  • 調制陰影只會簡單地和場景進行乘積。這就會導致這樣一個結果:如果一個角色不是一個整體——比如帶著一把武器,那么武器的影子和身體的影子的重疊處會顏色更深,導致陰影看起來不是一個整體。同樣如果角色走到預先烘焙好的靜態陰影里面,調制陰影同樣無法融入靜態陰影。
  • (如果只是上述的問題,其實在手機端還是可以接受的,畢竟性能優先嘛。而且在手機上這些問題看上去不是很明顯。真正讓人不能接受的是下面的問題)

    2. 調制陰影貌似沒有做視錐體剔除。

    我們可以在UE4里簡單創建一個場景,放入一些Movable Objects。我這里放了幾個方塊、一艘船以及大量的工具人。

    接著將Directional Light打開Modulated Shadows后,跑到一個空地背對所有的Movable Objects,使用RenderDoc截取一幀畫面。

    我們會在RenderDoc里面發現,在ShadowDepths里存了場景里所有Movable Objects的深度信息。并且在渲染完場景后,每個陰影都被渲染了出來,盡管場景里并沒有這些物體。

    這意味著即便畫面中沒有多少物體,調制陰影依然會把場景里所有Movable Objects的陰影計算一遍。這么一來當場景有大量Movable Objects的時候,開銷完全沒有節省下來,說不定還增加了不少。

    上述這些問題在使用CSM后可以得到完美解決:陰影可以融入任何場景或者靜態陰影;在渲染時也進行了視錐體剔除。我們用RenderDoc截一幀會發現,ShadowDepths只存儲了視錐體內Movable Objects的陰影,渲染陰影的時候也不會渲染視錐體外的Movable Objects。

    當然CSM的消耗比調制陰影要大,原理可參考這篇文章:https://docs.microsoft.com/en-us/windows/win32/dxtecharts/cascaded-shadow-maps。根據原理我們可以得知,CSM不僅僅要計算光照,還需要收集場景信息去生成frusta信息以解決陰影的Perspective Aliasing問題,在每個frusta之間還需要做blend去消除接縫。我們可以將Cascade的數量調為1即可減少大量消耗,最好不要超過2。這樣一來CSM的開銷其實并不比調制陰影高多少。

    總結:在Mobile平臺里使用動態陰影的時候,如果場景里Movable Objects不多的時候可以考慮調制陰影,其他大多數情況還是用CSM比較好。如果一定要使用調制陰影,最好改一下管線做一下視錐體剔除。我想我可以理解官方為什么快要廢棄調制陰影了。

    總結

    以上是生活随笔為你收集整理的ue4场景没阴影_UE4 Mobile使用动态阴影的一些小结的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。