發表文章

目前顯示的是 7月, 2023的文章

Custom PBR Shader

圖片
  基於物理的渲染(Physically Based Rendering),指的是基於真實的物理原理的 BRDF(雙向反射分佈函數) 模型 所構成的渲染方式。 PBR 的出現其實是為了能夠統一美術的製作流程而產生的一種標準化的生產方式,減少美術之間由於因為能力或者設備環境造成的差異的一種標準化模式。 或許有人會問,PBR在引擎內不是都已經有內建的,那為何還要花時間自己做一套呢? 這是由於 Unity 的標準化材質(PBR)會因為想讓使用者方便使用,所以做了很多的 Shader 開關,無形中會增加很多增加的 變體 (Variants) ,導致容量增加。 而且能客製化也代表了能夠更掌握視覺與性能部分,不會被引擎內建的PBR各種限制。增加了往後專案的可擴充性以及彈性。 關於解釋 PBR 相關的文章相信網路上的資源也是很多了,這裡對原理就不再多說明。只關注於如何實踐這部分。 對於 PBR 的 BRDF 一般可以分為4個項目。 分別為 : 直接光的 Diffuse + 直接光的 Specular + 間接光的 Diffuse  + 間接光 Specular  以下則為客製化的展示效果,以及不同引擎內客製化PBR的效果。由於是自己實現的PBR,因此可以更確保在不同引擎內有極為接近的渲染效果。使用的模型則是以前做的模型重裝騎士。