魯逸凡
(武漢傳媒學(xué)院動畫系 湖北武漢 430064)
在三維模型資產(chǎn)制作流程中,賦予模型材質(zhì)時要先進(jìn)行UV 拆分[1],UV 拆分一般解決方案是手動拆分模型UV。而藝術(shù)工作者在處理批量化的模型或者大多數(shù)貼圖紋理樣式較隨機(jī)的模型時,運用手動拆分的方式耗時耗力效率低下,這時會選擇用UV映射的作為解決方案,比如:常見的平面映射和球體映射,可以快速實現(xiàn)對白膜的材質(zhì)構(gòu)建,節(jié)省UV拆分環(huán)節(jié)的時間。而實際處理過程中常用的貼圖映射相關(guān)方案難以達(dá)到預(yù)想效果,如投射方式限制所造成貼圖拉伸、重疊,以及有的模型根本沒有UV 屬性而無法拆分UV。Triplanar投射方案可以規(guī)避以上問題。Tri-planar投射早期是作為一種解決三維地形紋理拉伸的方案[2],近年來制作在資產(chǎn)創(chuàng)建環(huán)節(jié)得到推廣,被多個三維軟件內(nèi)置為一種貼圖投射功能選項。相比于以往依賴于根據(jù)模型頂點的UV 坐標(biāo)來映射紋理的投射方案,Triplanar的優(yōu)勢是基于模型三維空間位置為UV坐標(biāo),分別從X、Y、Z這3 個維度映射,并判斷模型面之間夾角角度,適配貼圖最小幅度拉伸,實現(xiàn)模型貼圖快速構(gòu)建。
該文將通過Substance Painter 三維材質(zhì)軟件來展現(xiàn)Tri-planar功能在實際案例中的運用,擴(kuò)展該貼圖軟件的實用與操作的特征,同時研究了Tri-planar映射的實操過程以及最終效果,再進(jìn)一步分析Tri-planar的未來可使用的領(lǐng)域范圍,為處理特定條件下優(yōu)化模型貼圖部分的流程提供了示范性思路。
在三維資產(chǎn)構(gòu)建中,當(dāng)模型結(jié)構(gòu)制作好了后,要賦予模型UV 屬性并根據(jù)需求調(diào)整,以便讓貼圖根據(jù)UV屬性匹配到模型表面,正確顯示材質(zhì)。其中UV 代表UV紋理貼圖坐標(biāo)的簡稱,這是三維軟件中除了用于三維資產(chǎn)構(gòu)建的XYZ世界坐標(biāo)外的一個坐標(biāo)系,主要作用是將三維模型空間信息轉(zhuǎn)換為二維屬性,來匹配作用于模型的各類貼圖,如顏色貼圖、法線貼圖等。
一般處理方案是手動拆分UV。手動拆分,即對模型的拓?fù)浣Y(jié)構(gòu)規(guī)劃好模型面之間的劃分區(qū)域,去分離模型UV,在UV 坐標(biāo)系里展開、布局拆分好的UV 區(qū)域,最終制作出合適的UV平面圖。美術(shù)工作者能根據(jù)對應(yīng)的UV平面圖去制作模型面對應(yīng)信息的通道貼圖。
手動拆分UV的優(yōu)點與缺點都比較顯著。首先手動拆分能被使用者靈活調(diào)整,對整體UV拆分、展開和細(xì)節(jié)調(diào)整的可控性極高;UV屬性也可根據(jù)需求手動編輯,有很好的可修改性,最終得到的UV貼圖往往是最貼合制作需求的;另外,市面上有以RizomUV為代表的自動拆分UV的軟件或者插件,有相對先進(jìn)的算法去自動拆分和布局模型UV,但需要手動校正與調(diào)整,一般作為手動拆分UV 中加速的UV 展開與布局的輔助功能使用。
其缺點也相對很明顯,首先對模型拓?fù)浣Y(jié)構(gòu)和頂點數(shù)有一定要求,拆解的模型拓?fù)漤氁鶕?jù)模型動態(tài)結(jié)構(gòu)布局,頂點數(shù)不能過多;拆分過程也要提前考慮好后續(xù)的UV劃分與拆解、UV坐標(biāo)上的布局,以及貼圖繪制時難以避免的由UV 拆分導(dǎo)致的一些三維中相連面的UV坐標(biāo)不連續(xù),會有縫隙貼圖接縫;其中手動拆解過程中需要調(diào)動大量相關(guān)的拆散功能和布局功能,對模型師的技術(shù)能力與經(jīng)驗都有一定要求。另外,在處理批量化的模型資產(chǎn)時如樹木、石頭等,手動拆分UV會在此過程中消耗大量時間與人力,但是得到的效果并不突出。
UV 拆分的目的是為了讓模型最終顯示正確的貼圖材質(zhì),不是所有情況下都需要手動拆分,在針對特定條件下不同模型會有相對應(yīng)的優(yōu)化方案。其中,通過紋理空間的UV坐標(biāo)與三維物體表面坐標(biāo)的映射關(guān)系,給三維物體頂點賦予色彩紋理,這個映射到三維物體上的過程被稱為紋理映射[3],因為涉及UV 坐標(biāo),所以也叫UV 映射,它包含創(chuàng)建、編輯和整理UV 的過程。UV映射可在三維視圖中快速賦與模型貼圖信息,可以根據(jù)預(yù)先設(shè)置的投射規(guī)律把貼圖信息轉(zhuǎn)換到模型表面上。相比于手動拆分UV,貼圖投射操作快速且方便。
藝術(shù)工作者在軟件中會常調(diào)用到不同類型的UV映射功能,這些映射功能的實現(xiàn)過程由模型的紋理空間映射到選取的中介面,再從中介面到三維物體空間的映射[4],其中中介面指投射曲面,曲面形態(tài)決定了投射的形態(tài)。常見的曲面有平面、球面、圓柱面等,所以大多三維軟件(以maya 和max 平臺為主)用的方案包含:平面映射、圓柱體映射、球體映射等。其中平面映射常用于單面片物體、矩形物體以及一些平整的多邊形面,如書籍照片、包裝盒、桌子等;圓柱體映射主要用于圓柱體和帶轉(zhuǎn)面的柱體狀物體,如鐵管、人物的臂膀、腿等;球體映射主要用于圓球型物體,如足球、燈泡等。這些方式可以直接對被映射模型給予顏色信息,同時如果需要調(diào)整貼圖位置則可以通過輸入或滑動參數(shù)按鍵,相比人為調(diào)整UV可以在操作上簡易很多,耗時小很多,如果模型和映射方式匹配適合,則可以直接跳過人為調(diào)整UV貼圖的環(huán)節(jié)。
而UV 映射也存在很多的問題,由于其依然基于UV坐標(biāo),當(dāng)投射角度不匹配模型面朝向會導(dǎo)致的紋理變形;由于投射圖像在UV 坐標(biāo)上的比例失調(diào)采樣失真,而導(dǎo)致視窗上模型圖像走樣鋸齒化等問題。
而且不同方式的投射也各有各的使用限制。平面映射存在的缺點是它再三維空間中只能向一個矢量方向投射,當(dāng)我們需要投射的貼圖表面沒朝向需求映射的方向或者產(chǎn)生映射角度偏差時,貼圖會沿著投射方向一直產(chǎn)生圖像拉伸。球體映射[5]也存在類似問題,雖然球體映射范圍是全角度投射不會受到任何投射角度的限制,但其投射角度最終會轉(zhuǎn)換為UV 坐標(biāo)來計算,即得到類似地球儀經(jīng)緯度的視覺效果,往兩極方位上有拉伸,越靠近頂端UV拉伸越嚴(yán)重。圓柱體映射的缺陷則是集成了兩者的問題,相對使用范圍更小。
綜合上述幾種投射的缺限,可以發(fā)現(xiàn)基于UV 坐標(biāo)的紋理映射方式都會受限于UV 坐標(biāo)本身和單一空間維度的空間方向的限制,在實際處理模型時容易造成貼圖拉伸而難以達(dá)到理想效果。那么從三維坐標(biāo)系的3 個軸向進(jìn)行各方向的貼圖映射并將這3 種投射間的邊緣混合起來,理論上可以解決投射方位和接縫的限制。Tri-planar 映射的原理就是用模型自身在三維空間坐標(biāo)系的頂點位置作為UV來實現(xiàn)貼圖的映射,并用模型法線或面朝向作為貼圖間的混合權(quán)重得到視覺上類似紋理合成[6]效果,因為這種映射可以看作是從空間坐標(biāo)的3 個平面朝向進(jìn)行映射,所以被叫作Triplanar。具體如圖1所示。
圖1 Tri-planar原理示意圖
基于上述原理,可以判斷出Tri-planar具有以下方面的優(yōu)缺點。
1.3.1 Tri-planar的優(yōu)點
(1)不依賴UV的映射。一般貼圖映射到模型,是根據(jù)模型每個頂點的UV坐標(biāo)來映射紋理。Tri-planar由于投射原理是基于世界坐標(biāo)信息,其UV屬性是世界坐標(biāo)信息轉(zhuǎn)換過來的,所以在處理一些帶有動態(tài)形變效果模型或代碼生成而沒有UV屬性的模型的貼圖時,不用像其他方法去考慮傳統(tǒng)UV帶來的效果影響。
(2)最多可支持3 種不同貼圖的映射混合。Triplanar方案是從3個維度進(jìn)行的投射貼圖,如果投射的不是單一的貼圖而是多張貼圖,理論上可以實現(xiàn)最多3種貼圖的混合使用。
1.3.2 Tri-planar的缺點
(1)運算速度相對比較耗時。由于Tri-planar方案是從3 個維度同時投射貼圖,其紋理搜索載入的耗時理論上是其他投射方案的3 倍。計算UV 坐標(biāo)和混合權(quán)重對電腦而言不是很繁重的工作,但當(dāng)運算量大了后,操作人員使用體驗和效率會大打折扣。如當(dāng)模型只是對漫反射或固有色紋理進(jìn)行Tri-planar處理時,使用時不會產(chǎn)生多大影響,但如果還計劃對模型的高光貼圖、法線圖、其他細(xì)節(jié)貼圖等進(jìn)行Tri-planar處理,尤其是貼圖精度越大的情況下,運行效果會卡頓。
(2)由于3 個方向投射對貼圖指向沒有很明確的方向性,對于處理紋理比較規(guī)則的貼圖時,在邊緣混合時難以遮掩消隱紋理邊緣,效果不佳。所以,對貼圖規(guī)律性強、有特定貼圖紋理接合需求的復(fù)雜模型不推薦使用Tri-planar處理。
根據(jù)已討論的原理和優(yōu)缺點,可以分析Tri-planar適用于處理哪些模型,為后續(xù)實際操作挑選適用的模型做測試。現(xiàn)一共列舉了以下幾類模型對象。
1.4.1 樹木
樹木類模型的樹干和樹枝模型拓?fù)浣Y(jié)構(gòu)繁雜,頂點數(shù)多,手動拆分UV需要花費大量時間,而這一類自然物體的紋理通常無序,接縫問題會凸顯。使用Triplanar 投射可以不用拆解UV,得到無拉伸且接縫不明顯的優(yōu)質(zhì)模型紋理。
1.4.2 石頭
創(chuàng)建巖石類資產(chǎn)與樹木問題類似,轉(zhuǎn)角結(jié)構(gòu)繁雜頂點數(shù)量眾多,塊面轉(zhuǎn)角的角度比較大,處理固有色和反射貼圖時可以使用Tri-planar映射避免接縫,但處理法線貼圖時沒有較好解決方案,推薦用高模烘焙貼圖到低模的傳統(tǒng)流程。
1.4.3 地形
Tri-planar 映射與地形修改功能配合使用可以在地形橫截面方向的紋理避免拉伸,在創(chuàng)建陡峭山坡,侵蝕地貌以及其他復(fù)雜地貌的紋理效果明顯。
1.4.4 程序生成模型
程序代碼生成的模型資產(chǎn)缺少UV 屬性,Triplanar映射能直接添加賦予模型紋理貼圖。
1.4.5 體素模型
體素模型指由VDB 體積文件轉(zhuǎn)換生成的幾何體模型,其模型本身的拓?fù)浣Y(jié)構(gòu)根據(jù)體積采樣而生成拓?fù)洌@種采樣生成的拓?fù)浣Y(jié)構(gòu),容易隨體積文件在空間中位置變換而改變,其UV屬性相對不穩(wěn)固,Tri-planar適合生成此類模型的紋理[7]。
在討論Tri-planar的原理和適用對象后,對美術(shù)工作者關(guān)鍵的還是操作實用性。出于演示與交互使用便捷性,此次測試使用Substance Painter 2020軟件進(jìn)行應(yīng)用操作。
Substance Painter(簡稱SP)是一款市面上流行的三維貼圖繪制軟件,這款軟件良好地融合了程序化貼圖和傳統(tǒng)手繪貼圖的操作方法的優(yōu)勢,使用者可以直觀地在視窗口看到投射貼圖模型的空間位置和貼圖拉伸情況,也能自定義調(diào)整參數(shù)得到所需要的貼圖邊緣混合效果。
考慮到Tri-planar的特征和適用處理對象,演示以一個紋理上比較隨機(jī)沒有強制規(guī)律性的樹木模型為例子,為了確保整個論文試驗中的材質(zhì)制作的嚴(yán)謹(jǐn)性,該文中的樹木模型在導(dǎo)入SP 軟件前對原有模型文件清除其UV屬性,確保原始模型的UV屬性值不會對后續(xù)制作產(chǎn)生偏差影響。
此次測試先把準(zhǔn)備好的樹木模型導(dǎo)入3ds Max 軟件,對模型屬性編輯,使用修改器面板下的“UVW貼圖清除”功能選項,可得到?jīng)]有UV 屬性的模型,導(dǎo)出obj文件。
打開SP軟件后,直接導(dǎo)入處理后的樹木模型會發(fā)現(xiàn)報錯,這是因為SP本身是手動繪制軟件對導(dǎo)入模型必須要求有UV屬性。這里正常導(dǎo)入需要在SP功能欄下的“設(shè)置”選項中,勾選“導(dǎo)入模型的UV自動拆分”選項后,就能正常導(dǎo)入。賦予模型的UV屬性可保證模型在SP中正常支持手動繪制貼圖和投射貼圖兩種方案,前文介紹優(yōu)點提到投射也不會影響本身模型的UV屬性。
樹木模型導(dǎo)入后顯示白膜狀態(tài),這時候給予一個填充圖層,在圖層通道下只勾選固有色(base color)通道,確定好后下方通道列表內(nèi)只顯示固有色的通道,之后選擇樹皮紋理的圖像或者紋理類似的程序化噪波貼圖,鼠標(biāo)按住對應(yīng)的貼圖拖入固有色鏈接通道內(nèi),模型得到紋理顯示。若視覺上會發(fā)現(xiàn)明顯的貼圖比例不正確的情況,可在屬性調(diào)整欄中的比例滑塊里調(diào)整貼圖縮放尺寸。在視覺上調(diào)整到的一個舒適的值后,拉近視圖檢查模型貼圖匹配程度,可發(fā)現(xiàn)樹干、樹枝周圍的接縫情況比較嚴(yán)重,貼圖不規(guī)律感強顯得凌亂。因為此時的投射方案默認(rèn)為按模型UV投射,需要切換投射模式。找到“properties—填充”模塊下的“投射”,模式切換為“Tri-planar projection”的選項,得到Tri-planar映射貼圖到模型。可能由于兩種投射模式不同,貼圖顯示比例有一定差別,這時候可以再次調(diào)整貼圖的比例大小。同時可以發(fā)現(xiàn)切換投射模式后貼圖的接縫問題基本得到解決,而若想調(diào)整接縫融合的程度(或稱權(quán)重),在投射選項下找到“硬度”滑塊,通過滑動滑塊可以看到紋理接縫的融合和重疊程度變化。此時在選中圖層的情況下,可配合著鼠標(biāo)控制移動、旋轉(zhuǎn)投射貼圖在三維視圖中的中心位置和朝向,改變投射到模型表面上紋理的布局和隨機(jī)性。調(diào)整后得到適合的模型貼圖,從局部(圖2(a))和整體(圖2(b))觀察紋理,沒有任何拉伸和接縫問題。
圖2 Tri-planar處理的樹木模型貼圖效果
接著要將視窗口呈現(xiàn)的貼圖烘焙,作為模型的貼圖輸出,可在各三維平臺間跨越使用。檢查無誤之后選擇功能欄下“文件”,打開“導(dǎo)出貼圖”,在“導(dǎo)出模板”模塊去自定義輸出的固有色通道,以及在“設(shè)置”下的選定輸出文件夾和圖像尺寸,這里使用常規(guī)的2048×2048,保存為16位.png格式,最終輸出。
此次測試僅輸出固有色通道直觀測試Tri-planar的映射效果,而如果對模型其他通道和基本紋理有更多需求,可以在此基礎(chǔ)上繼續(xù)添加圖層進(jìn)行紋理添加和手繪調(diào)整,但軟件技術(shù)操作和藝術(shù)細(xì)化內(nèi)容不在此次研究范圍內(nèi)而不再展開。
通過實踐可以發(fā)現(xiàn)使用Tri-planar 投射方式能在短時間內(nèi),對紋理隨機(jī)、沒有特殊貼圖要求的復(fù)雜樹木模型制作出質(zhì)量不錯的紋理貼圖,而且期間沒有改動任何UV信息。生成的模型貼圖可以直接投入使用。
近年來,學(xué)術(shù)界熱衷于各領(lǐng)域機(jī)器深度學(xué)習(xí)的研究,三維游戲和影視也越來越趨向于各類程序化的生成研究,在上述原理講述和操作中,可以注意到Triplanar 的操作思路很適合用于批量化,程序化生成的模型貼圖制作流程。2017年,Houdini 17.0版本中推出了PDG(Procedural Dependency Graph)系統(tǒng),一個可調(diào)用多核并行運算的資源調(diào)度管理系統(tǒng),給予了使用人員批量化生成同類型資產(chǎn)的基礎(chǔ)。2019年游戲《漫威蜘蛛俠》在GDC游戲開發(fā)者大會的技術(shù)展示中[8],整個游戲場景系統(tǒng)大多通過程序化自動生成與優(yōu)化,其中包括大量的各類城區(qū)地形、植被、道具資產(chǎn),讓批量化生成差異性的三維資產(chǎn)方面看到了有極大的可能性。那么在未來的研究中可以嘗試配合Houdini 的PDG 系統(tǒng)生成道具類或自然類模型時,加入Tri-planar投射環(huán)節(jié),測試反饋批量化資產(chǎn)模型生成的模型貼圖的效果質(zhì)量,探索模型與匹配貼圖的快速生成流程的可能。
該文介紹了Tri-planar 投射的特點,并在SP 軟件中通過運用Tri-planar功能以及調(diào)整相關(guān)參數(shù),在未改動調(diào)整UV的情況下,快速制作了無貼圖接縫和明顯拉伸效果的樹木模型貼圖。該文介紹的Tri-planar 映射方案,在處理對紋理隨機(jī)性強且對貼圖接縫量多的一類模型時,如樹木、石塊等自然類資產(chǎn),減少了調(diào)整UV的環(huán)節(jié),同時讓使用者可以自由調(diào)控模型貼圖映射位置與貼圖邊界融合程度,配合直觀的手動繪制貼圖可達(dá)到更好的效果。在掌握該文貼圖知識點的基礎(chǔ)上,可以在其他軟件平臺內(nèi)部調(diào)用Tri-planar 功能制作紋理貼圖以及嘗試更深入的技術(shù),比如:可以在Houdini平臺中配合其PDG系統(tǒng),批量化生成可復(fù)用的模型資產(chǎn)中的無接縫貼圖。