【翻譯】西川善司的「實驗做出的游戲圖形」「GUILTY GEAR Xrd -SIGN-」中實現的「純卡通動畫的實時3D圖形」的秘密,后篇


http://www.4gamer.net/games/216/G021678/20140714079/

 
  連載第2回的本回,  Arc System Works開發的格斗游戲 「GUILTY GEAR Xrd -SIGN-」解說的后篇送到了。前篇的最后預告的那樣,本回,是只能看到Anime的3D圖形的2D格斗游戲產生所采用的細小方法為中心的介紹。
 

變形的幾何體,替換幾何體

GUILTY GEAR Xrd -SIGN-的圖形,看上去是Cel Anime風格,並不是什么都采用Toon Shader。這以外的部分布置的獨特的方法也完成了很大的作用。
戰斗場景。Ky和Sol正在伊利里亞的城下町對峙。前面的是旅店,左側內部可以看到街道。
 
     首先,不經意的看下 GUILTY GEAR Xrd -SIGN-的戰斗場景。各種各樣的建築物和背景對象排列着,這些不是[布景的一張繪畫],而是通過3D模型來表現的,  從用戶視點也很容易辨別。
    讓對打的兩個角色向左右移動的時候,近景會向左右很大的移動,遠景會慢慢的向左右移動。是2D格斗游戲圖形里常見的背景表現,實際上這里,隱藏着意想不到的秘密。
 
    希望看下下面的截圖
 
伊利里亞城下 町的背景里的,建築物的Mesh的單體表示,挪動攝像機。就看到了非常有沖擊性的圖形。
    那樣,場景中的近景,建築物等背景3D模型有相對強烈的遠近透視,是因為 有意圖 把模型的向深處扭曲。
    另一方面,一定距離以外的遠景的3D模型群,雖然沒有附加透視,但通過實際尺寸Scale,也被大幅的小型化了。
 
    這樣配置模型是有理由的。
    沒有附加透視的正確尺寸縮放的模型,變得無法表現出場景的深度感。
    遠景對象縮小也是相同的理由,特意的縮小后放置在並不是那么遠的距離上,戰斗場景打斗時,與角色向左右移動一起,讓遠景物體一樣向左右移動。
 
     真實的Scale的情況,如果要把建築物就那么小的來放置位置,必須配置在相當遠的地方。想到在現實世界也有經驗的,遠方的景色自己左右移動數米也幾乎沒有移動。變成這樣的2D格斗游戲的背景也變得沒有變化,為了更好的運動,把小的3D模型配置在場景近處。
 
GUILTY GEAR Xrd -SIGN-的遠處的小的背景物很好移動的例子(※沒有聲音)
讀了以上的說明的話,這次,對戰斗中看不到的(屏幕)內側的游戲世界是怎么樣的也感興趣的人是不是也有了呢。這一點, 石渡氏在下面進行說明。
 
石渡太輔氏(General Director)
石渡太輔氏:
     K.O的場景時,攝相機會旋轉,通常 攝像機也會朝向 內側的方向。因為這種情況,內側的,Camera看到的范圍的背景對象也要好好的設定。
   還有,劇情場景的情況,使用了一部分2D的渲染布景來做背景。隨着照攝像機工作,渲染布景的2D背景動態的移動,2D背景自身用電視Anime的理論來處理的地方也是有的。
 
對話場景(上),從別的角度看的截圖     
 
伊利里亞城內的拖拽攝像機  。關於戰斗場景的視點內側的模型也可以明白。   
 
   背景關聯有1個補充,背景的集群角色(路人角色),接近戰斗舞台的是做成3D模型,遠景的東西是"紙片人",  變成動畫的billboard。
 
   那么,在戰斗中登場的主要角色是約4萬面多邊形的模型,像前篇介紹的那樣,和一般的基於3D圖形的游戲角色有稍微不同的動作方式。
 
 Faust的開襟 (?)追加部件的實現。
 
    關於一般的3D圖形,角色是用模型內部配置的骨骼來運動的,這里追隨成為外皮的3D模型的結構來獲取姿勢或變形,並實現動畫。
      GUILTY GEAR Xrd -SIGN-是情況是,基本的動作上,雖然也是根據這種方法的,但例如像毛發,刀劍的形狀變形那樣的攻擊動作就無法實現了,那種特殊情況,要把3D模型的一部分部件替換來處理。
 
