UE4 渲染性能設置

渲染設置(Rendering Setting)

本文介紹 ue4 4.14的世界設置

在編輯器最上端點擊“設置”(Settings)按鈕, 選擇“項目設置”(Project Settings)打開“項目設置”面板, 在項目設置面板左邊的 “引擎”(Engine)中選擇Rendering 打開渲染設置,這些設置被保存在DefaultEngine.ini中

渲染設置中的屬性介紹:

Mobile


Mobile HDR : 是否在手機上啓用 高動態範圍光(HDR),如果選擇該項,在手機上將會使用全HDR光照功能,以及某些後處理功能,這些功能需求會消耗較多的內存性能來換取高品質的光照效果,在配置較低的手機上,如果不需要較好的光照效果,建議關閉掉該項 更多Max Dynamic Point Lights : 移動設備能夠支持的最大動態光數量, 如果設置成0,相關的shader將不會被生成,修改此項需要重啓編輯器Use Shared Dynamic Point Light Shaders : 如果選擇該項,多個動態光將會使用同一個shader這會輕微的降低效率,但可以減少shader的生成量,修改此項需要重啓編輯器Enable Combined Static and CSM Shadowing : 是否同時接受來自固定光源的靜態陰影和CSM陰影 (疑問? 不太明白爲什麼要使用兩種陰影,是否應該理解爲離相機較遠的地方使用普通的shadow map,較近的地方使用 CSM)Disable vertex fogging in mobile shaders : 選擇該項,在移動設備上所用的shader將不計算頂點着色階段的霧(如果有的話)以增加渲染效率

Materials

Game Discards Unused Material Quality Levels : 選擇該項將不會加載與當前手機支持的渲染等級不相關的shader, 不勾選該項的話將會加載所有等級的shader 這樣的話可以支持運行時動態切換渲染等級Clear Coat Enable Second Normal : 對於ClearCoat(ClearCoat:透明塗層,通常用於模擬在材質的表面有一層薄的透明塗層的情況,如鋼琴烤漆之類的效果) 是否爲第二層材質指定單獨的法線貼圖。 下圖爲不使用和使用雙重法線的對比
  Dual CC Off   Dual CC On

爲ClearCoat使用雙重法線詳解

Culling

Occlusion Culling : 是否允許被遮擋的物體被裁剪掉以致不參與渲染Min Screen Radius for Lights : 光源被裁剪的屏幕半徑,即光源被投影到屏幕座標系下其發光半徑小於該值時該光源將會被裁剪,可以理解成是當光源遠離相機時該光源被禁用的時機Min Screen Radius For Early Z Pass : Early-Z 測試階段 物體被投影到屏幕上的半徑小於該值時,該物體將會在Early-Z階段被裁剪掉,一定範圍內增加該值能夠提升渲染性能,但設置過大會造成大的遮擋物被剔除而可能使引擎渲染更多物體Min Screen Radius for Cascaded Shadow Maps : (待查)Warn about no precomputed visibility : 當沒有Precomputed visibility數據可被當前攝像機使用的時候是否打印警告,這在需要使用Precomputed visibility的遊戲中比較實用,如 第一人稱手遊

Textures

Texture Streaming : 開啓後只有當前可以被看見的物體, 其貼圖纔會被加載Use DXT5 Normal Maps : 是否使用DXT5格式的法線貼圖,如果不使用DXT5格式則BC5格式的法線貼圖會被使用,但BC5格式不被所有硬件支持, 修改此項需要重啓編輯器

Reflections

Reflection Capture Resolution : 設置Cubmap的分辨率,必須設置爲是2的n次方Reduce Lightmap mixing on smooth surface : (待查)

Forward Shading

Forward Shading : 是否在PC上使用前向渲染模式,前向渲染需要硬件支持shader model 5, 前向渲染支持多重採樣抗鋸齒(MSAA) 並且開銷比較小,但與延遲渲染相比有很多效果不能實現, 修改此項需要重啓編輯器Vertex Fogging for Opaque : 讓不透明材質使用逐頂點計算霧,逐頂點霧具有較好的性能並支持多重採樣抗鋸齒(MSAA) 該設置只用於前向渲染

Lighting

