顯然,游戲并不是魔術(shù),但是如果你不知道游戲在表象背后的運行原理,可能它們看起來就像是變魔術(shù)。最近有一張非?;鸬膭訄D,展示了《地平線:黎明時分》的游戲引擎是如何渲染場景的,(小編注:游戲使用的Decima引擎也將是小島秀夫的《死亡擱淺》將要使用的引擎),從這張動圖中,我們看出游戲在運行中其實只渲染玩家視野所見的場景。
對于很多人而言,這樣的動態(tài)場景在初次看到時可能感到非常震撼。奇怪的是,相對于普通玩家對這種技術(shù)的興趣,很多開發(fā)者似乎已對這種技術(shù)見怪不怪了。所以我們在這里為大家補充一些這方面非常有意思的“黑科技”知識,看這些技術(shù)是如何讓游戲中的世界看起來非常絕妙的。
就讓我們從開始的那張《地平線:黎明時分》魔術(shù)般的渲染圖開始吧。
Culling(剔除)
Culling(剔除)也就是削減,在游戲中其作用就是通過只渲染玩家看到的場景來減少游戲引擎的工作量。目前還沒有一臺PC或是主機可以一次性渲染《地平線:黎明時分》中的所有場景,所以這項技術(shù)就通過不再渲染游戲中玩家視角之外的大部分場景,來減少游戲機的工作量。Culling主要有兩種類型:Frustum Culling(椎體剔除),即渲染視角中的所有場景;Occlusion Culling(遮擋剔除),則只渲染鏡頭內(nèi)視角中可以直接看到的場景(被視角內(nèi)物體遮擋的物體不渲染,更多的減少了機器的工作量)
下面的動圖就展示了兩種渲染的不同原理:
Level of Detail(細節(jié)層次)
另外一項游戲可以節(jié)省寶貴運行資源的原理是,只展示近處場景物體的細節(jié)。這種技術(shù)會在玩家接近物體過程中,逐步提升相應(yīng)物體的細節(jié)表現(xiàn)層次??纯聪旅孢@些細節(jié)層次不同的3D渲染的兔子吧:
真不愧是狗界的kk園區(qū)。
十年磨一劍
你要是《更衣人偶墜入愛河》的粉絲,那接下來可就要做好破防的準備了……