頭發變形的Milia的情況,准備了追加部件,來進行替換的樣子
 
    這個理由 坂村氏在接下來做了敘述。
坂村英彥氏(Art Director 兼 Chief Animator)
坂村英彥氏:
    每個角色的運動,要像Cel Anime的動態表現那樣,進行獨特的控制。和一般的3D游戲圖形不同, GUILTY GEAR Xrd -SIGN-的角色們,臉上的眼睛和鼻子,以及嘴的"大移動",有現實的人無法做到的那種部位的伸縮或肥大化,反過來縮小忽略的事情也是有的。
 
     玩家可以看到游戲畫面上的漂亮的事。對於GUILTY GEAR Xrd -SIGN-的圖形來說就是正義的。
 
關於一擊必殺的劇情場景BEDMAN的使用例子。一開始,制作的是從哪個方向看都說得過去的外表一樣的表情(上),初期印象的設定圖(中央) 不同表現的地方很多。因此,驅動Rig,調整目鼻口的位置和角度(下)。因為追求[從攝像機里看的印象是要一樣的]的事情,實現了角色有效果的演出。
 
    GUILTY GEAR Xrd -SIGN-上登場的角色,和一般3D游戲角色加入了同樣的骨骼,這些骨骼的運動方法和控制方法,給予了高度的自由度。
    例如眼球,可以在臉內非常自由的移動,嘴是可以像臉部體積變化那樣變形和開閉。手足也可以自由的伸縮。這就是為了實現我們常見的[Anime的積極的表情表現]而組裝進去的。
    滑稽的[圓圓的眼球],表示憤怒的標志等漫畫的記號表現,果然是這個系統無法對應的。為此,這種漫畫表現必須要進行部位部件的替換,以及部分部件的附加,還有就是用Texture表現的方法來對應。
石渡氏:
        像突出手足的一部分的姿勢,只是調整視角(Angle of view),並沒有動態的來表現。要很大的顯示突出的手,為了強調遠近感要擴大視角,深度方向的臉就變得很小了。
    這種手被很大的顯示的情況,拉伸3D模型方面的手腕,讓手靠近攝像機。結果, GUILTY GEAR Xrd -SIGN-的攝像機視角沒有變化,可以說是在角色模型上附加了視角 (笑)。
 
最終截圖(上),為了實現這種而進行 “體格変更”的揭秘截圖(下)
 
坂村氏:
    盡管如此,這種 「角色模型的部分進行擴大縮小或骨骼伸縮」的表現,標准狀態的UE3並不能實現。
 
家弓拓郎氏(主程)
家弓拓郎氏:
    對於格斗游戲,根據動作進行部位或姿勢的強調的事情是家常便飯的。揮出拳頭的動作是要把拳頭變得更大一些來表現,踢腿也是把腳伸長。為了進行這樣的表現,必須要讓骨頭(bone)對應的 x軸,y軸,z軸分別的擴大縮小處理系統,UE3並沒有對應的。
 
山中丈嗣氏:
    UE3本來就是為了制作照片真實系游戲而制作的游戲引擎。[把骨頭的三個軸分別自由的擴大縮小]這種非現實的表現可能是沒有必要的。
 
本村・C・純也氏:
    標准狀態的UE3,是三個軸同時應用1個參數來對應骨頭放大縮小的表現的。這么用的話,可以表現出變形的像二頭身一樣的角色。
通常頭身和而頭身角色(參考)。還有,這里展示的二頭身角色,並不是本文談到的[ 3個軸 同時擴大縮小來實現的UE3的基本機能],而是通過Arc System Works對UE3進行[3個軸分別擴大縮小的機能擴張]來實現的。
 