Allow Static Lighting : 是否開啓靜態光照, 開啓後將生成 lightmap, shadow map之類的可在靜態光照下使用的貼圖,否則僅使用動態光照, 修改此項需要重啓編輯器Use Normal Maps for Static Lighting :是否將法線圖用在靜態光照計算中使用Generate Mesh Distance Fields : 是否爲靜態網格創建距離場 (詳細 待查)Generate Landscape Real-time GI Data : 是否爲地形(Landscape)生成一基本色的貼圖用於支持實時全局光照, 開啓該選項需要連同 ”Generate Mesh Distance Fields“一起開啓,開啓後會增加場景構建時間和內存開銷DBuffer Decals : 是否使用延遲貼花,延遲貼花會將貼花保存在DBuffer中,使貼花在陰影或間接靜態光源下正確渲染, 修改此項需要重啓編輯器 參考Support global clip plane for Planar Reflections : 是否開啓 平面反射(Planar Reflections) 平面反射相對於 屏幕空間反射(SSR) 具有更好的效果 但渲染開銷較高。渲染開銷較高的原因來自平面反射的工作原理。因爲平面反射實際上將從反射方向再次對關卡進行渲染, 修改此項需要重啓編輯器。 下圖分別是SSR反射和平面反射:
SSR Reflection    PR Reflection

Tessellation

Adaptive pixels per triangle : 是否細分三角面使每個三角麪包含相同數目的像素以增加模型細節

Translucency

Separate Translucency : 是否讓半透明渲染到獨立的RenderTarget, 如果渲染到獨立的RenderTarget,該target將會在景深(Depth of Field )處理之後被混合到目標target以防止半透明失焦,讓半透明渲染到獨立的RenderTarget可以防止一些後處理效果對半透明造成的bugTranslucent Sort Policy : 選擇半透明物體的排序方式, 這會影響半透明的排序方式和在相機移動的時候如何變換半透明的排序,目前的選擇有 根據到相機的距離排序(Sort by distance), (Sort by project z), (Sort along axis)Translucent Sort Axis : 如果“Translucent Sort Policy” 選擇的是Sort along axis的話需要設置該值

Postprocessing

Custom Depth-Stencil Pass : (待查)

Default Settings

Bloom : 是否開啓光暈(Bloom) 這個設置在在 postProcess volume,相機和遊戲設置中都可以被更改Ambient Occlusion : 是否開啓 環境遮擋(AO)這個設置在在 postProcess volume,相機和遊戲設置中都可以被更改Ambient Occlusion Static Fraction(AO for baked lighting) : (待查)Auto Exposure : 是否開啓自動曝光 即人眼適應(Eye Adaptation), 開啓後會讓場景曝光自動調整以重建猶如人眼從明亮環境進入黑暗環境(或相反)時所經歷的效果, 這個設置在在 postProcess volume,相機和遊戲設置中都可以被更改Auto Exposure : 選擇自動曝光模式 Auto Exposure Basic : 低採樣曝光,運算速度較快 不支持移動設備,Auto Exposure Histogram : 根據場景顏色的直方圖以使攝像機或眼睛適應於場景 運算速度較慢,不支持移動設備, 這個設置在在 postProcess volume,相機和遊戲設置中都可以被更改Motion Blur : 是否開啓 運動模糊, 這個設置在在 postProcess volume,相機和遊戲設置中都可以被更改Lens Flares(Image based) : 是否開啓 鏡頭眩光 , 這個設置在在 postProcess volume,相機和遊戲設置中都可以被更改Anti-Aliasing Method : 選擇抗鋸齒方式, None:不使用抗鋸齒, FXAA:快速近似抗鋸齒(Fast Approximate Anti-Aliasing)FXAA是一種單程像素着色器,運行於渲染管線的後期處理階段,相比於MSAA,FXAA的目標是速度更快、顯存佔用更低,還有着不會造成鏡面模糊和亞像素模糊,所以對顯卡沒有特殊要求, Temporal AA: Temporal Anti-Aliasing (TXAA) 該模式將 MSAA、時間濾波相結合,運行於渲染管線的後期處理階段, 可呈現更高的視覺保真度 MSAA : Multi-Sampling AA 是在光柵化階段,判斷一個三角形是否被像素覆蓋的時候會計算多個覆蓋樣本(Coverage sample),但是在pixel shader着色階段計算像素顏色的時候每個像素還是隻計算一次 參考文章:https://www.zhihu.com/question/20236638 http://developer.download.nvidia.com/assets/gamedev/files/sdk/11/FXAA_WhitePaper.pdf https://en.wikipedia.org/wiki/Temporal_anti-aliasing

