在去年3月份的GDC 2018上,微軟為DirectX12 API增加了DXR光線追蹤模塊,NVIDIA也發布了基于實時光線追蹤的RTX技術,幾大游戲引擎包括寒霜引擎等都宣布將增加DXR支持。隨著去年8月份NVIDIA新一代RTX20系列顯卡的正式發布,光線追蹤這個名詞再一次出現在了玩家面前。那么光線追蹤到底是什么,它會如何改變我們的游戲,和小獅子一起來看看吧。
說到光線追蹤就不得不提到從過去到現在很長一段時間內游戲都用到的一種渲染方式——光柵化渲染。這種技術是將一個3D圖形的幾何信息轉變為一個個柵格組成的2D圖像的過程。這么說可能有些空洞,可以簡單地理解為是將三角形用數學方式投影到屏幕空間再進行光影計算,進而呈現在顯示設備上,也就構成了我們視覺所看到的各類陰影效果以及光線投射。雖然通過這種方式我們也能看到非常逼真的陰影,但這都是游戲的設計者結合環境進行設計和計算的,如果開發者對這處陰影的判斷是對的,那么畫面上的效果也就是對的,反之,如果開發者的判斷是錯誤的,那么在不可能出現陰影的地方有了陰影,一切都仰仗開發者的經驗。
而光線追蹤就是來解決這個問題的。光線追蹤技術其實很早就已經應用到電影、3D動畫中,那些令你激動不已的動作大片中與攝影機畫面難以區分的火焰、煙霧和爆炸特效就是它的杰作。光線追蹤是以光源為起點定義光線,進而追蹤由此產生的光線與物體表面以及光線與光線之間交互關系的過程。雖然定義很簡單,但實現起來卻非常困難,因為這一技術需要無限多的光線照射在物體表面,通過反射、折射、漫射等途徑進入最終的“攝像機”成像,而這種計算會消耗大量的計算力,目前的單一硬件很難滿足實時光線追蹤的需求。所以NVIDIA推出的RTX 20系顯卡包括現在絕大多數光線追蹤技術都是采用逆向方式來實現,即以“攝像機”鏡頭為出發點,反向回溯光線并通過這些光線尋找光源。
對于游戲而言,光線追蹤雖然不能很直接地改變畫質,但是能使畫質更接近真實。這或許是游戲硬件在暴力發展運算能力之后,迎來了一次對畫面上的更新,未來應該也是3A大作新的方向之一。
一塊支持光線追蹤的NVIDIA RTX20系列顯卡是目前開啟光線追蹤的必要前提,包括幾天前老黃在CES上發布的RTX2060。除了顯卡,系統API層面需要微軟為DX12加入的DirectX Raytracing(DXR)模塊支持,也就是說,系統必須更新到最新的Win10秋季更新1809。
在硬件和API層面的問題都解決了,那么現在只需要游戲支持就能玩上了!雖然在去年8月的時候,NVIDIA宣布有11款游戲(《神力科莎Competizione》《Atomic Heart》《戰地5》《Control》《Enlisted》《逆水寒》《劍網3》《MechWarrior 5:Mercenaries》《地鐵:離去》《ProjectDH》《古墓麗影:暗影》)支持或即將支持實時光線追蹤,但四個月過去了,現在市面上實際支持的依舊只有《戰地5》一款,畢竟引擎級別的變化要實現起來也不是那么容易的一件事。不過在1月9日,3DMARK加入了PortRoyal測試項目,讓玩家們能對顯卡的光線追蹤性能進行測試,算是能讓玩家們對自己顯卡的光線追蹤性能有一個直觀的感受。
測試平臺
CPU:Intel 酷睿i7-8700K
內存:8GB DDR4 3200MHz × 2
主板:華碩TUF Z390-PLUS GAMING (WI-FI)
硬盤:西部數據Black NVMe SSD 1TB
顯卡:華碩DUAL-GeForce RTX 2080 TI-O11G電競游戲顯卡
華碩DUAL-GeForce RTX 2080-O8G電競游戲顯卡
電源:NZXT E850
操作系統:Windows10 64bit 1809專業版
顯示驅動:417.35
為了能更好地反映各分辨率下不同的性能差距,我們選擇采用華碩DUAL-GeForce RTX 2080 TI-O11G這樣的頂級游戲顯卡,看看頂級顯卡在游戲中的實際表現,同時在3DMARK測試中加入RTX2080,以看看旗艦和次旗艦的性能差距。測試時所有特效全部為最高,僅調整DXR效果。
從測試結果我們可以看到,《戰地5》在不開啟光線追蹤的情況下并不太吃顯卡性能,RTX2080 Ti即使是4K下也可以輕松超過60fps,運行非常流暢。但在“北非:單槍匹馬”這個場景中1080P分辨率下開啟最高等級DXR,幀數直接降到了一半以下,即使是低等級DXR,幀數也下降了50多幀,這說明DXR的計算量非常巨大,而該場景在4K分辨率下,開啟最高等級DXR時幀數已經不足40幀,對于FPS游戲來說已經無法接受了。而不同復雜度的場景對幀數的影響也不同,“北極之光”這樣的雪地場景性能下降沒有那么明顯,DXR四個等級之間的幀數相差也不大,不過在4K分辨率下依舊低于60幀。另一方面,由于光線追蹤剛剛起步,驅動和游戲對其的優化也有很大的問題,所以就目前來說,光線追蹤的游戲性能并不算太樂觀。
性能下降這么多,如果畫面沒有提升,恐怕就有點說不過去了,所以我們對比了特定場景開關DXR和DXR四個等級下的畫面。
光線追蹤的效果主要是體現在有光線反射的地方,如果場景中能夠形成鏡面的物體比較多的話,就會有比較明顯的效果,通常在火焰、水面、玻璃這些地方會有比較明顯的效果,而這些大多發生在比較小的場景中,大場景中很難看出區別。而目前《戰地5》中光線追蹤有明顯效果的地方其實并不算多,這跟計算性能以及游戲開發和優化都有著很大的聯系。
TIPS:1月26日,電腦報將聯合華碩以及NVIDIA在成都為大家帶來一場關于光線追蹤技術的分享體驗活動,有興趣參加的玩家可以關注我們接下來的相關活動介紹。
對于光線追蹤這樣一個擁抱未來的技術,可以算是這些年來顯卡更新上難得的一個非提升性能而是提升畫面的技術,它的加入能實實在在改變我們的游戲畫面,帶來更真實的效果,但付出的代價也是不小的。我們相信,一旦這扇門被打開,將是一個全新的體驗和世界。而老黃前幾天在發布RTX2060時說其將在DXR低的情況下以60fps流暢運行《戰地5》,未來驅動和游戲都應該會有較大的優化,而今年那些宣布將要支持光線追蹤的游戲也會逐漸完善,大家也會從游戲中實際體會到實時光線追蹤的魅力。另一方面,顯卡支持實時光線追蹤對游戲開發者來說不用再去依靠經驗來進行光柵化渲染模擬,一定程度上可以減少工作量,但是在目前,恐怕是需要同時準備兩套方案,想要減少工作量恐怕得需要業界的共同努力和幾代產品迭代之后的事了。