部位擴大的實際使用例子,上邊是產品版使用的最終截圖,下面是沒有使用部位擴大的狀態
 
     「為了進行GUILTY GEAR Xrd -SIGN-的有效果的動畫制作的,三個軸分別擴大縮小骨頭的結構是絕對必須的」是負責動畫的 坂村氏所主張的。主程的 家弓氏中途放棄型的改造了UE3,把這個結構實現了。 [正是因為UE3提供了源代碼才能做到] 坂村氏回顧到
 
    當初,雖然 家弓氏是 [制作進去的骨頭太多,骨頭自身移動等是無法對應處理的]這樣來考慮 坂村氏的提案的, 坂村氏進行了反駁。
 
坂村氏:
    確實,怪物的部位肥大化表現或伸縮表現, 一部分 采用未改造版UE3的游戲里也實現出來了。因為是[一部分的角色]所以也是運行的。
 
    但是 GUILTY GEAR Xrd -SIGN-的情況是,登場角色全部都必須是這種表現,首先手足全部加入這種配置的情況進行試運算,可以判明骨頭數膨脹了4倍。
 
家弓氏:
     我知道這個試預算后就差不多放棄了 (笑)。4倍的話,果然性能上是吃不消的。
    結果, 家弓氏對UE3的改造,對應了骨頭的三軸分別擴大縮小處理。而且,移植到實際的制作階段的時候,使用這個結構讓手足等簡便的擴大縮小,伸縮自如的調整的定制接口也制作了。這樣一來,在肢體操作上,使用這個定制接口,就可以進行手足的擴大縮小,伸縮的調整的動作制作了。
 
動作的設定工作中,預覽畫面里進行手足的擴大縮小的例子。在 「SoftImage」上,把小型的窗口內的數字上下移動來變更任意軸的Scale,讓Rig進行Setup。
 
家弓氏:
   辛苦的搭載了[骨頭的三軸分別擴大縮小處理系統],在后面登場的UE4里是作為標准機能來實現的。嘛,除了我們以外也傳達了[希望安裝]的要求的很多吧 (笑)。

做成3D模型的特效群

 發出的必殺技等附帶的特效類的東西,除了一部分例外的大多的都是3D模型。
    具體的,煙,火焰,各種閃光,防御特效等等。
 
石渡氏:
    Finish(必殺技)的時候等,有一部分攝像機的3D運動的演出,特效用billboard的話嘩啦嘩啦的感覺樣子很不好,就下決心把特效群也用3D模型來做了 (笑)。
 
     這個是[說起來容易做起來難],實際問題,還是花相當多的力氣活來實現的。
    例如,下面展示的煙的特效,看起來有一點像流體動畫,實際上,是美術師通過手動1幀1幀的建模做出來的。飛舞着膨脹,破裂的爆煙效果,為了能像看到的那樣,也是美術師1幀1幀做出來的。
 
煙的特效(上),模型是3D數據的緣故,移動攝像機,變得好看。
跳躍時產生的煙的Wire Frame 顯示
Zato的影子融化的特效模型。附加動作前的素體。
 
本村氏:
    當初,用骨頭來牽引多個球體模型運動的實驗也做過的,是無法令人滿意的東西 ……。結局是變成了力氣活來實現 (笑)。
    操縱影子的 Zato,使用技能可以液態和溶解到鏡子里活動,中途還可以變形為 Zato的角色模型,中途要另外准備[影子溶解]特效模型來進行替換。
這里是附加了動作完成版的影子溶解模型(上),下面是,3D模型的證明,嘗試着改變了角度。
 
    順便說一下,目前介紹的特效群的里面,煙等純然的特效類沒有進行光照(lighting),陰影等是直接烘培到Texture來做成的。也沒有使用出現輪廓線的處理。火焰或閃光等發光系的特效,是只能看到光,並不實際的照亮周圍,這個是2D格斗的情況,根據條件特效外觀變化的話,擔心游戲感覺會出現故障。
    另一方面, Zato的影溶等,對於附加在角色上的部件類型的特效,要進行光照。3D特效的采用,今后也要進行慎重討論。