Optimiztions

Use Stencil for LOD Dither Fading : (待查)Early Z-pass 早Z階段 需要渲染那些物體, None:不處理任何物體,opaque meshes only :只渲染不透明mesh, opaque and masked meshes, decide automatically:由引擎決定渲染哪些物體Movables in early Z-pass : 是否在early Z-pass階段 渲染移動物體Clear Scene : 選擇G-Buffer的清除方式,Do not Clear : 不清楚gbuffer是最快的一種方式, 但如果當前畫面不能填充整個buffer的時候, 這中方式會在屏幕上照成畫面殘留, 所以使用這個選擇 最好給場景指定一個天空盒, Hardware Clear : 在渲染之前完全有硬件來清楚, 這種方式適合大部分情況, Clear at Far Plane : 在遠裁剪面繪製一四方形面, 這種方式在某些gpu上速度快於 Hardware ClearAccurate velocities from Vertex Deformation : (待查)Selectively output to the GBuffer rendertargets : 不渲染不相關的東西到GBuffer, 具體怎麼實現參考 ue4 工程師的回答 “This feature is an optimization to save bandwidth when reading and writing the gbuffer. The implementation uses some GBufferB.a bits as flags to encode predefined values for other rendertargets. For instance, if the base passpixelshader is guarantied to not output any precomputed shadow factors, instead of exporting (0,0,0,0) to GBufferE , it does not export to it (saving bandwith) and rather sets the flag ZEROPRECSHADOWMASK” , 修改此項需要重啓編輯器 更多Enable Particle Cutouts by default : (待查)GBuffer Format : 選擇GBuffer的格式, 不同的格式會對性能有不同的影響,因爲格式的不同會造成數據量的不同和gpu上內存的使用量不同,以至造成不同的讀寫帶寬,可選格式有, Default: PF_B8G8R8A8, force 8 bits per channel : PF_B8G8R8A8, high precision normals : PF_FloatRGBA, force 16 bits per channel : Force16BitsPerChannelUse GPU for computing morph targets : 使用cpu還是gpu來混合頂點變形緩衝(morph targets) morph targets 保存了某個模型頂點改變後的快照,例如,人物在做面部表情時可將改變後的面部表情存入morph target,然後通過morph target與原模型混合來表現面部表情Support Compute Skincache : (待查) 4.14 新加功能 還屬於實驗性質的, 大概是說在gpu上用 compute shader 計算蒙皮 然後緩存到一個單獨的buffer供後續渲染批次使用, 修改此項需要重啓編輯器

VR

Instanced Stereo 是否支持 實例化立體繪製(Instanced Stereo) 渲染雙眼 僅支持 D3D, SM5, PS4Multi-View : 是否爲 Instanced Stereo開啓多視圖渲染,僅支持PS4Mobile Multi-View : 是否在移動平臺 爲Instanced Stereo開啓多視圖渲染,僅支持 es3.1 安卓 GearVR設備

Editor

-Wireframe Cull Threshold : 設置編輯器窗口 線框模式下 的裁剪半徑

Shader Permutation Reduction

Support Stationary Skylight : 靜態天光需要在basepass階段切換shader,禁用掉會減少shader的切換頻率, 修改此項需要重啓編輯器Support Low quality lightmap shader permutations 低質量lightmap 需要切換 lightmap 渲染shader ,禁用掉會減少shader的切換頻率, 修改此項需要重啓編輯器Support PointLight WholeSceneShadows : 點光源的渲染 在需要在cubmap渲染階段不斷切換頂點和像素shader,禁用掉會減少shader的切換頻率, 修改此項需要重啓編輯器Support Atmospheric Fog : 大氣霧的渲染 在需要在basepass階段切換shader,禁用掉會減少shader的切換頻率, 修改此項需要重啓編輯器
發佈了158 篇原創文章 · 獲贊 57 · 訪問量 42萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章