TGDC丨做過《戰神》《死亡擱淺》的光子動捕專家,怎麼理解動捕?
12月9日,在2020年騰訊遊戲開發者大會上(TGDC),騰訊互動娛樂光子技術中心Lead Motion Technician Kevin Wang以《捕風捉影,讓虛擬更現實》為主題,立足於自身20年的動捕工作經驗,講述了動捕在遊戲中的開發與應用流程。
他認為動捕在遊戲開發中的價值主要包括五大方面:節省人力、時間與開銷;以最快的方式實時呈現概念;可用相同的動捕資料拍攝不同鏡頭;可以利用多個角色替身;動捕讓細節更為逼真。
為了讓大家更容易瞭解動捕,下文整理了Kevin Wang演講部分內容。
大家好,我叫Kevin Wang,我在動捕界已經有超過20年經驗,我做過電影,比如《阿凡達》;我做過遊戲產品,比如《死亡擱淺》、《戰神》 、《最後生還者》等等。
在開始之前,我想給大家看一段影片。
好,現在我想請問各位,這是一個什麼樣的視訊?看起來有點粗糙又有點複雜,對嗎?其實如果你有反光球、紅外線相機,要做出上面這些動畫其實並不是難事。
動捕在遊戲開發中的價值
聊動捕之前,我們先來討論一下動捕在遊戲開發中的價值,我總結了以下五點:
第一點,節省人力、時間與開銷。大家想象一下,現在我們有一款遊戲要用手K(即動畫師手動製作動畫)的方式呈現出所有動畫,比如要做200分鐘動畫,那我們可能需要請到大概七八個動畫師,花費半年時間;
可是如果以動捕的方式去做,我們也許只需要2-3天左右錄製,然後把這些動畫轉移到3D角色上。後續的細節清理只需要大概1個月不到,就可以達到相同,甚至於更逼真的效果。
第二點,以最快的方式呈現實時概念。大家剛剛看到的影片裡基本上就呈現出了第二點的意思,就是說導演腦中有一個想法,說今天我的這個預告片要怎麼個拍法、剪法,鏡頭怎麼個架設方式。之後我們會請演員演繹出來,讓導演拍攝這些鏡頭,再做出剪輯。
這一整個過程,大家看到的影片,從剪輯拍攝到最後的Blocking,把這些鏡頭切在一起,整個週期可能只花了1個星期不到。
第三點,可以用相同資料拍攝不同鏡頭。比如今天有兩個人在動捕演對手戲,我們可以存下他們的資料。之後如果想要拍這些鏡頭,就可以很快地把這些動作播放出來,再實時搭建我們要拍的鏡頭,這是一個非常省時的方式。
那今天如果我們是在一個電影的場景裡用真人去拍攝,要搭建這麼多鏡頭,演員肯定要重新去演這個場景很多次,但每一次演下來也許中間都會有少許差別,所以這體現出了動捕的優點。
第四點,可以利用多個角色作為替身。比如《死亡擱淺》的主角Norman Reedus,他實際在動捕場地裡拍攝的這些動作,大概只有5-10分鐘,其他所有的額外動作,都是我們請不同替身來拍攝的,中間也許有大概3-4個不同的人。
第五點,動捕讓細節更為逼真。以手K的方式做動畫,最困難的其實是怎樣去看一個人的施力點與受力點。舉個例子,比如我們站久了,有時人會往一邊傾,把力量放在左腳,左腳站久以後又會歪一邊,換到右腳。中間這個取力與卸力的過程,其實是在手K裡比較難以展現的地方。
接下來我們來看看今天要講的五大專案。
常見動捕硬體分類
我們從第一點開始,市面上比較常見的動捕硬體分類。
第一類叫做電磁類,電磁類的運作方式是有一箇中央磁鐵,它會與很多不同的接收器連線在演員身上。這個接收器繫結在動捕服上,所以基本上你只要把這些接收器調到應該調的位置,就可以去進行拍攝。
它的好處是方便使用,因為衣服穿上去、接收器稍微移一下,就可以開始拍攝了。它成本也較低,一套大約2000-3000美金。而且它不受場地大小限制,在客廳就可以拍攝出一系列動作。
但它也有缺點——衣服的尺寸不同,今天如果我們要拍一個六尺高的男性,那基本上這套衣服他是穿不下的,需要買另外一套全新的動捕服。那有的人胖、有的人瘦,有的人高、有的人矮,有男有女,拍多個不同角色就需要買很多套衣服。
另外,它也無法捕捉道具。現在這套衣服身上所有的接收器都是由線連線中央磁鐵,所以我們並沒有辦法拿任何不同的道具,然後把額外的接收器連在道具上。
這一套電磁類衣服最好展現的方式就是proof of concept。如果有個想法,不需要很乾淨的資料,只是要試試看動捕資料與鏡頭拍攝的效果差異,我覺得用這套衣服是很好的選擇。
第二類是光學類,就是之前影片裡的那套系統。它的運作方式,是在上面有很多臺紅外線相機,這些相機基本上是看不到整個人的,它能擷取的資料就只有這些反光球反射的東西。
因為在動捕的很多時候我們會請演員在地上滾等等,如果這些反光球比較硬就會硌著,甚至受傷,所以我們選擇用非常軟的塑膠球做成反光球。
光學動捕硬體有幾個優點。首先因為場地大,它可以同時拍很多人。只要場地夠大,我們想拍狗、馬這些動物都沒有問題;並且它可以拍攝不同大小、形狀的道具。如果像照片裡一樣,有斧頭、盾牌這些道具,我們都可以安裝反光球,讓紅外線攝像機追蹤、計算。
而它的缺點,首先就是整體價格昂貴,一套大概30-40萬美金,還需要租一個專門用於拍攝的大場地。接下來我們還要為後期花很多時間,因為會有反光球被遮擋的情況,這些攝像頭看不到的話,我們就要在後期把這些反光球重新找出來定位。
動捕迷思
接下來我們來看一下動捕的迷思,這是過去大概15-20年來碰到一些人問我的問題,裡都存在一些常見的誤解,現在我跟大家稍微解釋一下。
第一,資料拍攝完可以馬上進引擎,這一點其實是不對的,因為我們請來的演員與3D角色通常不會是1:1。比如演員會過高、過瘦,而角色也許會偏矮、偏壯,這都會產生不同的資料。我們要做的就是資料清理,馬上進引擎其實也可以,但資料不會非常乾淨。
假設我們今天拍了一個比較壯的人,想把這個資料放在比較瘦的角色的身上,那壯人做的一些動作,比如手碰肩、叉腰,放入角色資料,看起來就會感覺手臂沒有叉在腰上。因為演員的身體寬度和3D角色並不一致。
第二,所有輸出的動作都會與演員沒有差別。就像我剛剛所解釋的,因為演員與角色身材、身高的不同,這些資料都會有些許差別。
第三,道具要以真實道具為主。以槍械來講,比如我們拿一把衝鋒槍,非常重,演員拿槍演一天會非常非常累。所以通常我們會用塑膠管包一些膠帶,裡塞一些軟棉,讓它演繹出槍的效果。而導演如果要拍一個cinematic的場景,想要展現出槍的重量,我們才會給演員一個真實重量版的槍。
最後,我們如果用了動捕,就不需要動畫師去手K了,這也是一個完全錯誤的觀念。首先,今天不是所有的東西都可以用來做動捕。比如一張紙,因為紙會飄,我們不容易固定反光球,也就做不了Rigid body。像汽車、飛機這些東西也都難以動捕,所以我們還是需要動畫師用手K的方式做出這些動作。而且,再到之後的臉部動捕、身體動捕,也都需要動畫師做資料清理。
動捕的準備與拍攝過程
現在我們來看動捕的準備與拍攝的過程,這是動捕準備的經驗之談。我通常會在開拍兩個星期前問一下客戶:你們想要拍什麼樣的動作?我們需要準備什麼樣的道具、搭建什麼樣的場景?然後我會在這兩個星期之內準備、測試好所有需要用的道具,不會浪費客戶拍攝的時間。
大家可以看一下這個影片,這是在索尼的場地裡拍攝的高難度特技動作。在之前我們搭大型場景時覺得搭起來都沒有問題,可是當演員真的上去開始跑、跳起來之後,我們發現整個架子搖晃得很厲害。
所以我們馬上判斷出需要固定,方法是找一個更重的東西繫結,所以我們拉一臺升降機過來,讓演員更有安全感。這就需要我們有非常好的應變能力與想象力,才能在最短的時間內達到要求。
接下來到了拍攝環節,我們要做的第一件事叫Calibration——光學攝像機校正。我們會拿一個反光球棒在場地裡不停地上下左右揮動,讓每一臺紅外線攝像機擷取到反光球的動作。當這些資料夠了之後,在軟體裡它就可以明確地計算出每一個攝像頭所在的位置。
但如果有人來場地裡不小心碰到了攝像頭,那我們肯定要重新校正。所以在拍攝時,我通常會建議大家不要穿反光的衣服、鞋子,也儘量不要靠近這些攝像頭角架。
第二件事,Calibration之後我們要上反光球,也就是Markers。這些反光球我們一般會固定於演員各個關節點,比如肩膀、手肘、手腕,動捕軟體就可以很明確地計算出資料。所以反光球所在的位置也非常重要,這關係著資料好壞。
舉個簡單的例子,比如我把反光球放在肩膀這一邊,肩膀上下移動,大家可以看到它的移動量並不大。可是如果往外沿放再上下移動,它的動作就會比較大。我們要根據需求效果調整位置。
第三件事,Rom Range of motion,這是它的全名,也就是關節活動拍攝。我們會請演員在開拍之前把所有的關節活動一遍,讓軟體讀取這個人整個關節的活動幅度,再計算出他可以彎曲達到的位置。
之後我們也會用這一系列的資料去匹配角色,和在場地裡拍攝的影片做對比,看看怎麼以最好的方式把3D角色匹配到Video Reference上。
第四件事,大型動捕室道具需求。左上角這些照片就是我剛剛所講的,不同槍械需要不同重量。右上角這些不同顏色的膠帶對應著不同場景,比如左邊是條河、右邊是座山,你只有這麼細的道路可以走,我們就會用膠帶貼出道路的位置,讓演員知道他不能走出這個範圍之外。左下角是我們為《神祕海域》搭建的吉普車,右下角就是剛剛影片中不穩定的道具。
基於以上講解的東西,現在我讓大家看一下動捕片場的拍攝過程。
這些攝像機架在動捕室的各個方向,現在就是在搭建剛剛所看到的吉普車。這是幕後的拍攝人員、工作人員,在做關節活動。現在給他們戴上麥克風收音,這是動捕的拍攝,大家看到這些槍,就是我剛剛講的,以塑膠管的方式去呈現。
動捕後期製作流程
接下來讓我們看下一個Slide,動捕的後期流程,基本上有五個環節。
第一點叫做Tracking——清理反光球資料,我們在做反光球資料清理時,大家可以看到,左邊所有白色的球就是實際上紅外線攝像機攝取下來的反光球資料。之後我們還要去定位,比如這四顆球是屬於它的頭部,哪一隻是左手、右手,哪一個是左腳、右腳。全部規劃好之後,我們才能看到一個3D效果。
第二點叫做Solving——將資料轉移到一個能縮放的動捕角色上。右下角這個圖片,手的長度有三顆反光球,應該是在手背的這兩個點跟手腕的這一邊,這三個點是在這個方向上。可是大家可以看到在右下角這個圖,這三個點已經跑到了手指這一邊。所以我們現在需要縮放這個手臂,讓反光球的點能達到實際上演員當初所設定的位置。
第三點叫做Retargeting——動捕資料角色繫結,把能縮放的動捕角色轉移到遊戲角色上。為什麼要做這個過程?因為遊戲角色是不能被縮放的,如果演員跟遊戲的角色有資料差距,我們會先上到一個能縮放的角色上,再把資料轉移到遊戲角色上。
大家可以看到這個手兩邊其實是合不上的,一個高一個低,那是因為我們還沒有做成比較完整的清理。可以看到,紅色是之前拍攝的資料,灰色的是棒球球員的資料。
第四點是Motion Edit——動作資料清理,做出所有抖動、穿透的清理,比如剛剛講的手叉腰、碰肩膀、摸頭等。有時拿了道具,手指會穿模。又或是今天拍攝了兩個不同的動作,比如一個人在跑,忽然又讓他在地上滾,我們也會在Motion Edit這一步把兩個動作融合為一個。
最後一步Final motion——最終資料清理,請動畫師做出手指與道具,比如紙、車子這些細節動作,甚至於到臉部動捕的清理。
臉部動捕與虛擬相機的使用
瞭解了後期處理之後,我們來討論一下部動捕與虛擬相機的使用。最早之前,臉部動捕的方式是讓演員坐在一張椅子上,前面有大概三四十臺相機,臉上也會放很多小小的反光球。比如《北極特快車》就是用這個方式去做的。
這是一個非常浪費時間的方法,而隨著時代變遷、技術成長,現在有所謂頭戴式的頭盔來做面部動捕。這個頭盔前面有個小小的攝像頭,能錄取你臉上所有的表情,之後我們能與身體的資料同步,達到一個非常好的臉部與身體動捕效果。
我們再來討論一下虛擬相機,大家現在有一點了解,其實紅外線相機與反光球就等於是動捕最基本的要求,我們紅外線相機所有的這些定位點都找出來之後,如果把這些反光球的點放在iPad上面,或者不同的東西上面,把它constrain到一個virtual view point上,我們就可以很明確地發現,今天我放三個反光球點在這個東西上,那我怎麼樣移動可以在場景裡實時地看到這個東西。
如果我們在Motion Builder里加入一個Camera,把它constrain在這個東西上,基本上Virtual camera就這麼形成了。大家現在看到照片裡它有很多的按鈕、資料是之後可以加的,比如我們要加推進、拉遠等功能,都可以在這個Virtual Camera上完成。
現在我讓大家看一下Virtual Camera的運用。
[flash]https://cache.tv.qq.com/qqplayerout.swf?vid=c3210p7serw[/flash]
這是我大概在十年前拍攝的講解,手上拿的手電筒這些東西其實都是塑膠棍棒,大家也可以看到這個攝像機,其實上面放了很多反光球。所以這些紅外線攝像機能去定位這些反光球、追蹤虛擬相機所在的位置點。
這是我之前的同事,基本上他在說,今天我們能把攝像機constrain到這臺吉普車上,就等於它所有的動向方面,它的Translation是沒有辦法動的,因為是跟著車子走的。可是它的Rotation方面能左右操縱,那之後我們也可以用軟體的方式鬆開繫結,讓它自由活動。
這部分打槍場景是之前錄好的,所以我們可以把之前錄好的場景跟真人動作結合。大家想想看,如果拍電影,想從五層樓高的高度拉到一層樓,我們一定要去租一個很大的crane才能拍攝到這種效果,可是以虛擬相機的運用方式,我們就能用軟體完成。
可以看到,他只拿到頭的高度,可是大家實際上在銀幕裡看到的高度非常高。他慢慢降下來到他臉部高度時,已經達到地面的程度了。所以這些東西都是可以在虛擬相機裡做出調整的,非常省時省力,因為你不用租這麼多東西實際去拍。
動捕在遊戲中的流程
現在我們進入到下一個環節,來聊一聊動捕整體在遊戲中的流程。這是我過去20年來看到的,比較快速地推進遊戲流程的經驗。
首先,我們在做遊戲之前一定要有一個非常好的構想、概念,之後才能請2D手繪師把這些場景、人物畫出來,然後我們會請3D建模師做成3D模型;
做成之後它並沒有骨骼,我們沒有辦法做動畫,所以下一步是骨骼繫結。我們要請一些TA,這些Rigging的人幫忙;
繫結之後我們就會進入到分鏡指令碼這一步,請一個Storyboard artist,以一個一個鏡頭的方式呈現出Cinematic場景;
有了這個畫出來的Storyboard之後,我們才會進入到Previz Layout,鏡頭創作這一步。在這個部門裡,員工會很快地以手K方式把3D人物以Storyboard的方式展現出來,動作方面也會很快速用手K的方式製作。
比如從A點走到B點,它可能只是滑動過去,把這個鏡頭帶起來,之後再去做一些剪接。如果整體看起來沒有什麼大問題,我們會進入到動捕環節,把之前手K的資料轉換成真人動捕資料;
轉移完成之後,我們會做資料清理,然後再回到鏡頭部門驗證。為什麼要做驗證?我跟大家講一下這個道理,比如我們之前手K的動畫,一個人從A點走到B點,可能只K了大概兩秒鐘。可是實際上我們用動捕拍攝,我們發現這個人從A點走到B點花了3秒鐘。相對之前搭的這個鏡頭,就不會100%地能跟隨演員動作。
所以當我們動捕資料做完後,我們還會送回鏡頭部門,讓他們去更改這一系列之前搭設好的鏡頭,讓它能跟隨動捕人物運作。在這之後,當這些鏡頭也確認了,Motion Edit也做完了,我們會進到Final animation做動畫加強。
接下來的幾個環節:Effects、Simulation、Lighting、Rendering,這些東西現在基本上在引擎裡就可以完成,可是以Cinematic的方式來說,我們就會強調一些衣服的動法、頭髮的飄動方式等效果。
在接下來的光效渲染中,我們要通過打光找出最有Dramatic effect、最能說服人的渲染效果,再把它匯入引擎,這是一個比較快速的整體流程。
瞭解到這些過程之後,我們來看看下一個影片,也是今天最後一個影片:《最後生還者》動捕與最終輸出對比。大家記得我們開場時的第一個影片嗎?那個影片上讓大家看到動捕的場景,與這些快速動捕的資料,再到角色的整個過程。
那基於我們今天所聊的所有東西,加上剛剛的Pipeline流程,我先讓大家看一看最終的成果。
左上方是我們所謂的鏡頭創作,就是Blocking。所有的東西都以手K的方式進行,之後我們進入到2 動捕,再上到3 資料裡,然後把這個鏡頭優化一下,能跟隨這些動捕的人物,到最後的成品。艾莉在撿子彈時,她的手我們其實沒有做動捕,因為子彈太小顆了,所以這些都是之後在動畫師那邊要完成的地方。
希望大家在看完這些影片之後,能對動捕有更深入的瞭解。
Q&A
現在我來回答一下大家問過的問題。
Q1:動捕發展至今,您認為其定位是什麼?仍是比較頂級的技術手段嗎,還是已經成為遊戲常規研發流程的一部分?動捕未來還會有什麼樣的進化?
A:我跟大家解釋一下,我在20多年前開始做動捕時,反光球就像乒乓球一樣大,而且是硬的。因為最早之前,這些紅外線攝像機裡的Sensor非常小,所以它的能見度也非常低,我們就一定要把反光球做得非常大,它才能擷取到這些資料。然後擷取下來的資料也是直接到電腦裡,不會做出任何計算。
可是現在20年之後,外面普遍在使用的這些紅外線攝像機,不但可以擷取到更精細的資料,比如人臉上的點,而且這些反光球又小又軟,還能計算,節省了很多時間。
這些是動捕相機從過去到現在的演變,那動捕將來還有什麼樣的變化?這個很難講,隨著硬體日新月異的發展,我覺得之後的空間還很大。比如現在Xbox Kinect這些東西,已經可以做出比較簡單的動捕了,所以我覺得之後在家裡能完成動捕也是非常有可能的事情。
Q2:動捕過去比較常見於主機和大型單機遊戲,隨著手遊玩家的需求和移動裝置效能提升,它會不會成為手遊的一大趨勢?
A:我覺得非常有可能,例如我們說做一系列的Locomotion,在以前的做法是15度角、30度角、45度角 、60度角,然後這樣180度,我們每個方向都要拍一次。
而現在因為Engineer的發展,我們能做到所謂的Motion Matching,讓電腦實時計算出每一個人啟動的方式,中間要怎麼去匹配這個動作。那相對的就是說這些資料變少了,電腦能計算出來,我們也能去優化這些Data。所以今天如果拍攝了一個GB的資料,我們如果能把它壓縮到大概幾十Mb,那進手機是完全沒有問題的。現在這其實已經在慢慢實現了。
Q3:在大型的場景裡,你們是怎麼做拍攝的?
A:如果是一個非常大的場景,我們可以把這個場景規劃為幾個不同的小場景。在每一個小場景裡用膠帶貼出範圍線,或者用一些蘋果箱搭出桌子、椅子所在的位置。基於拍完一個場景之後我們可以再拍第二個場景,用相同的動捕場地、不同顏色的膠帶再去重貼出第二個場景該走的位置,之後我們就能把這些資料聯合起來。
花絮
最後還有一個幕後花絮跟大家分享一下,叫做反光球惹的禍。
中間這張照片是《北極特快車》 的幕後工作人員,他們都是動捕工作者。在拍攝大概兩個月之後,大家想跟主角湯姆·漢克斯來一張合照,可是拍攝的人忘了把閃光燈關掉,所以現在幕後人員唯一可以跟湯姆·漢克斯留念的一張照片,就是中間這個臉在發亮的人。
所以大家如果之後去光學類動捕室跟演員合照,切記要把閃光燈關掉。不然就會發生現在大家看到的這個悲劇。
今天我的演講就到此為止,希望大家能在今天短短的45分鐘之內對動捕有更深層的瞭解,謝謝。
整理:遊戲葡萄
地址:https://mp.weixin.qq.com/s/-XiB4WRvgK8-g0LGX_ZnqQ
相關文章
- 《黑神話:悟空》動捕團隊專訪:聊聊國內動捕團隊的現狀
- 《死亡擱淺》:錯位
- 騰訊互娛Kevin Wang:動捕在遊戲中的開發與應用流程丨TGDC2020遊戲
- 在邂逅《死亡擱淺》之前,“非同步多人”經歷過什麼?非同步
- 發售八個月後,《死亡擱淺》沒有“擱淺”
- 死亡擱淺:一封針對雲玩家的挑戰書
- 從《死亡擱淺》6.8分說起
- 淺析《死亡擱淺》的“連線”——從玩法到核心
- 《死亡擱淺》IGN 評測 6.8 分:「贊」過,但不等於「愛」過
- 最近大火的《死亡擱淺》究竟想表達的是什麼?
- Wireshark的捕獲過濾器過濾器
- 全球銷量超過500萬份的《死亡擱淺》怎樣讓玩家感受情感聯絡?
- #每日一記#通過 GIF 理解 addEventListener、捕獲和冒泡dev
- 理解js的事件冒泡和事件捕獲JS事件
- 為什麼我能在《死亡擱淺》的世界裡逗留100小時?
- 並不穩固的“連結”,脆弱的《死亡擱淺》
- PlayStation官方部落格年度大獎出爐 《死亡擱淺》成最大贏家
- 為移動VR提供動捕解決方案,Xptah和Nibiru達成戰略合作VR
- 小島秀夫專訪:談談《死亡擱淺》的立意、概念與哲學
- 《死亡擱淺》:當代主義的藝術典範
- “繩索”與“連結”:《死亡擱淺》的玩法解構
- JavaScript事件捕獲冒泡與捕獲JavaScript事件
- 《死亡擱淺》PC版本5個月吸金1.8億,推動發行商收入大漲30%
- 《死亡擱淺》是上世代最佳遊戲之一遊戲
- 入手《死亡擱淺》,這些問題你需要知道的
- 怎麼捕捉牛股?捕“牛股”掌握三技巧
- 從《控制》到《死亡擱淺》,一家義大利遊戲發行商的發展路遊戲
- 《死亡擱淺 導演剪輯版》體驗報告:疫情過後,更具深意
- Postman設定自動捕獲傳遞Cookie教程PostmanCookie
- 《死亡擱淺》:充滿說教味道的完美跑商遊戲遊戲
- 獨立遊戲佳作《孤帆遠航》:跳出“死亡”的“末日擱淺”遊戲
- 資訊的傳遞與連結:有關《死亡擱淺》的思考
- jQuery捕獲jQuery
- 捕獲cookie的值Cookie
- 從《死亡擱淺》說開來,淺析遊戲裡的開放世界設計遊戲
- 愛摸魚的小島,為什麼用三年就做完了《死亡擱淺》
- 我是“第三類”對死亡擱淺提出非議的人
- 時到如今,我們應該如何評價《死亡擱淺》?