作出Cel Anime動作  Limited Animation

    現在,Toon Shader的這個技術名在游戲者之間相當的一般化了。可是,第一次看到 GUILTY GEAR Xrd -SIGN-的人,沒有看出本作的圖形是基於3D的情況並不少。其中的1個理由就是, GUILTY GEAR Xrd -SIGN-的圖形好像[不是光滑和流暢的運動]的 。
 
    DreamCast的[JET SET RADIO ](SEGA 2000年)是這樣,前篇舉例的 「XIII」 (Ubisoft Entertainment,2003年)也是這樣。過去基於Toon Shader的游戲圖形是大量存在的,因為是3D圖形,每秒30幀或60幀流暢的運動來顯示的。這個理由也是理所當然的,終究基於的是實時的3D圖形,因此這樣只有Anime風格的Lighitng和Shading,角色的動作的動畫圖是每幀生成的完全也是當然的了。
 
    但是Arc System Works,得出了[這種流暢和GUILTY GEAR的風格是不符合]的判斷。
    知道的人也可以思考下,電視Anime等基於Cel的Anime,是以每秒8幀或12幀的程度成立的。因此,觀看電視Anime時,遇到 作畫 出來的角色和基於CG的機械在同一個場景時,每秒8幀運動的角色和每秒60幀運動的機械的運動流暢度會感覺到差異,察覺到這種違和感的人也是有的吧。
    有時看電視Anime的Opening Music和Ending,全CG化的角色舞蹈的類型,也和Anime的正篇不一樣,是光滑的運動的,可能會感覺到微妙的違和感。也許,越是看習慣基於Cel的Anime的人,越可能對Anime風格的圖像流暢運動懷有違和感。
   
    關於這一點, 坂村氏是在下面做了描述。
 
 
坂村氏:
    結果是,我們一邊采用60幀動畫的3D圖形系統,一邊強行的采用作畫Anime的幀布局。 GUILTY GEAR Xrd -SIGN-的劇情場景(事件場景),要比Cel Anime的每秒8~12幀多一次,以每秒15幀為基本。
    對於戰斗場景因為動作是和技能的性能直接聯系的,[1個姿勢用多少幀來表示],與規格進行配合,在腳本上來對幀做分別的指定。每個姿勢的表示幀時間不是固定的,每個技能是 「2F, 3F, 3F, 1F, 1F, 2F, 2F, 3F, 4F」 (※筆者注:1F≒16.67ms)的感覺。
 
    在Anime業界,把像迪士尼那樣每秒24幀作畫的動畫稱作[Full Animation],同樣是連續幀顯示的,每秒8~12幀程度運動的通常稱作[Limited Animation],強硬的粗糙幀分布的 GUILTY GEAR Xrd -SIGN-的動畫,確實是L imited Animation System
    Limited Animation,和普通的3D圖形的動畫在制作風格有一些差異。
    一般的3D游戲圖形的角色動畫,是有對角色模型內部配置的骨頭的[軌道]進行修正的印象。軌道的制作是使用高次曲線函數(F Curve),或者是基於動作捕捉取得的數據。
    與之對應的, GUILTY GEAR Xrd -SIGN-的 Limited Animation是,讓角色一點點的運動,1幀1幀的姿勢修正的做成。像粘土動畫(clay animation )一樣的流程。
 
坂村氏:
   最開始是使用F Curve每秒60幀的Full Frame的來運動角色,也試驗了從這60幀的動畫中抽去(幀)的制作手法,但是那樣的話,只能看到[丟幀的3D圖形] (笑)。
 
Full Animation和Limited Animation的差異
動畫~
 
相同的動作,前半是5次Full Animation,后半是5回limited Animation處理的例子
 
    實際制作相關,首先是故事板( 絵コンテ )的制作
    這個故事板是,例如必殺技是[全體60真構成的][30幀時出拳,這個時候開始產生碰撞判定]等等,作為格斗游戲的配置也是這樣設定的。而且,這個故事板會被交給動畫師,[每幀的角色模型的姿勢]就被決定了。
 
