1. 程式人生 > >Unity場景渲染中那些意想不到的細節(序言)

Unity場景渲染中那些意想不到的細節(序言)

自從Unity進入Unity5以後,一直到本文釋出前最後一個正式版本Unity2017.3,這款引擎的光照烘焙水平是在不斷的提升,以至於現在足以開發大型3A大作。在看了最新的Unity2018 demo "Book Of Dead"以後,許多正在使用Unity3D的技術美術紛紛感嘆為何自己的場景與Demo差距那麼大,即使有團隊內美術大大的高質量材質模型,也很難達到Demo中這樣的效果,甚至無法達到同級別的UE4的美術水平。究其原因,80%來自於對光照烘焙的設定和材質的設定不正確,20%來自於對待特殊需求時,沒有正確使用或編寫shader以應對。因此,我們將會詳細講解如何自定義場景設定,材質以及如何在需要時編寫和使用需要的Shader,有興趣一同交流的朋友可以加一下QQ群,鼓勵技術交流,謝絕招聘廣告:146025605。

在這裡使用一個比較老的室內場景作為示例,場景是通過正版途徑購買,這裡就不分享了,希望大家支援正版拒絕盜版:


在這個畫面中我們大致可以看到以下幾個細節:首先畫面有後處理效果包括環境光遮蔽,TAA抗鋸齒,牆上天花板的螢幕空間反射等,後處理指令碼使用的是最新的Post Process v2,可以在Github上自行下載,其次地面上的反射與其他部分的反射明顯不同,更為清晰且法線效果明顯,這裡使用的是筆者自制的實時平面反射Shader,想要下載的朋友可以加群下載,地上的拖鞋,枕頭等都採用了DX11特有的曲面細分Tessellation技術,而不是DX10時代低效率的Geometry Shader,最後放眼整個畫面,明暗搭配相對適當,沒有出現一些反物理的現象,可以達到我們合格的3A級別渲染,而這些技巧的實現會在之後詳細講解。