如今的游戲效果,已經(jīng)到了一定的高度,完美的光照控制,真實的場景呈現(xiàn),會讓游戲具有更多的可玩性。
時間天候變化的對應(yīng)
天空的模擬
對應(yīng)了24小時的時間變化和天氣變化,天空的表現(xiàn)變得非常重要。對于天空,一般是通過近似米氏散射(Mie?scattering)和瑞利散射(Rayleigh?scattering)的計算來進行值染的(圖A)。然后,因為和后述的時間變化也要關(guān)聯(lián),地球的自傳、公轉(zhuǎn),太陽的位置等也要加入。
為了模擬太陽光射入大氣散亂的狀況,要在天空附加顏色的同時,讓光自身進行衰減。為此,白天的太陽光也變得稍微有些黃色,“試行錯誤的最后,基本上忠實于現(xiàn)實世界的被完成了,為了強調(diào)傍晚的效果,稍微對紅色做了些調(diào)整,美術(shù)方面也可以進行微秒的調(diào)整”,負責(zé)光照的員工說道。
關(guān)于夜晚也是比實際更亮的來進行設(shè)定(圖B),這是除了忠實的光照會對游戲體驗產(chǎn)生障礙之外,考慮到與特效的兼顧調(diào)整也很難的緣故?!芭c其說在這里造假,不如認為是與在電影攝影中,在黑暗的地方點亮光源,是源于同一種想法的技術(shù)手法”。
關(guān)于天候的變化,一邊用陰天(圖C)和雨(圖D)一同模擬的結(jié)果,一邊調(diào)整云和太陽光的強度等參數(shù)來作出差別化。晴天時的夜晚可以看到星空,這里也被認真的再現(xiàn)了。
【在本世代機中,是把6等星(肉眼可以看到最暗的星)以上的,約5000個星星按照星圖的準確位置進行了描繪】
環(huán)境參數(shù)的控制
由于時間的變化,為了處理晝夜之間非常大范圍的光量變化,把1天分為14個時區(qū),保存每個時區(qū)的所有參數(shù),在通過線性補充的方式按玩家現(xiàn)在的時間值來導(dǎo)入。因為早上和傍晚的變化比較大,分割成了更高的頻率(圖A)。
關(guān)于時區(qū)和天氣的參數(shù)有200多個,這個包含環(huán)境設(shè)定在內(nèi)是用電子表格來管理的,包含Bloom和Motion?Blur等后處理的ON/OFF和標(biāo)簽(Tag)等最終約1400行(圖B)。
圖C是電子表格的列表。可以區(qū)分不同的天氣,分別對它們的數(shù)值進行設(shè)定。另外,室內(nèi)用indoor,森林里用forest等,可以根據(jù)標(biāo)簽的值的設(shè)置來進行管理和切換(圖D)。
光的控制
局部光照(Local?Light)
街燈一類的人工光源以及火焰等使用的light?Object(圖A),是把流明(lumen)作為光源的強度,色溫(temperature,單位開爾文Kelvin)作為光源的顏色等,這樣的數(shù)值來進行細節(jié)的控制(圖B)。
而且,對于同色溫指定很難制作的顏色,也可以用RGB顏色值直接的編輯器。為了降低舊世代機種上的負荷,使用Texture來對應(yīng)復(fù)雜的配光表現(xiàn),也有用簡化參數(shù)的方法(圖CD)。
為了更高品質(zhì)的圖形表現(xiàn)需要放置大量的光源,直接導(dǎo)致了畫面負荷的上升。把光源繪制了屏幕多少面積在FOX?ENGINE上進行確認(圖?EF),讓光照小組基于這個,對特定的使繪制負荷變高的光的影響范圍的重復(fù)次數(shù)和陰影,Specular的有無等進行調(diào)整,分配了適當(dāng)?shù)臅r間和勞力,來追求處理負荷與品質(zhì)的平衡。
使用Light?Probe制作間接光照表現(xiàn)
環(huán)境(ambient)部分的追加,是通過在地圖上配置了收集這個地點間接光的2次球諧波函數(shù)的Light?Probe,再現(xiàn)模擬的光反射(bounce)部分。
圖A是直接光與間接光合成的狀態(tài),圖B是只有直接光,圖C是只有間接光的顯示狀態(tài)。在建筑物和道路上配置自己特有的Probe(圖D)。開放世界的地圖上大部分是自動的進行配置,大一些的村莊等主要的地域是手動配置,Probe之間的重疊情況是通過預(yù)覽來調(diào)整負荷(圖E)—個地點上,晴天和陰天,以及指定時間的收錄,Bake要30分鐘左右。
“當(dāng)初?Bake—個街道要5個小時,進行改進后大約1小時的程度,上千個區(qū)域Block全部重新Bake的話,大概要用3天以上的時間”(負責(zé)員工)。另外,區(qū)域光的反射是作為其他成分進行記錄,例如,射擊導(dǎo)致外面的電燈被破壞的情況一類的變化表現(xiàn)。
支持豐富畫面制作的渲染技術(shù)
曝光控制的結(jié)構(gòu)
屋外、室內(nèi)等,不同光量的場所要用正確的亮度來渲染,實現(xiàn)了自動曝光的修正功能和控制結(jié)構(gòu)。控制只在光照成分中進行,白色物體是白色,黑的物體看到黑色那樣,謀求曝光的穩(wěn)定。但是,單純的自動控制曝光的話,每個場景都是同樣的亮度,特別是夜間的場景變成好像晴天白天那樣的亮度結(jié)果(圖A)。這里是光照組使用被實現(xiàn)的自動曝光的修正功能來設(shè)定修正值,表現(xiàn)出了夜間的寂靜的黑暗感(圖B)。
室內(nèi)也是圖B中調(diào)整出比圖A更自然的亮度。具體實現(xiàn)上,是把白天,室內(nèi),黑夜的特定亮度的強度(EV值),作為3個修正點(圖C)來控制環(huán)境參數(shù)值(圖D),再用自動曝光的修正結(jié)果進行渲染。
這個修正值,可以通過環(huán)境參數(shù)自由變更。不僅僅是畫面的外觀問題,也有索敵等會左右游戲體驗的要素,感覺是把系列集大成的本作才有的講究。
本時代機才有的后處理
大量的后處理(Post?Filter)也是支撐本作豐富圖形的重要要素。圖A是Bloom?OFF,圖?B是Bloom?On的畫面,Bloom把畫面內(nèi)的高亮度部分做膨脹,處理在對強度和模糊狀況做調(diào)整外,同時進行屏幕空間的Lens?Flare的處理。
這個Lens?Flare要和VFX演出的Lens?Flare—起,作為其他效果來使用,給予畫面高密度化。圖C是Lens?Flare模糊很小的狀態(tài),圖D是模糊很大的狀態(tài)(C是模擬的再現(xiàn)來確認顏色偏差)。圖E是Bloom部分的Buffer。另外,屏幕空間的局部反射(Screen?Space?Local?Reflection)方面(圖F)
除了反射強度,光線追蹤的距離外,通過Roughness限制的設(shè)定,一定粗糙度以上無效化來減低處理負荷。
為了比以前的景深(DOF)更高度的表現(xiàn)(圖G),通過用相機拍照的那種(相機光圈形狀的)Bokeh表現(xiàn),實現(xiàn)了照片真實的影像表現(xiàn)。這些后期處理也是由光照小組來進行控制。受到【合金裝備5原爆點】的Steam版本麟的影響,按照小島秀夫監(jiān)督的?“無論如何也要在PS4上實現(xiàn)”的意向,進行各種調(diào)試實現(xiàn)了。在美術(shù)師方面,準備了一邊在表演和繪制負荷間取得平衡,一邊進行取舍選擇的結(jié)構(gòu)。
以更高的品質(zhì)為目標(biāo)
演示光照(Demo?Lighting)
作為重要地點被插入的演示場景,在分鏡中增加了演出用的光源,進行像電影的表演那樣講究的制作加入。為此,開發(fā)了以幀為單位的進行光源和后處理特效等編輯的Demo?Tool(圖A)。
可以一邊閱覽演示場景,一邊管理和編輯全部關(guān)聯(lián)的參數(shù),為了游戲到演示的無縫的關(guān)聯(lián)而反復(fù)進行細心調(diào)整。因為制作豐富的畫面處理負荷也會變得過大,在最大限度的發(fā)揮性能的同時,也要從最優(yōu)先的影像演出的效果來考慮,在分鏡和幀的單位上,把繪制功能做成Fade?In/Out—類動畫,用ON/OFF操作。圖BC是對應(yīng)從相機的自動曝光中得到的EV值,自動的控制光源強度和顏色例子。
圖D是SSAO?(Screen?Space?Ambient?Occlusion)的處理只在特定的幀中有效的畫面。
PC版的超高(Extra?High)模式
需要時,也可以在舊世代機種上對這個繪制功能做不選擇有效的調(diào)整。本作不光是家用機版,也提供了PC版,PC版的【Extra?High】模式可以體驗游戲最高品質(zhì)的圖形。但是,影像表現(xiàn)上,舊世代機種版(圖A)
今世代機種版(圖B),PC版(圖C)的數(shù)據(jù)并沒有進行大幅度的變更,而是通過后處理的追加等來強化的。
具體的,首先要說的是受影響的光源個數(shù)增減上。PC版本中,遠處的光源也有效,使得陰影,Specular等圖形的密度感提升,替換了陰影貼圖的分辨率,追加更平滑的處理。SSAO方面,PC版本(圖E)也用比家用機版(圖D)更高的精度來繪制,因為也考慮到Normal?Map作出了更加立體感的表現(xiàn)。
還有,關(guān)于云的繪制,相比家用機版(圖F),?PC版(圖?G)追加了簡單的用Raymarch的方法的云的繪制層。通過這個方法,根據(jù)視察效果更有深度感的天空也可以表現(xiàn)了。
游戲世界
關(guān)于FOX?ENGINE和其生產(chǎn)的游戲,其實還有很多很多的內(nèi)容可以和大家講解。但是篇幅實在有限,剩下的內(nèi)容,希望下次有機會和大家分享。本文大多數(shù)技術(shù)的分享并不歸我一個人所有,是基于很多人的研究和測試得出來的。
游戲開發(fā)是一個很復(fù)雜的工程,在有好的引擎配合下,可以為具體的制作人,提供更多游戲的可能性。如今的游戲效果,已經(jīng)到了一定的高度,完美的光照控制,真實的場景呈現(xiàn),會讓游戲具有更多的可玩性。本文僅僅是為了分享當(dāng)今最尖端的游戲開發(fā)技術(shù)所撰寫的文章。
關(guān)于剩下的游戲中的機械、武器、人物表現(xiàn)、皮膚、頭發(fā)、運動等等等,希望將來有機會在與大家繼續(xù)介紹。
本文作者:Garfield,現(xiàn)任職于點融技術(shù)部Social團隊,游戲引擎 tyo Engine 及 tyo Engine Revolution作者,對尖端渲染技術(shù)擁有濃厚興趣,曾就職于多家游戲大廠參與游戲引擎研發(fā)相關(guān)工作。