May的必殺技相關的故事板。20張記錄了54幀的信息
 
   Arc System Works的美術師,因為都是2D格斗游戲相關的動作制作的專家,那樣的角色姿勢也是擅長的吧。[沒有依賴類似F Curve等算數的動作生成]。
 
    20個Frame的幻燈片演示
 
    用2秒來顯示  [基於上面的故事板制作的20幀]的幻燈片例子
    即便是Limited Animation,游戲的配置也是每秒60幀來顯示,這是為什么呢,[影像配置是每秒60幀]的意義,是動畫的幀的更新率,成為前面所說的[制作顯示的幀的間隔]。
    例如,有個姿勢是2F時間的設計的情況,對於每秒60幀(1幀約16.67ms)的顯示系統,一樣的姿勢是33.33ms (=16.67ms×2F)的間隔來顯示。
 
    另外一方面,角色跳躍時產生的放射性軌跡的活動和運動的飛行道具等等的運動都是60fps來更新的。還有,考慮到最新的還沒有描述的,玩家的指令輸入的時機也是以1/60秒的間隔來接受的。
 
石渡氏:
    想要劇情場景變的好看,每幀調整姿勢時,要把角色模型的各個部分的位置,以及這個角色專用光源的位置等等,1幀1幀的調整。攝像機圍繞角色的動畫的情況,每幀都要調整鼻子的位置 (笑)。
     GUILTY GEAR Xrd -SIGN-的獨特的圖形表現,不光是先進技術,只有有這種熟練的Anime的繪畫能力和品位的積累才能實現。
May的一擊必殺確認的Limited Animation(※沒有聲音)
 

讓游戲系統更像2D格斗的技巧(1) ~碰撞判定的設定和3D的美觀的吸收

山中丈嗣氏(Director)
    一邊采用3D圖形,一邊要讓為這個漂亮的畫面2D化而采用的各種努力產生結果,讓截圖可以在外行看來肯定的判斷是[2D圖形]的等級而努力着。
   但是,開發組還沒有滿足,為了[游戲感覺上更貼近2D格斗游戲]而進行改良。關於這個的概要, 山中氏在接下來回顧。
山中氏:
     「作為2D格斗游戲的碰撞判定數據」,和我們動手開發的歷代的2D格斗游戲一樣,在2D的矩形領域來進行設定的。但是 GUILTY GEAR Xrd -SIGN-基於3D的圖形,因為游戲性是2D格斗游戲的,並沒有采用和一般的3D游戲那樣,用球體和立方體,膠囊形狀那樣,立體的碰撞判定的結構。
Arc System Works內部稱為 「碰撞設定工具」的工具。碰撞上,和以前的2D格斗游戲一樣,使用矩形的狀況。
    碰撞判定區域,具體的被攻擊 區域 (受到攻擊時會受傷害的 區域 )和攻擊 區域 (接觸到敵人就會給予傷害的區域)的設定,前篇稍微接觸的一樣,作為熟悉的公司內工具來使用。關於 GUILTY GEAR Xrd -SIGN-,通過Limited Animation System作出的角色動作,1幀1幀的被看作2D圖形,對應這個幀,用公司內部工具,作為2D進行碰撞判定設定
