機器之心報道
作者:澤南
我們買下部手機的時候,「能不能開光追」可能是一個重要的選擇标準。
說到當今電子遊戲裡最知名的圖形渲染技術,可能非光線追蹤莫屬了。
不論 Minecraft、魔獸世界還是戰地,越來越多知名遊戲都在加入光追效果。不過對于玩家們來說,畫質和流暢度之間需要作出取舍——打開光追很多時候都意味着幀率減半,即使是在有專門 RTX 核心的英偉達 GPU 上也是如此。

「把光追關了」是玩家們感覺畫面卡頓後的前排解決方案。距離實用化已過去 3 年,光追還隻是高端玩家炫耀硬體的資本。
然而在 10 月 27 日的 OPPO 開發者大會上,OPPO 進行了一番手機光追的示範,一直以來硬體需求很高的畫面特效,居然已經能在手機上實作了:
這是我們第一次在手機上看到如此精細的畫面效果。光線追蹤技術還沒有在 PC 和主機上廣泛鋪開,就又把目标轉向了數以億計的智能手機。
OPPO 軟體工程事業部總裁吳恒剛表示:「預計在明年上半年,我們将可以提供光線追蹤的能力接入,面向硬體支援的手機裝置。」
看到這樣的場面,我們不禁要問:這真是一件能實作的事嗎?光線追蹤值不值得?要想回答這些問題,還得從技術本身說起。
光線追蹤:前所未有的特效
光線追蹤首次以計算形式的應用可以追溯到 1968 年,又在 1980 年由 Turner Whitted 開創性的研究而被學界、業界所熟知。著名計算機科學家,英偉達前首席科學家 David Krik 說過:「以前有句玩笑話——光線追蹤是未來的技術,而且這個未來永遠不會到來。」
2019 年 5 月,頂級計算圖形學機構 ACM SIGGRAPH 頒發了一項最佳博士論文獎。獲獎者闫令琪博士畢業于加州大學伯克利分校,目前已是加州大學聖巴巴拉分校(UCSB)的一名助理教授。他的博士論文頒獎詞是這麼說的:「他的論文每章都可以自成一篇博士論文。」
闫令琪博士論文的一個章節有關全局光照,其研究最終引出了如今商用化的「光線追蹤技術」Ray Tracing,将電子遊戲的畫質水準提升了一個台階。
未來已經成為了現實,随着英偉達提出的 Turing 顯示卡,單塊 GPU 已經可以實作實時的畫面光追渲染。
光線追蹤意味着設定一個光源,随後模拟其投射效果:在自然環境中會出現反射、折射、陰影等等。人們想在虛拟世界複現真實環境,就需要找到方法實作人眼對于這些目标的直覺認知。
在目前被人們廣泛應用的方法中,光線追蹤大概遵循這樣的流程工作:在虛拟空間中發射一條光線,周遊整個場景,尋找可能被光線追蹤的物體,根據不同結果進行不同處理,随後又需要對其進行着色。在此過程中我們還需要執行遞歸,即回到最初的步驟,發射更多光線,獲得更多反射、陰影結果。
在 DirectX 和 Vulkan 的光線追蹤中存在五種新着色器:光線生成、求交、無交點、傳統和任意交點着色器,以分别模拟反射、折射、透明材質等情況。
簡而言之,光追就是通過複雜的流程,消耗晶片的大量并行化算力,試圖生成出與真實世界相近的光照效果。而随着場景的不斷增大,畫面複雜程度的升高,光線追蹤的效果會愈發明顯。
目前有關光線追蹤技術的應用,大多數是 3A 遊戲大作。在最新、最熱門的遊戲裡你可以找到這個可選項,想要打開還得更新一下 GPU 驅動。
仙劍奇俠傳 7 的光線追蹤效果。
雖然很吃算力,但在衆多 3A 大作展現的畫面中我們可以發現,打開光追就像打開了新世界的大門。
如何把光追塞進手機
和 AI 技術發展的軌迹類似,光線追蹤也經曆了理論的提出和完善,又在多年後後因為晶片算力的提升而被逐漸實用化。然而近幾年來,傳統矽晶片的性能發展逐漸接近實體極限,我們再也難以通過簡單使用更小半導體的方式來承載更高的算力了。
在台式電腦上難以實作的光線追蹤,又是如何被 OPPO 應用在手機上的呢?
首先,它是真實的效果,除了 OPPO 在開發者大會的現場展示的兩段 demo 視訊,在開發者大會的展區中也有實機示範,光追是在目前市面上銷售的量産手機上實作的。
OPPO 展示了光在光滑材質表面的「真實」反射效果,以及更為細膩的陰影:
還有效果最明顯的鏡面反射、透明體折射等效果。PC 遊戲上的光線追蹤,在這裡幾乎都可以呈現出來,幀數也達到了足夠高(30 幀左右):
OPPO 介紹說,OPPO 光線追蹤是基于 Vulkan API,面向下一代移動光追硬體的技術,目前已在移動平台上實作了原型開發。該技術能夠在硬體算力受限的情況下清晰還原現實世界中的很多細節,提升畫質體驗。除了遊戲,光線追蹤技術還可以在 3D 動态桌面、影像濾鏡、AR 等領域獲得應用。
目前手機的圖形渲染大多使用光栅化的方式,在需要表現光照的位置使用 2D 投影,雖然保證了低功耗需求,但很多時候表現效果較為有限。
而全局的光線追蹤顯然是手機算力難以承載的任務,是以 OPPO 選擇了「混合渲染」的方式。對于原有的渲染方式進行較小改動,并不追求對每個像素進行光追,而是着重在如物體的陰影,武器的光澤等效果明顯的位置。這種方式既可以提升圖像效果,也保持了輕量化。
在一些場景中,我們可以使用光栅化生成初步圖像,然後利用光線追蹤技術打造更加逼真、動人的效果。
在實作道路上,和以往英偉達、AMD 等綁定硬體的光線追蹤技術不同,基于 Vulkan 的開源光追技術在業界标準上相容了更多裝置,同時也友善開發者接入。
OPPO 的核心優勢是具有統一的場景周遊和光線求交運算,不僅支援安卓手機端,還支援 PC 等多種平台,短期的目标至少是聯發科和高通平台全支援。
除了開發者大會上提出的光線追蹤和異構計算,幻影平台還将包含更多功能。
「選擇在這個時間點做,一個很重要的原因就是因為業界終于有了标準,這就意味着不同的平台廠商會以可互相相容的方式去推動光追的實作,」OPPO 進階算法産品經理田一真說道。
不到一年時間,從研發到落地
幻影平台的光線追蹤能力來自 OPPO 美國研究院西雅圖中心,在不到一年的研究過程中,OPPO 與聯發科、Unity、騰訊天美工作室等展開了合作。目前 OPPO 已經與天美在使命召喚手遊上完成了兩個場景的技術示範。
在 OPPO 的技術展示之前,聯發科曾于今年初提出在天玑 1200 上可以實作光線追蹤的效果。而在 ODC 上,展示光追 Demo 的機型是 Reno6 Pro。在 2021 年内,就有手機廠商實作了當初人們的期望。
「一些遊戲公司、應用開發者甚至聯發科這樣的晶片提供商都在做光追,但他們是從各自的角度去完成的,」田一真說道。「對于 OPPO 來說,我們可以在共同開發的過程中從遊戲廠商那裡獲得具體需求,同時向硬體平台協調算力調用方式,最适合完成這件事情的落地。」
目前在遊戲制作過程中,光追管線與遊戲管線差别巨大,這減少了開發者們應用新技術的意願。OPPO 提出的幻影平台希望通過小步的方式去改進傳統管線的圖形渲染能力,同時大幅降低使用難度,開發者甚至不需要知道光追内部的實作細節。
基于 Vulkan 這一業界唯一光線追蹤标準,OPPO 将向開發者們提供開源接口,并向 Unity 等流行遊戲引擎提供插件,這一适用于未來技術發展的演進,并支援多種硬體。
未來對于開發者來說,光追效果可能是在遊戲設計過程中調用一個接口,隻需在遊戲引擎中一鍵就可以在 OPPO 手機上打開光追,直接優化已有場景。
而對于使用者來說,他們也不需要更新特定的驅動,或是下載下傳特殊的遊戲用戶端就可以獲得更好的光影效果。
OPPO 成為了首家把光線追蹤技術落地到移動終端上的手機廠商,不過它目前還沒有推出專用遊戲手機的計劃:光線追蹤、異構計算等技術是希望能夠提供給所有使用者的。
人人都可用,效率足夠高,是 OPPO 光追技術的目标。預計到明年上半年,OPPO 就會通過開放應用接入的方式将這種技術提供給開發者們。最早在 2023 年,就會出現手機端的光追應用。
最後,如果我是一名原神玩家,什麼時候能在遊戲裡打開光追選項呢?OPPO 表示:如果米哈遊期待加入這樣的特效,他們可以向 OPPO 提出自己的優化需求,我們期待盡快與遊戲廠商和應用開發者展開合作。
這一天應該離我們并不遙遠。