Imagination 公司技術(shù)產(chǎn)品管理高級總監(jiān) Kristof Beets 分享了對光線追蹤技術(shù)的觀點以及 Imagination 的光線追蹤 IP。
我是Kristof Beets,擔(dān)任Imagination公司的技術(shù)產(chǎn)品管理高級總監(jiān)。我在IP開發(fā)領(lǐng)域工作了20多年,致力于GPU技術(shù),其中涉及從通用游戲到高端游戲的所有GPU技術(shù)。在這段時間里我負(fù)責(zé)過開發(fā)者技術(shù)支持、Demo開發(fā)以及業(yè)務(wù)拓展。
我一直致力于移動端GPU領(lǐng)域,并在Imagination公司從事相關(guān)技術(shù)工作,可追溯到2014年我們Plato Boards成立開始光線追蹤技術(shù)的開發(fā)。我現(xiàn)在負(fù)責(zé)高能效IP的開發(fā),將光線追蹤技術(shù)推廣到各種市場和平臺。
Imagination作為一家IP開發(fā)公司已經(jīng)超過35年了,在此期間我們一直處于圖形技術(shù)的前沿。我們目前專注于移動、嵌入式和云計算領(lǐng)域,研究如何通過智能硬件設(shè)計為新平臺帶來最佳游戲體驗。
光線追蹤是什么?
我們有很多博客和白皮書討論了光線追蹤技術(shù),但從根本上講光線追蹤是建立在現(xiàn)實的基礎(chǔ)上的:光線來自于光源,這些光線在物體表面反射并且相互作用(吸收、改變顏色、改變方向),最終這些光線會以某種特定顏色被眼睛所看到。整個過程產(chǎn)生了我們可以看到的視覺效果。你可以想象成從光源到我們希望的成像,正常情況下這個過程是顛倒過來的:我們的眼睛先看到光線,產(chǎn)生反射。目前較有效的方法是混合渲染,我們渲染大部分的傳統(tǒng)場景,同時使用光線追蹤技術(shù)查詢要在處理的3D場景像素。
開啟光線追蹤,獲得精細(xì)的光照效果
基本上對于反射曲面,你運行著色器,著色器是根據(jù)視角方向發(fā)射光線的,并在3D場景中查找對象發(fā)射到該像素中的內(nèi)容。從根本上講光線追蹤將空間查詢(spatial query)作為一種新功能添加到GPU中,這非常適合現(xiàn)實場景中的很多效果。光線是檢查你能否看到(直接或反射)一束光,從而確定該像素是亮的或陰影以及前面提到的反射。
如今GPU的關(guān)鍵在于對于著色器要非常的靈活,如果與通用處理器單元(GPU)形式的計算結(jié)合使用則更加的靈活。GPU一直都是這樣的特點,將半固定功能的硬件與完全可編程的著色器混合使用從而獲得最佳的靈活性和效率。 在圖形中光線、陰影和反射一直很流行。從無陰影到斑駁陰影,再到體積模塊以及更復(fù)雜的過濾器和多分辨率查找,我們經(jīng)歷了很長一段時間?,F(xiàn)在,我們使用了如此強(qiáng)大的計算性能和帶寬,以至于成本非常高。而使用真正的光線追蹤以達(dá)到好的光線效果會更快,成本更低,且質(zhì)量一定比著色器更好。 在我們的光線追蹤等級白皮書中對光線追蹤的使用有詳細(xì)介紹。Imagination從一開始就考慮電池供電設(shè)備的效率,所以我們的重點一直是光線追蹤L4和L5高效解決方案?;緛碚f,我們完全從著色器(L2和L3的解決方案僅能夠?qū)崿F(xiàn)部分功能)上卸載了光線追蹤,并且在照射物體時使用相干性排序來提高內(nèi)存訪問和執(zhí)行效率。我們追蹤和處理成束的光線而不是分散的光線,如果所有光線都朝著不同的方向發(fā)射是非常低效的。
不光滑表面隱藏相干性示例
偽造的光線追蹤效果
我們討論了一些關(guān)于陰影的技巧示例(例如無陰影、一些簡單的斑點、模塊、更復(fù)雜的陰影貼圖),雖然這些技術(shù)變得更復(fù)雜,但隨著你需要更高的畫面質(zhì)量,它們的缺點也越來越明顯。
對于反射也可以這樣做:無發(fā)射,偽造的模糊紋理查找,預(yù)烘焙立方體貼圖,動態(tài)立方體貼圖,甚至是部分軟件光線追蹤,比如屏幕空間反射。使用這種方法,你可以在屏幕空間內(nèi)執(zhí)行最少數(shù)量的光線追蹤,使用方向向量和深度信息來反射附近的對象物體(但并不適用屏幕上的所有對象)。
Imagination推出的硬件級光線追蹤IP
我們在2015年就已經(jīng)將光線追蹤單元集成到GPU中,比如我們的Plato硬件平臺。這意味著著色器發(fā)出光線,專用的單元會采集許多光線并查找相干性。我們將沿相似方向的光線綁定在一起,然后對這些光纖束進(jìn)行統(tǒng)一處理。我們訪問一個BVH(邊界卷層次結(jié)構(gòu))單元模塊,首先檢查光纖束是否與3D場景相交(基本上是一個非常大的邊界框)。如果光線與3D場景相交,我們就沿著盒體的層次結(jié)構(gòu)向下處理;整個場景就會分割成更小的盒體單元,然后我們再檢查這個盒體的層次結(jié)構(gòu)。
如果我們的光線束與盒體相交,我們將深入到盒體的層次結(jié)構(gòu)中,直到最終該光束沒有任何阻礙。如果直到光束不會擊中盒體內(nèi)的任何地方,我們可以通過快速排除場景內(nèi)的大部分空間來節(jié)省時間和精力。當(dāng)我們在某個點上看到越來越小的盒體時,我們會切換到實際的三角形幾何體,然后我們從盒體光線測試轉(zhuǎn)換到三角形光線測試。當(dāng)然這是我們要找的光線實際交點,然后我們將其返回著色器碼進(jìn)行處理。
集成到游戲引擎中是很簡單的,因為基本上發(fā)出光線是標(biāo)準(zhǔn)著色器代碼的一部分,比如UE4引擎已經(jīng)支持這一特性。我們還需要捕獲場景信息并創(chuàng)建BVH,這同樣是API的一部分,有點像幾何處理。游戲引擎通過API將幾何圖形提交給GPU和驅(qū)動程序進(jìn)行處理。
我們提供的獨特性功能是相干性,例如光束處理與我們分塊渲染(Tile Based Rendering)類似,后者我們也將像素分組在一起然后在芯片上處理。所以,從概念上看,分塊渲染和具有相干性排序的BVH處理L4光線追蹤解決方案非常相似,但是在帶寬和處理效率上有很大的不同,游戲引擎的性能會更高,效果更好。
為移動平臺打造
當(dāng)然,光線追蹤也總是有區(qū)別的,但問題是光線仿造的效果成本更高以至于使用專用的硬件功率更大、帶寬更高,處理效率也降低。這點對于移動設(shè)備和PC端沒有什么不同。使用純粹的著色器圖形技術(shù)已經(jīng)不再是正確的選擇,而我們的L4方案其效率已超過了PC端,就像我們20多年前創(chuàng)建的分塊延遲渲染技術(shù)(TBDR)所帶來的效果一樣,如今它已經(jīng)成為渲染的行業(yè)標(biāo)準(zhǔn)(IMR也不再適用)。
通過增加相干性聚集處理的效率,我們可以減少計算反射和光線相互作用的時間。這也減少了接口調(diào)用的次數(shù),這意味著我們可以在低功耗的硬件上運行。
對于移動平臺,我們總是希望用更少成本做更多的事,因為移動設(shè)備的功耗和帶寬都是有限的。我們很高興使用人工智能和神經(jīng)網(wǎng)絡(luò)來幫助處理圖形技術(shù)。很幸運,我們?yōu)榇碎_發(fā)了專用的加速器,并且能夠與開發(fā)者合作利用這些單元實現(xiàn)最佳的效果,針對他們所用的硬件平臺改進(jìn)圖形和光線追蹤效果。
當(dāng)然,我們還會不斷創(chuàng)新。
與硬件的兼容性
我們始終專注于行業(yè)標(biāo)準(zhǔn),因此我們的硬件會將DirectX和Vulkan所需和期望的標(biāo)準(zhǔn)考慮在內(nèi),硬件開發(fā)者不需要為使用我們做什么,當(dāng)然他們也沒有為其他廠商做什么。而與其他廠商不同的是,我們以更低的功耗和帶寬成本來實現(xiàn),為開發(fā)者其他任務(wù)留下更多的著色器時間。
提升的空間
工藝技術(shù)的演化遇到了瓶頸,例如我們實現(xiàn)了更高密度以及3nm和5nm的晶體管,但是帶寬和功率的增長速率并不相同,我們必須拿出解決方案在最有效的處理邏輯上執(zhí)行工作負(fù)載,比如哪些放在CPU和GPU來處理,哪些交給AI引擎來處理。我們也會看到更多的加速器誕生,比如我們的光線追蹤引擎,可以提供更高的處理效率,管理更多異構(gòu)的處理資源。帶寬和數(shù)據(jù)流是很寶貴的,與相干性和分塊渲染一樣,我們一直在尋找將關(guān)鍵數(shù)據(jù)保留在芯片上避免使用外部功耗較高的DDR內(nèi)存或HBM內(nèi)存(功耗更高)。
我們一直希望用更低的功耗來實現(xiàn)更高的FPS,用更低的處理帶寬和更低的功率實現(xiàn)更高的質(zhì)量,這意味著我們所做的每個部分都要效率最大化。
原文標(biāo)題:為移動端打造,Imagination的硬件光線追蹤到底有何不同?
文章出處:【微信公眾號:Imagination Tech】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
責(zé)任編輯:haq
-
gpu
+關(guān)注
關(guān)注
28文章
4673瀏覽量
128592 -
人工智能
+關(guān)注
關(guān)注
1789文章
46652瀏覽量
237062 -
電池
+關(guān)注
關(guān)注
84文章
10404瀏覽量
128641 -
光線追蹤
+關(guān)注
關(guān)注
0文章
182瀏覽量
21457
原文標(biāo)題:為移動端打造,Imagination的硬件光線追蹤到底有何不同?
文章出處:【微信號:Imgtec,微信公眾號:Imagination Tech】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論