角色的外表沒有做什么准備的例子(上)。畫面左端和中央的Sol的顯示方式有變化。下面是這個碰撞判定領域的顯示,有着明顯的偏移。
 
    但是,這里有1個課題。
    3D圖形是,從視點所見的視野用四邊型的畫面切下來顯示結果。但是,原本的來說,我們看到的視野,盡管是無意識的,但成為了從球面內壁展開的東西。
    這里的問題是,[球面內壁形狀的視野]透視到四邊形的顯示方式。賽車游戲是,從自車后面的視野內飛出的車,到了自車位置側面附近時,看起來會有奇怪的拖延。這個是,作為地圖采用的是麥卡托投影法,會有在畫面外圍附近被拉長一樣的弊病出現。
    實際上,即使是 GUILTY GEAR Xrd -SIGN-,什么方法都不用的來繪制角色的話,可以確認畫面內左右端的角色會顯示的稍胖,中央的會看起來稍瘦的傾向。就這么放着不管的話,前面所說的[作為2D數據設定的碰撞判定區域],會和角色在畫面的位置產生偏移。
 
    為了消除這個偏移,要對應角色在畫面內的位置,對碰撞判定區域做適當的調整,或者是抑制因為角色在畫面內的位置變得"胖或瘦",在修正碰撞判斷區域和一直保持一致之間做選擇也是有必要的。
 
     GUILTY GEAR Xrd -SIGN-的開發組,從這兩者中選擇了,后者的方法。2D格斗游戲的情況,因為對打的角色在畫面的左右或中央位置外觀有很大變化是很難受,是理所當然的選擇。
    順便說一下,基於3D圖形的2D格斗游戲的前輩的Street Fighter IV也是,和 GUILTY GEAR Xrd -SIGN-選擇了同樣的方法。
    譯注:這個在OpengGPU也翻譯過的,鏈接:
 
    那么,實際的"胖瘦"調整是,當3D模型在2D畫面繪制的時候進行[3D->2D投影 ]的方法竅門。
     3D→2D的投影是,近處的看起來大,遠處的看起來小的[透視投影],和它不同的有[平行投影](正交投影), GUILTY GEAR Xrd -SIGN采用的事,30%左右透視投影,70%左右平行投影的強度組合的[混合(  hybrid )投影]。
    使用這個,角色在靠近左右端時就變得胖,在中央附近就變瘦的的情況得到了抑制,在畫面的哪個位置都是大體上一致的大小。
石渡氏:
    嚴格的話,同樣的混合投影也要在縱方向上使用,(雖然沒有使用)在橫方向是致命的錯誤,但試玩者們也沒發覺到違和感,就把導入放棄了。
 
透視投影100%的畫面(上)和它的碰撞判定區域 
 
平行投影100%の畫面(上) 和它的碰撞判定區域 
 
透視投影30%,平行投影70%組合的最終版(上)和它 碰撞判定區域
 
石渡氏:
    還有1個必須要導入的 ,二個角色重疊的狀況的處理系統。
    關於像素畫(=Sprite)是,上面繪制的角色,會把下面繪制的角色覆蓋的感覺來顯示。在3D圖像上, 角色是立體的大小,兩個人距離接近,一個角色的突出的手腕就會插入到另一個角色里。回避這種情況的策略的討論是有必要的。
 
    最終的是,繪制攻擊方的角色時,會在3D空間上把深度(Z)值向視點方向做越1米的Offset,這樣就不會有重疊發生了。總之,攻擊方的角色,會無視被攻擊方的角色的3D的前后關系,用深度(Z) Test一直合格的進行繪制。
深度調整前的角色繪制(上)和它的ZBuffer(下)。兩個的中間部分重疊了。
深度調整后的角色繪制(上)和它的ZBuffer(下)
 
本村氏:
    對打的兩個角色,在3D坐標系處理時在同一個Z軸上相對的。在繪制的時候能夠介入使用一些方法。
    使用雙臂抓投對手的技能的時候,被投擲的一方會插入到投擲放的手腕中,要把這個Offset去掉進行調整。一部分,火焰的特效 要遮掩來做欺騙的地方也是有的。
 
Sol和Ky對峙的狀態(上)攝像機移動后所看到的是下面的截圖。看出角色一起在同一個軸上
 
GUILTY GEAR Xrd -SIGN-的讓攝像機旋轉的戰斗場景
    通過這些處理系統的實現,大多數不自然的狀況都沒有了,像巨人角色的[Potemkin],深度方向上很大,會有和其他角色緊貼在一起的情況,確認陷進角色里的情況也有。只是,做了[不妨礙游戲]的判斷,就這樣照原樣保留了。

讓游戲系統更像2D格斗的技巧(2) ~Gauge的繪制和角色反轉時的處理

   
    重視2D格斗游戲玩起來更容易的畫面的制作,要進行體力槽等各種Gauge(槽)的繪制。Gauge類是,把要渲染的Texture貼在平面 多邊形上的東西,這個多邊形,是在戰斗到角色的后側的Z位置進行配置的。這是因為,角色高跳和 Gauge重合的情況時, Gauge會在角色的后面進行繪制。
    但是,空中的打上攻擊動作開始時,攝像機角度變化的演出時, Gauge是例外的繪制在前面。
