游戲工業(yè)化?——你聽說過 Pipeline 嗎

背景
本人從事影視后期Pipeline領(lǐng)域工作有8年,1年半前轉(zhuǎn)了游戲行業(yè),并繼續(xù)在游戲行業(yè)從事 pipeline 方向的工作。
在天工異彩(影視后期公司)任職期間,作為核心開發(fā)人員,主導(dǎo)開發(fā)了 Dayu 流程系統(tǒng),系統(tǒng)自2018年上線到現(xiàn)在,平穩(wěn)運(yùn)行,支撐了上百個(gè)項(xiàng)目,包括:真人電影、動(dòng)畫電影、網(wǎng)絡(luò)大電影、網(wǎng)劇、游戲CG宣傳片、廣告等各種項(xiàng)目類型,代碼框架未發(fā)生大的改動(dòng),兼容了新增的第三方文件格式、新的DCC軟件、新的制作環(huán)節(jié)。并于2021年,榮獲中國電影電視技術(shù)學(xué)會、電影高新技術(shù)專業(yè)委員會,頒發(fā)的電影科技創(chuàng)新成果獎(jiǎng)。

https://mp.weixin.qq.com/s/msBE9GUatV83Bg4qcguHeg
(老臉一紅,真不適應(yīng)這種自吹自擂... ... 但沒辦法,怕被質(zhì)疑資格)
之前在影視行業(yè),我從來沒有就 pipeline 內(nèi)容寫過什么文章,影視 pipeline 百花齊放,而且不斷在進(jìn)步,怕是今天說了,下個(gè)月會覺得想法幼稚或者做法落后了。
但在游戲行業(yè)這不到兩年,感觸頗深,和想象中的工作、進(jìn)展完全不一樣。同時(shí)伴隨而來的是,行業(yè)的老板們、專家們開始頻繁提起了游戲工業(yè)化。
什么是游戲工業(yè)化,游戲工業(yè)化都包含那些模塊,我不敢妄下定義。但不管是誰來定義,美術(shù)流程工業(yè)化這一點(diǎn),絕對繞不開,并且也是其中的重要部分。
所以,還是決定寫點(diǎn)文章,討論一下影視 pipeline、游戲 pipeline,以及他們之間的異同點(diǎn)。
以下內(nèi)容,以及之后的文章,均是我個(gè)人的經(jīng)歷以及朋友們的經(jīng)歷,并不代表整個(gè)國內(nèi)游戲行業(yè)。如果你那里的情況不同,非常歡迎你在評論區(qū)留言,讓大家的信息更加同步,相互學(xué)習(xí),共同進(jìn)步。
現(xiàn)狀
在我剛轉(zhuǎn)游戲的時(shí)候,面試官告訴我,游戲不需要 pipeline,甚至大家談?wù)摰?pipeline 這個(gè)詞,主要指代的是render pipeline,渲染管線。
但其實(shí)進(jìn)入到真正的游戲項(xiàng)目中,從某個(gè)環(huán)節(jié)的組長,到主美,其實(shí)是有意識到,我們需要一種人,來幫我們搞定美術(shù)的這些制作文件,以前團(tuán)隊(duì)小,問題不太突出,或者已經(jīng)能感受到了這一塊的混亂,但可以靠堆人力,去掩蓋這些問題帶來的低效。
然而,現(xiàn)在在制作中的游戲,什么3A標(biāo)準(zhǔn)啊、大世界啊等等,這個(gè)問題如果不解決,已經(jīng)是可以預(yù)見到的潛在大坑了。模模糊糊的感覺到,我們需要一個(gè)這樣的工具或者系統(tǒng)。
或者是,看到國際上的知名工作室,他們偶爾在行業(yè)大會上,展示出一些自動(dòng)化的工具/工具鏈,直呼牛x;或聽說影視這邊是有專門的 pipeline 團(tuán)隊(duì),負(fù)責(zé)做這部分工作,就從影視挖了一些 TD,希望可以幫助項(xiàng)目搭建一套pipeline。
很遺憾,我來游戲的這兩年不到,也并沒有做出什么拿得出手的作品,也只是在零零散散的幫項(xiàng)目開發(fā)一些工具,做一些 pipeline 基建,比如制定命名規(guī)范什么的。
原因有如下:
人太少
有自研 pipeline 系統(tǒng)的影視公司,pipeline TD 是一個(gè)團(tuán)隊(duì),比如在 Dayu 開發(fā)過程中,最多是有7個(gè) TD 同時(shí)在開發(fā),每個(gè)人負(fù)責(zé)不同模塊的工作。Dayu 系統(tǒng)至今已有16w+行代碼,算是軟件工程級別了。
而游戲雖然挖了影視公司的墻腳,甚至挖得墻快塌了,但是這些人才,并不是聚在一起做大做強(qiáng),而是被一個(gè)個(gè)分散在各個(gè)公司,以及公司里的不同事業(yè)部、工作室、甚至不同項(xiàng)目中,單兵作戰(zhàn),各自為政(PS:據(jù)我所知只有一個(gè)地方匯集了5個(gè)以上TD組成了團(tuán)隊(duì),馬上會有第二個(gè))。不同工作室之間是競爭關(guān)系,技術(shù)并不互通,重復(fù)造出大量輪子,再加上沒有團(tuán)隊(duì),支撐不了系統(tǒng)級別的開發(fā),只能搞些輔助生產(chǎn)的一個(gè)個(gè)小工具。
由于游戲和影視待遇相差確實(shí)很大,如果沒有什么非要干一番大事的雄心和決心,就這么待著也挺香的。
時(shí)間短
大公司,KPI 也好 ORK 也好,領(lǐng)導(dǎo)要馬上看到產(chǎn)出、看到收益、能向上匯報(bào)。而 pipeline 恰好是一個(gè)需要長線開發(fā),一時(shí)半會不能帶來直觀收益的。比如 Dayu 系統(tǒng),在所有workflow都敲定、框架都設(shè)計(jì)好了、只差代碼實(shí)現(xiàn),并且核心人員已經(jīng)開發(fā)過兩個(gè)完整 pipeline 版本的前提下,7個(gè)人開發(fā)了6個(gè)月。
迫于眼前的考核壓力,系統(tǒng)級別開發(fā)也是一拖再拖,只能整點(diǎn)馬上就能演示,給 PPT 增光添彩的工具們。
共識少
國內(nèi)游戲公司對 Pipeline 的共識比較少。確實(shí)會存在一些項(xiàng)目稍微好一點(diǎn)點(diǎn),但就我目前待過的大廠、大項(xiàng)目而言,更別提小團(tuán)隊(duì)、中小公司了。
舉個(gè)例子,每個(gè)影視來的 TD,到項(xiàng)目里第一個(gè)要問的就是
咱們以前工具的代碼在哪里托管?代碼是怎么部署?
答案一般是:
哦,就是我開發(fā)完了,打個(gè)壓縮包,通過即時(shí)通訊軟件(POPO、企業(yè)微信、釘釘?shù)龋┌l(fā)給美術(shù),讓他把代碼放在xxx的位置,重開 dcc 就可以啦。
好一點(diǎn)的:
我開發(fā)完了,上傳 P4V/SVN,讓美術(shù)的下載下來,執(zhí)行一個(gè)安裝腳本。
這里并不能怪之前的 TA/TD,游戲公司跟影視公司情況不同,后續(xù)文章會提到。
再來一個(gè)例子
TD:我看咱們項(xiàng)目的美術(shù)文件,沒什么命名規(guī)范呀,咱們制定一個(gè)唄?
美術(shù):不需要!
TD:那你的文件怎么做交接???
美術(shù):我不交接啊,一直就是我在負(fù)責(zé)xx英雄或xx地圖
TD:那你給下游的東西呢?他們從哪兒拿?他們怎么知道哪個(gè)是最新的?他們怎么知道每個(gè)版本都做了啥修改?
美術(shù):我直接RTX 發(fā)給他啊,我會跟他說哪個(gè)是最新的?;蛘?,我會上傳 P4V,他找不到哪個(gè)最新的,來問我嘛。
實(shí)際情況:
某個(gè)版本里的一個(gè)效果要改,或者一個(gè)舊資產(chǎn)要復(fù)用,但是已經(jīng)找不到源文件是哪個(gè)了,最糟糕的是,做這個(gè)效果的人,已經(jīng)離職了,電腦都格式化了,源文件都不復(fù)存在了... ...
當(dāng)然,倒也不能說完全沒有,還是有一點(diǎn)規(guī)范的痕跡的,比如分了環(huán)節(jié)。但離系統(tǒng)性的文件夾層級規(guī)范、文件規(guī)范,距離還有點(diǎn)遠(yuǎn),更不用提哪種層級更高效、更有拓展性、用戶體驗(yàn)更好了。
一個(gè)比喻
在我11年前剛畢業(yè)入影視后期行業(yè)的時(shí)候,每家公司,不管大小,已經(jīng)有 pipeline 概念了。簡單的有各種導(dǎo)入導(dǎo)出工具,只解決最痛的點(diǎn);復(fù)雜的有 pipeline 系統(tǒng),各個(gè)環(huán)節(jié)都服務(wù)到位。
也就是說,pipeline 是什么,應(yīng)該做什么,已經(jīng)有廣泛的共識了。
我們打個(gè)比方,對影視的人來說,pipeline 是貓,大家已經(jīng)知道貓是什么樣子了,只是每家公司的 pipeline 有差異,相當(dāng)于貓的瞳色、毛色、腿的長度等等的差異。這時(shí)候,大到國際上的行業(yè)峰會,小到私底下的TD聚會,分享內(nèi)容雖然只是 pipeline 的一個(gè)局部,比如,我們家的貓,沒毛!大家紛紛表示因吹斯聽,并且可以想象到,這個(gè)特性能解決什么問題,缺點(diǎn)又是什么。
對游戲的人來說,pipeline 是 Mooncalf(月癡獸),沒有人見過,只是聽說是有四條細(xì)腿,會跳舞。但究竟長什么樣子也沒有人完整描述出來。

那我就在這里,姑且試著去描述 Mooncalf(因?yàn)槲乙恢痹陲曫B(yǎng)它的亞種)。我會寫到:
創(chuàng)意型行業(yè) Pipeline 的若干基本概念,哪些是 Pipeline 的管轄范圍
游戲跟影視 Pipeline 的區(qū)別和自己的思考
試著回答“我的游戲項(xiàng)目適合上Pipeline嗎”
希望這個(gè)系列文章可以解釋:
我都用 TAPD/JIRA/易協(xié)作了,為什么還要用 ShotGrid/Ftrack
我都用 Arthub/Eagle了,為什么還要用 ShotGrid/Ftrack
我都用 Git/SVN/P4V/Alienbrain?了,為什么還要用 ?ShotGrid/Ftrack
你們一天一天的,到底在干啥???!

