張 維,徐華龍
(1.煤炭科學(xué)技術(shù)研究院有限公司,北京,100013;2.煤礦應(yīng)急避險技術(shù)裝備工程研究中心,北京100013;3.北京市煤礦安全工程技術(shù)研究中心,北京100013)
目前,我國煤礦區(qū)煤層氣與煤炭協(xié)調(diào)開發(fā)已經(jīng)形成了晉城、兩淮、松藻3種模式,在煤層氣開采過程中,通過采用地面鉆井進行充足時間的預(yù)抽采,將高瓦斯環(huán)境降為低瓦斯作業(yè),改變了原始高瓦斯環(huán)境的采煤作業(yè)設(shè)計方式[1-2]。但是我國煤炭地質(zhì)條件極其復(fù)雜,在煤層氣開采過程中,抽采的時間順序與空間順序錯綜復(fù)雜,僅僅使用CAD圖紙、文字與圖片等靜態(tài)畫面說明難以更快更準的去表達展示。
作為一種三維動畫制作軟件,3DMAX逐漸在影視動畫、建筑以及航空等諸多領(lǐng)域中得以廣泛應(yīng)用,推進了現(xiàn)代科技的發(fā)展。為此,通過研究三維虛擬仿真技術(shù)、反向骨骼動畫技術(shù)、粒子動畫特效技術(shù)、分鏡頭動態(tài)推演技術(shù)和GPU渲染技術(shù),使用3DMAX等三維建模軟件將傳統(tǒng)二維畫面轉(zhuǎn)化為三維動畫情景,將用戶帶入一個多維、直觀、動態(tài)的真實情境中,結(jié)合動畫特效合成技術(shù)實現(xiàn)煤層氣開采技術(shù)體系三維可視化動態(tài)推演,為“晉城、兩淮、松藻”煤層氣協(xié)調(diào)開采模式在全國得以更好的推廣與利用提供輔助技術(shù)支持。
動畫模擬指的是利用計算機動畫技術(shù)建立一個虛擬的世界,根據(jù)要求設(shè)定模型的運動軌跡、虛擬攝影機的運動和其它動畫參數(shù),為模型賦上特定的材質(zhì)和打上燈光,以流動的畫面形式,形象、直觀和逼真地呈現(xiàn)系統(tǒng)過程的狀態(tài)和變化。煤層氣開采動畫模擬主要是針對煤層氣開采模式技術(shù)體系,基于煤層氣開采時空順序?qū)⒌V區(qū)劃分為規(guī)劃區(qū)、準備區(qū)和生產(chǎn)區(qū),利用3DMAX進行礦區(qū)井上下三維場景建模和設(shè)備動畫建模,突破煤層氣開采三維動畫模擬關(guān)鍵技術(shù),逐步對3個區(qū)煤層氣開采技術(shù)細節(jié)進行全方位的動態(tài)模擬推演。
煤層氣開采動畫模擬流程主要分為5部分:①三維場景策劃:設(shè)計人員通過學(xué)習(xí)與研究煤層氣開采技術(shù)體系,梳理策劃視頻動畫模擬的整體制作思路,完成前期內(nèi)容場景設(shè)定;②模擬仿真體系:為煤層氣開采相關(guān)三維模型庫的制作,包括地面三維建模與材質(zhì)的制作、巖層與煤層三維建模與材質(zhì)制作、設(shè)備三維建模與材質(zhì)制作;③三維動畫體系:為煤層氣開采相關(guān)動畫庫的制作,如地質(zhì)體模型裁剪顯隱、抽采設(shè)備運轉(zhuǎn)、氣體運動和煤巖垮落等特效動畫的制作;④動態(tài)推演體系:為根據(jù)三區(qū)動畫腳本和時間序列的編排,設(shè)計各個場景分鏡頭三維動畫展現(xiàn)形式;⑤三維整體效果把控:通過調(diào)整三維場景質(zhì)感與光影效果,利用Vary渲染器進行GPU渲染輸出,加入臺詞、音效、及背景樂等剪輯影像素材,完成最后渲染輸出和AE合成。煤層氣開采動畫模擬流程技術(shù)路線圖如圖1。
圖1 煤層氣開采動畫模擬流程技術(shù)路線圖Fig.1 Technology roadmap of coalbed methane exploitation animation simulation process
礦區(qū)三維虛擬模型搭建主要是針對地表、工業(yè)廣場、地質(zhì)體、煤層、抽采設(shè)備等對象,將它們整合到統(tǒng)一的時空框架下進行三維可視化表達和集成管理[3]。首先,地面建模需要結(jié)合礦區(qū)的地表特征來搭建,應(yīng)用3DMAX中Editable Poly的Paint Deformation繪制地表的高低起伏;其次,巖層和煤層建模最重要的。需要先確定整體的長寬高比例。長度是按照工作面的長度來確定;高度則是依據(jù)鉆孔綜合柱狀圖來制作,按照當?shù)貙嶋H柱狀圖圖紙來確定巖層與煤層之間的分布關(guān)系。寬度則是必須依據(jù)3區(qū)劃分后需要給觀眾傳達的抽采技術(shù)來確定。在這個時間推演的過程中,未來規(guī)劃區(qū)在設(shè)置寬度時必須預(yù)留最寬的距離。同時根據(jù)每個區(qū)域要展示的內(nèi)容來確定它的寬度,實際的工作面大小來推算三者比例關(guān)系,當長寬高確定好后,應(yīng)用Box分段建模技術(shù)搭建地質(zhì)體。剖面的分段數(shù)量以鉆孔柱狀圖的比例進行調(diào)節(jié)分配。最后對于抽采設(shè)備模型的搭建則是應(yīng)用3DMAX中Editable Poly命令按圖紙的樣子來1∶1比例完成建模。
動畫作為一種特殊的藝術(shù)形式,從本質(zhì)上來說,動畫就是能夠“動”的畫面,而無疑動畫是最重要的因素,因此在動畫制作時,角色動作必然是設(shè)計人員重視的問題[4],當前的計算機動畫制作過程中,模型動畫的正向動力學(xué)算法計算已經(jīng)不能正確表達模型的逼真性。反向動力學(xué)就應(yīng)運而生了,反向動力學(xué)即IK(Inverse Kinematics),IK算法就是首先確定末端骨骼的位置信息,根據(jù)末端骨骼的位置信息反向推導(dǎo)出骨骼繼承鏈上N級父親骨骼的位置信息[5]。骨胳IK系統(tǒng)解決了旋轉(zhuǎn)位移動畫與父子鏈接約束無法實現(xiàn)的以旋轉(zhuǎn)軸承帶動移動軸承的磕頭機抽采機械動畫。為此,在制作煤層氣開采模式視頻動畫過程中,磕頭機的動畫是一個很復(fù)雜的動畫過程。磕頭機的工作原理比較復(fù)雜,工作時電動機的轉(zhuǎn)動經(jīng)變速箱、曲柄連桿機構(gòu)變成驢頭的上下運動,驢頭經(jīng)光桿、抽油桿帶動井下抽油泵的柱塞作上下運動,從而不斷地把井中的原油抽出井筒。從工作原理可以看出它所牽涉到的零部件多而且復(fù)雜,只依靠正向動力學(xué)算法很難實現(xiàn)一些舒服的姿勢和動作。經(jīng)過試驗與測試研究,通過研究利用骨骼IK系統(tǒng)來解決這個技術(shù)難點。
2.2.1 確定層次連接
磕頭機是由許多零件和構(gòu)件組成的。想要模擬它的正確相對運動,必須對它的每個機構(gòu)和零部件建立合適的層次連接。這實際上是對所有對象進行拓撲結(jié)構(gòu)描述,反映相關(guān)構(gòu)件之間連接層次關(guān)系(層次樹),作為模擬運動的基礎(chǔ)。因為在機構(gòu)的運動中,它往往都是通過1個運動帶動多個構(gòu)件的運動。構(gòu)件與構(gòu)件相配合運動。主構(gòu)建運動帶動副件在移動或旋轉(zhuǎn)。所以在搭建骨骼IK系統(tǒng)時,必須對構(gòu)件的運動鏈系統(tǒng)作一個梳理??念^機運動鏈系統(tǒng)圖如圖2。
圖2 磕頭機運動鏈系統(tǒng)圖Fig.2 Themotion chain system diagram of the jackhammer
對于三維模型中的所有單獨零件都可以看作是1個對象,建立正確的層次樹,就是建立各種對象之間的運動傳遞關(guān)系。在這些關(guān)系中曲柄與連桿作為父對象,他們的運動控制著光桿、驢頭、抽油桿、抽氣泵的運動。抽氣泵的運動同時也會影響到父對象的運動,通過這種層次連接關(guān)系,再結(jié)合IK算法技術(shù),就可實現(xiàn)復(fù)雜的三維模擬運動??念^機層次樹如圖3。
圖3 磕頭機層次樹Fig.3 The jackhammer hierarchical tree
2.2.2 創(chuàng)建骨骼IK系統(tǒng)
反向動力學(xué)IK(Inverse Kinematics)是一種與正向運動學(xué)正好相反的運動學(xué)系統(tǒng),它主要操縱層次中的子物體,從而影響整個層次,可以實現(xiàn)復(fù)雜機構(gòu)的運動。IK建立在層次鏈接的基礎(chǔ)之上,要理解IK的工作原理,必須首先理解層次鏈接以及正向運動學(xué)的規(guī)則。在反向運動學(xué)中出現(xiàn)了一個新的概念,叫“IK解算器”,是一個特殊的控制器,它用于處理IK方式,自動計算出IK的關(guān)鍵幀動畫。例如一個人體手臂的鏈接結(jié)構(gòu),如果使用正向運動學(xué)系統(tǒng),那么需要首先旋轉(zhuǎn)大臂,然后旋轉(zhuǎn)小臂,接著是手腕、手等,需要為每個子物體設(shè)置旋轉(zhuǎn)的關(guān)鍵幀[6]。
當層次連接關(guān)系確定好后,在制作磕頭機動畫時,先把曲柄與連桿作為父對象進行骨骼搭建,分別創(chuàng)建2個Bones骨骼。大小依據(jù)曲柄與連桿處大小制作,位置確定在曲柄與連桿處。為曲柄與連桿創(chuàng)建IK系統(tǒng)。最后依據(jù)以上分析的工作原理關(guān)系對別的零部件進行綁定。這樣就建立起了通過曲柄與連桿運動引起的一系列動作系統(tǒng)。
在煤層氣抽采展示中,采前預(yù)抽、采中抽采、采后抽采的展示過程中都離不開繩體的動畫演示,有時候鏡頭特寫某一項技術(shù)展示,還會將它的動畫過程呈現(xiàn)在畫面的中心位置,若還停留在只有動作,沒有傳神的內(nèi)涵,整個動畫會顯得單調(diào)與死板。由于傳統(tǒng)的動力學(xué)方式計算量大,不容易控制,容易穿幫。為了達到形神兼?zhèn)?,傳達最真實的一面,提出了一種用于控制磕頭機繩子動畫模擬的自定義繩體編輯技術(shù)。這個編輯技術(shù)主要采用Linked XForm、Edit Spline修改器加虛擬體的形式,解決傳統(tǒng)動力學(xué)的不穩(wěn)定性,提高動畫的真實性。
具體制作步驟方法與過程如下:首先,創(chuàng)建輔助虛擬體,在機頭鋼繩每個節(jié)點上方和下方的拉繩體上添加用來控制繩索的局部節(jié)點運動;其次,創(chuàng)建鏈接,將虛擬體父子鏈接連到磕頭機頭部;接著,將每個節(jié)點進行Linked XForm、Edit Spline修改器進行編輯與綁定工作,如進入繩索的Vertex編輯模式,選最下面的2個節(jié)點,為節(jié)點添加Linked XForm修改器,并單擊修改器中的Pick Control Object按鈕,拾取節(jié)點上的虛擬體,同時為繩索添加Edit Spline修改器進入Vertex編輯模式 并選中底部節(jié)點,為繩體添加Linked XForm修改器,拾取節(jié)點上對應(yīng)的虛擬體;按上述方法,依次制作繩索的節(jié)點綁定裝置。接著選中下方拉繩,進入Vertex編輯界面并選中所有頂點,為頂點添加Linked XForm修改器并拾取對應(yīng)的虛擬體,將上方的繩索底部的節(jié)點也綁定到同一虛擬體中。進入Hierarchy面板下的Link Info選項,勾掉Inherit選項卡下的Move選項中的x、y選項和Rotate選項中的x、y、z選項,使虛擬體只繼承z軸方向的運動,自定義繩體編輯如圖4。打開(Auto)動畫記錄按鈕,選中旋轉(zhuǎn)軸承,制作旋轉(zhuǎn)動畫,根據(jù)動畫調(diào)整虛擬體的位置,以適配繩子的運動。
圖4 自定義繩體編輯Fig.4 Custom rope editing
煤氣抽采動畫是整個模式中很重要的一個展示部分,它的抽采過程是從裂縫的形成到氣體游離再被抽采的過程。參照傳統(tǒng)模型動畫設(shè)計方法,這個過程是需要耗費大量的內(nèi)存空間,因為1個模型由一變成成百上千個的模型,成百上千的模型又由幾個面組成,面數(shù)的增加必然帶來內(nèi)存空間的大量占用,隨著面數(shù)的增多,直接影響三維動畫模型的編輯工作效率。因此,考慮到工作效率和性能指標,研究了一個更快捷的動畫特效替代方法,基于3DMAX工具,通過利用一個材質(zhì)貼圖的方法,實現(xiàn)煤層氣抽采動畫效果。主要設(shè)計步驟包括:①利用Vary的材質(zhì)球,使用VRLightMtl材質(zhì)中Opacity編輯它的混合貼圖,在顏色貼圖中選擇Noise貼圖,將貼圖模式調(diào)整為Explicit Map Channel模式,將貼圖類型調(diào)整為Fractal,并調(diào)整其他參數(shù);②添加Gradient Ramp貼圖到Mix貼圖的Mix Amount通道,在Gradient Ramp Parameters展卷欄下調(diào)整色值,黑色控制Mix的Color#1,白色的控制Color#2,將Gradient Type調(diào)整為Box方式,并將Noise的Amount的數(shù)值調(diào)整為0.1,類型為Fractal,將Mix的Color#2的色值調(diào)整為黑色,勾選VRayLightMtl材質(zhì)的Multiply color by opacity選項;③打開動畫控制按鈕,將Noise的V坐標調(diào)整到20,Phase調(diào)整為200;④材質(zhì)球編輯完成后,只需將此材質(zhì)賦予給模擬的模型上,即可完成氣體游離動畫過程的模擬。以往需要從破碎地質(zhì)體模型到裂隙模擬動畫生成再到氣體抽采的整個復(fù)雜過程,通過一個材質(zhì)貼圖輕松解決,與傳統(tǒng)的技術(shù)相比,大大提高了動畫制作工作效率。
分鏡頭是對抽象文字劇本轉(zhuǎn)變?yōu)榫呦螽嬅娴倪^程,是三維視頻動畫成功的關(guān)鍵,分鏡頭的應(yīng)用成為視頻動畫的重中之重。分鏡頭必須依據(jù)文字劇本來確定一個中心時間軸,機位、鏡頭角度依據(jù)配音的節(jié)奏來設(shè)置關(guān)鍵幀、鏡頭間轉(zhuǎn)場等[7-8]。從煤層氣開采模式整個的技術(shù)流程來看,存在時間與空間的錯綜復(fù)雜,縱橫交錯的迭代關(guān)系。研究了一套分鏡頭動態(tài)推演的設(shè)計方法:首先,設(shè)計出橫向時間順序的分鏡頭,這個分鏡頭主要以時間推演為中心。比如規(guī)劃區(qū)向前推進時,規(guī)劃區(qū)經(jīng)過一段時間的開發(fā)演變成了準備區(qū),準備區(qū)則隨時間的推進演變成了生產(chǎn)區(qū);其次,隨著分鏡頭推進需要為規(guī)劃區(qū)、準備區(qū)和生產(chǎn)區(qū)3個區(qū)之間的交界線處設(shè)定1個特定的標識線,標識線隨著時間的變化位置也跟著變化,實現(xiàn)在視覺上起到一個輔助作用,讓用戶在觀影時不會造成視覺混亂;接著,設(shè)計縱向分鏡頭,主要推演縱向空間上的關(guān)系,例如從地面到煤層空間上的轉(zhuǎn)換,再從煤層回到巖層上的變換,需要很好的處理分鏡頭的轉(zhuǎn)場問題,此時分鏡頭的設(shè)計可以是局部的,或者是畫中畫的展現(xiàn)形式來加以說明,讓觀眾更好的去理解技術(shù)細節(jié);最后,需要確定好分鏡頭的鏡頭角度、機位問題。比如要在一個畫面完整的動態(tài)模擬水力壓裂的抽采技術(shù),可以采用遠景機位與俯視角度的方法來設(shè)計,在三維空間上以整體效果展現(xiàn)給觀眾。分鏡頭動態(tài)推演如圖5。
圖5 分鏡頭動態(tài)推演Fig.5 Shooting dynam ic deduction
VRay渲染器是3DMAX軟件所匹配的性能極為優(yōu)秀的渲染器,它比3DMAX自身攜帶的渲染器在材質(zhì)與燈光上更勝一籌。如它的光線跟蹤、融合材質(zhì)等優(yōu)勢,被廣泛流行開來,就比如著名的好萊塢影片《阿凡達》《環(huán)太平洋》影片也是采用此渲染器渲染出來的效果[9-10]。VRay是一種結(jié)合了光線跟蹤和光能傳遞的渲染器,擁有完備的燈光,材質(zhì)和渲染工具,其真實的光線計算創(chuàng)建了專業(yè)的照明效果,為不同領(lǐng)域的優(yōu)秀視頻動畫作者提供了高質(zhì)量的圖片和動畫渲染。但是這種高質(zhì)量的圖片渲染時間往往很耗時,單機渲染一幅畫面需要10~30 min,甚至到1 h。一個幾分鐘的視頻動畫,需要花上幾天的時間才能渲染好,若其中有部分瑕疵則會導(dǎo)致重新修改再次渲染的問題。為了解決煤層氣開采動畫渲染時間效率問題,采用了基于Vary渲染器的GPU渲染技術(shù),對整個礦區(qū)煤層氣開采動畫場景進行渲染。
GPU英文的全稱Graphic Processing Unit,中文翻譯為“圖形處理器”,是顯卡的心臟。GPU采用的就是并行計算,在圖形渲染領(lǐng)域,不管是影視動畫、建筑表現(xiàn),還是CG廣告,GPU憑借其專為圖形加速而設(shè)計的架構(gòu)和計算能力,為用戶帶來了一種更加高效更快速度的可用性。VRay渲染器的GPU渲染采用最新的GPU渲染技術(shù),在材質(zhì)制作時可以實時顯示材質(zhì)的紋理變化,加快制作的效率與進度。相比于傳統(tǒng)的CPU渲染,GPU渲染的圖像細節(jié)更為豐富,效率更高。GPU渲染快到可以實時反饋渲染效果,快速預(yù)覽渲染效果,材質(zhì)和照明變化盡在眼前。
針對煤層氣開采模式視頻動畫制作過程中如何提高模擬仿真動畫精度與渲染時間效率等問題,探討了模擬仿真建模技術(shù)、IK骨骼動畫技術(shù)、煤層氣抽采動畫技術(shù)、自定義繩體技術(shù)、分鏡頭動態(tài)推演技術(shù)、VRay渲染器的GPU渲染技術(shù),成功應(yīng)用到“晉城、兩淮、松藻”煤層氣協(xié)調(diào)開采模式動畫設(shè)計中,使原本的動畫效果提高了一個新高度,工作效率得到了大大的提升,實現(xiàn)了更真實的模擬仿真特效,幫助用戶更直觀、更高效的理解煤與煤層氣開發(fā)技術(shù)。