本村・C・純也氏(Lead Modeler 兼Technical Artist)
 
本村氏:
    像視點環繞那樣,攝像機角度大膽的變化的演出的時候, Gauge會陷入到背景那樣的干涉被預見到,把 Gauge在角色后面的特殊處理無效化, Gauge類在角色的前面了。
    通過[進入攝像機視角演出的時候,玩法自身暫時的中斷, Gauge配置在前面,玩家也不會有反應 ]來判斷的。
 
通常的戰斗場景和 Gauge類在角色的后面(上),攝像機角度變化時是在前面(下)顯示
 
    現實世界里,二個格斗家會采用朝向對手把左肩向前的戰斗姿勢來對峙,這個被側視角捕捉的場合,朝右的格斗家是胸部被攝像機看到的姿勢,朝左的格斗家是背部被攝像機看到的姿勢。但是2D格斗游戲的情況,角色向左和向右的在畫面上[看到的姿勢]有變化,就很難進行游戲。2D格斗游戲不是左右對稱的對峙就會有困難。
    對於以前的2D格斗游戲,這個處理只是單純的把像素畫描繪的Sprite左右反轉來表示就可以了。那么,3D圖形實現的 GUILTY GEAR Xrd -SIGN-也同樣的進行Sprite反轉顯示。
「GUILTY GEAR XX #RELOAD」的圖,2D時代的GUILTY GEAR對峙的樣子
(C)ARC SYSTEM WORKS
    事實上,如果只是把角色模型左右線對稱的反轉,把這個3D模型沿縱軸(Y軸)對稱線進行反轉(=[構成3D模型的頂點的X坐標]的正負值替換)再進行替換就可以了。當然,前面說的角色專屬光源也必須要配合角色模型的反轉迅速的轉過來。
    這時還可能有的問題是,一部分角色的衣服上描繪的文字。例如Sol的腰帶上刻了[Free]的文字,單純的反轉角色的3D模型的情況,文字就變成鏡像文字。
 
    實際的游戲畫面這里可以很好的回避,這就是,在反轉的時候,把[描繪文字部分的Texture Mapping用的UV Map]做切換,正方向的文字是通常Texture Mapping處理的結果。3D模型反轉時,文字Texutre不能是鏡文字,適當的,修改成為正方向貼上。
在使用戰斗場景中,接近角色的地方。請注意腰帶部分的[Free]和覆蓋手甲的裝具部分等的符號。
Sol的文字Texture Atlas。底色(透明色)的部分是中性灰色( neutral gray = 0.5)
    
陰影文字Texture的例子
本村氏:
    文字的 Texturing的時候,還加入了一個小技巧,實現了[將Texture的亮度的2倍,和Base Texture進行合成(Blend)的配置]。是把設計的Texture亮度的0.5倍進行保存的,變成2倍,再按照1.0倍設計的Texture進行使用的原因是,Texture圖像的亮度超過0.5的情況,底色 變得過亮。把這個配置很好的實現,[立體設計的陰影文字]可以很方便的表現。
    文字的 Texturing是,把像半透明貼紙一樣的1個多邊形,覆蓋的貼在3D模型的表面的印象。想象成在塑料模型上貼上貼紙或貼花(Decal)能容易理解一些。
    這個結構的根本,是 把作為花紋和基底 的Base Texture,與文字用的Texture分開,看起來是為確保充分的分辨率。
    相當於貼花的文字Texture進行繪制時,和基底(Base Texture)進行Blend是重要的一點, GUILTY GEAR Xrd -SIGN-使用 「×2乘法計算」的Blend公式來做乘法Blend的應用。
    把Base Texture作為[Dest],文字用的Texture作為[Source],計算公式是下面這樣。
          Dest×Source+Source×Dest  =  結果是乘法計算的2倍
    這種情況,因為是Texture內容的2倍的值 和基底(Base Texture)進行乘算,得到了 (文字Texture的顏色)[不足0.5是暗,0.5是透明,超過0.5是亮]的結果。
    因為這個Blend方法並不是UE3標准配備的機能,通過 家弓氏手動來追加實現。
    陰影文字簡單的嘗試,就必須把表示文字的亮的部分的Texture和表示暗部的Texture分別Texture Mapping。但如果是這種技術,1個Pass的Texturing就實現了。

重點有效的使用Post Effect

    近年來照片真實系的3D游戲圖形,傾向實現各種各樣的Post Effect。對於這個,把像Cel Anime作品風格為目標的 GUILTY GEAR Xrd -SIGN-的場合,可以說是相對次要的東西。雖說如此,但Post Effect的Pass還是有的。
 
    像前篇傳達的一樣, GUILTY GEAR Xrd -SIGN-的Anti-Aliasing的處理采用了FAXX,FXAA是用Post Effect實現的。還有 GUILTY GEAR Xrd -SIGN-的RenderTarget采用的是aRGB的16位浮點數類型的64位Buffer,因為實現了對應 HDR(High Dynamic Range)Rendering Pipeline,高亮度部分溢出的Light Bloom效果的Post Effect也被使用了。
戰斗場景,讓FXAA有效化的最終截圖(上),和無效化狀態的截圖(下)
 
這個是同樣的戰斗場景,最終截圖(上)和所有Post Effect都無效化的截圖(下)的比較
 
石渡氏:
    最近的Anime也是,因為 這種Light Bloom的效果也被普通的使用了,所以考慮不會有違和感。除此之外, Diffusion的效果,也用Post Effect給予了。
本村氏:
     對於有明暗精確的二值划分感覺的Anime的畫面, Diffusion在 增加柔和的風格上是非常有用的。和Light Bloom 在亮度值1.0以上的地方才處理相比, Diffusion在較少的亮度值的地方也能表現效果。
 
     Light Bloom和 Diffusion,都是給予把亮部模糊溢出的效果的東西,分別作為系統的Filter處理來實現的。具體的是,  使用 Light Bloom Filter后,進一步的使用 Diffusion Filter。 Diffusion雖然在散亂的處理上比較有限,但是有在某種程度的亮度地方都可以使用的印象。 石渡氏是,[主要的格斗游戲部分,太過模糊的話游戲也會變得難玩,這種Post Effect加強的地方以劇情場景(Cut Scene)為中心]這樣的敘述着。
    通過Material,可以設定Texture給予1.0以上的 亮度 來作為發光體。
 
Light Bloom有效(上)和無效(下)
Diffusion 有效(上)和無效(下)
使用發光體Texture的Ramlethal(上)和 Potemkin(下)

結束

    以上,就是 GUILTY GEAR Xrd -SIGN-采用的獨特的圖形技術,分2回來介紹。
    只看完成的最終游戲游戲畫面,因為是 相當的自然 2D圖形,沒有發現是基於3D圖形的玩家也很多。
    實際上,作為開發方,最初也是擔心[真的能用3D圖形系統再現2D格斗游戲圖形么],開發完成時是[基於3D圖形的事情會被注意到么?]這部分擔心。作為開發小組也想在游戲系統方面再多加入一些[3D游戲圖形特有]的演出,不過作為街機游戲,仍然要以[2D格斗游戲要容易玩,沒有違和感]為優先,好像現在的狀態變得穩定了。
    發售預定了的 PS4&PS3版上,請期待那種[3D圖形特有的]附加要素的加入吧。


    還有,作為開發組,這次的 GUILTY GEAR Xrd -SIGN-的項目總的來說,積累了大量對於[使用3D圖形來做2D圖形表現]的技術訣竅。同時,也確實感到這種方式還有未開發的表現領域,今后還要進行這個系統的技術開發,好為以后的作品所使用。
    確實,3D圖形的研究領域有 「NPR」(Non Photo Realistic)的表現和 Stylized Rendering等等非寫實的領域,日本的Anime風特化的東西還是很少。在這個領域進行開發,必須要有可以理論的分析日本的Anime的風格的能力和知識,以這個意義來說 GUILTY GEAR Xrd -SIGN-的開發組是勝任的。
    還有2D格斗以外的應用等等,不光是新技術的開發,技術的應用力也提高了,希望讓我們再一次的震驚吧。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM