UE4風(fēng)格化場(chǎng)景全流程——②樹的建模、雕刻與烘培
【中字】虛幻引擎UE4創(chuàng)建風(fēng)格化場(chǎng)景全流程教學(xué)
【UE4風(fēng)格化】【人工翻譯】虛幻4風(fēng)格化環(huán)境制作教程
本文為up學(xué)習(xí)筆記及踩坑記錄,會(huì)結(jié)合我知道的知識(shí)點(diǎn)擴(kuò)展
項(xiàng)目源文件請(qǐng)到上面視頻鏈接的評(píng)論區(qū)下載
歡迎大佬指出我的錯(cuò)誤,若圖片太小請(qǐng)放大觀看(網(wǎng)頁(yè)端縮放瀏覽器)
上一篇文章:UE4風(fēng)格化場(chǎng)景全流程——①項(xiàng)目設(shè)置及地形創(chuàng)建
Blender建模
我們打開Blender,也可以用你習(xí)慣的建模軟件,視頻中導(dǎo)入了UE4默認(rèn)的人偶作為參照物,通常我們制作資產(chǎn)的時(shí)候都需要根據(jù)項(xiàng)目規(guī)定統(tǒng)一的參照,不然就容易出現(xiàn)各個(gè)美術(shù)產(chǎn)出模型大小不一的情況。這里我們將場(chǎng)景中立方體設(shè)定為1.8m高,z軸向上移動(dòng)0.9m使立方體底面和xy平面對(duì)齊,和人偶一致。

將立方體拖至一邊,shift+鼠標(biāo)左鍵按住某一軸拖動(dòng)時(shí)會(huì)在除這軸外的平面移動(dòng), ctrl+鼠標(biāo)左鍵按住某一軸拖動(dòng)時(shí)會(huì)僅在這軸方向上移動(dòng)。SpeedTree、grove 3D等預(yù)生成軟件都可以制作樹,但這是全流程教程所以還是自己做一遍。我們?cè)谏厦娌藛翁砑?網(wǎng)格-平面,或者shift+A網(wǎng)格-平面,按Tab進(jìn)入編輯模式,數(shù)字鍵123可切換點(diǎn)線面選擇,在保證所有點(diǎn)或者線或者面被選中的情況下按M合并到中心,再切換到點(diǎn)模式,可以看到原點(diǎn)有個(gè)點(diǎn),按Tab回到物體模式可以移動(dòng)這個(gè)點(diǎn)。

保證點(diǎn)在世界原點(diǎn),在右側(cè)工具欄點(diǎn)擊扳手,給它添加蒙皮修改器和表面細(xì)分修改器(注意添加順序)。在點(diǎn)編輯模式下按E擠出(面模式會(huì)變成移動(dòng)),再按Z會(huì)鎖定擠出方向?yàn)閆軸(按X或Y會(huì)鎖定X或Y軸,按C會(huì)解除鎖定),我們得到了樹干。

我們可以放一張樹的照片或2D概念圖放后面做參考,直接沿著參考圖的軌跡建模,通常美術(shù)制作資產(chǎn)需要原畫的三視圖做參考,但一定要注意透視的影響,這里我們自由發(fā)揮。為了更好的觀察樹干的粗細(xì),我還是導(dǎo)入了UE4默認(rèn)人物作為參考,導(dǎo)入方法為打開UE4創(chuàng)建一個(gè)第三人稱游戲模板,在Mannequin(人體模型)-Character(人物)-Mesh(網(wǎng)格)底下找到人物模型,右鍵資產(chǎn)-導(dǎo)出。

再在Blender中導(dǎo)入該模型,按自己的習(xí)慣擺放參照位置,可以在場(chǎng)景集合里點(diǎn)模型下root的的眼睛使其不可見,避免干擾視圖。

你可以根據(jù)自己的需要在表面細(xì)分著色器里增加采樣數(shù),即視圖層級(jí)。我們?cè)诿善ば薷钠骼镩_啟平滑著色,因?yàn)檫@個(gè)不是網(wǎng)格體,所以無法直接對(duì)模型使用右鍵平滑著色。

我們將其向左上方擠出并縮小一點(diǎn),因?yàn)闃涓傻綐渲?huì)越來越細(xì),記住要選中點(diǎn)擠出縮?。げ逻@建模邏輯就是將點(diǎn)擠出為新的點(diǎn),然后在蒙皮修改器的作用下生成圍繞點(diǎn)及連接線段的預(yù)制網(wǎng)格體,點(diǎn)記錄了位置信息和縮放信息,up曾經(jīng)只在maya擠出過面),再在上一個(gè)點(diǎn)向右擠出做出分支。

請(qǐng)自行發(fā)揮構(gòu)建自己喜歡的形狀,每個(gè)擠出點(diǎn)都可以再進(jìn)行位置調(diào)整和縮放,記得要符合從粗到細(xì)的邏輯。按z會(huì)出現(xiàn)選框,鼠標(biāo)左滑選擇線框模式可以查看模型的布線(或z+4)。

但到目前為止我們做的都是一個(gè)平面上的分支,所以我們切換到三維視角,給樹枝在y方向進(jìn)行一些偏移,也可以按自己喜好在y方向進(jìn)行擠出,注意避免過于整齊。若遇到褶皺,通常是擠出點(diǎn)之間離得太近了,稍微調(diào)整下距離就可以解決。

回到線框模式,可以看到樹的面數(shù)比較多,理想情況下我們需要減少面數(shù),為了優(yōu)化空間與運(yùn)行時(shí)性能,導(dǎo)入引擎前還需要一個(gè)面數(shù)較低的低模,不過這些可以在后面的ZBrush里實(shí)現(xiàn)。還有一種快速的優(yōu)化方式,在修改器里添加精簡(jiǎn)(Decimate)修改器,調(diào)整比率(ratio),在線框模式下可以很明顯的看到點(diǎn)減少面片三角化,直到只剩一個(gè)三角面(有趣的是up比率為1的時(shí)候模型干干凈凈,比率0.9幾的時(shí)候反而多了很多布線,就像被細(xì)分了一樣),注意這種方法會(huì)破壞你的布線,使得拆分UV十分困難,通常建模時(shí)要保證每個(gè)面都是四邊形且均勻分布。

去掉剛剛的精簡(jiǎn)修改器,繼續(xù)修改我們的模型,你可以在編輯模式下選中擠出點(diǎn)shift+v沿?cái)D出方向拖動(dòng),如果窗口右上角開啟了自動(dòng)合并頂點(diǎn),當(dāng)頂點(diǎn)和其他頂點(diǎn)位置重合時(shí)會(huì)合并,可以用這種方法消除擠出點(diǎn)。注意縮放的時(shí)候鼠標(biāo)不要離點(diǎn)太近,如果在很近的時(shí)候開啟縮放可能無法正確縮小,特別是幾乎重疊的時(shí)候(盲猜是每次快捷鍵開啟縮放時(shí),blender將鼠標(biāo)離點(diǎn)的距離作為一個(gè)標(biāo)準(zhǔn)縮放單位)。這樣我們就得到了最終的模型(不要忘了檢查下褶皺或其他錯(cuò)誤哦),up小技巧:最終造型階段,可以從各個(gè)視角觀察下,盡可能保持每個(gè)區(qū)域樹枝差不多多,同時(shí)樹枝的方向要有差異,可以想象下樹長(zhǎng)滿樹葉的樣子(樹葉是一整個(gè)不規(guī)則球形套在樹冠上的,所以要保證各個(gè)區(qū)域密度相似),同時(shí)這個(gè)樹雖然是歪著長(zhǎng)的,但重心還是在中軸線,看上去比較符合物理。

如果你覺得某個(gè)地方轉(zhuǎn)角太硬了,可以選擇那個(gè)擠出點(diǎn),shift+ctrl+B進(jìn)行倒角,可以理解為添加點(diǎn)使得模型看起來更平滑,鼠標(biāo)滾輪可以控制添加的點(diǎn)數(shù)量,如圖所示線框視圖下添加的倒角(注意末端是無法添加倒角的)。

我們復(fù)制一份我們的模型放到一旁做備份,命名為tree_backup,主模型命名為sm_tree,新建一個(gè)集合tree存放這兩個(gè)模型,給sm_tree應(yīng)用修改器。選中sm_tree,文件-導(dǎo)出-fbx,命名為sm_tree,記得勾選Limit to選定的物體,不然會(huì)整個(gè)項(xiàng)目導(dǎo)出。

可以看到導(dǎo)出界面還有個(gè)變換,改變坐標(biāo)軸朝向,Blender建模的的時(shí)候是Z軸朝上的右手坐標(biāo)系,unity中模型和世界空間都是左手坐標(biāo)系,世界空間Y軸朝上,觀察空間是右手坐標(biāo)系,UE4中世界空間為Z軸朝上的左手坐標(biāo)系(坐標(biāo)系這塊我還會(huì)再開新坑學(xué)習(xí),有興趣的朋友可以先看《shader入門精要》的4.2笛卡爾坐標(biāo)系),所以u(píng)p好奇將模型導(dǎo)入了untiy和UE4,都沒有發(fā)生軸向的反轉(zhuǎn),唯獨(dú)unity預(yù)覽的模型出現(xiàn)了偏轉(zhuǎn),可以看到在unity世界空間中,選中模型還是Z軸向上的左手坐標(biāo)系,很好奇是導(dǎo)出過程中就完成了變換還是引擎自動(dòng)識(shí)別了。

ZBrush雕刻樹干
我們打開ZBrush,在上方菜單找到Z插件-FBX導(dǎo)出與導(dǎo)入,找到我們剛剛的sm_tree導(dǎo)入,可以看到模型以及載入了右邊的工具面板里,鼠標(biāo)左鍵拖拽就會(huì)出現(xiàn)相應(yīng)大小的模型。但是你會(huì)發(fā)現(xiàn)你只能拖拽出一個(gè)個(gè)模型并不能編輯它們,ctrl+N清除所有模型,當(dāng)你拖拽一個(gè)模型的時(shí)候,按住shift可以在水平、豎直和或45°角方向上對(duì)齊,再按住T進(jìn)入編輯模式,按F可以使物體居中,按住shift+鼠標(biāo)右鍵可以對(duì)齊到軸線視角。我們可以在燈箱-筆刷中找到一些左邊標(biāo)準(zhǔn)筆刷中沒有的筆刷,可以自行嘗試一些獨(dú)特風(fēng)格筆刷,從網(wǎng)上下載后放入ZBrush安裝目錄的ZBrushes文件夾中,視頻中常用Trim(使物體表面平化)。

在右側(cè)子工具中找到幾何體編輯-細(xì)分網(wǎng)絡(luò),視頻中因?yàn)闆]有點(diǎn)平滑就點(diǎn)了細(xì)分網(wǎng)絡(luò),所以還進(jìn)行了一步刪除高級(jí),可以用這個(gè)辦法刪除錯(cuò)誤的細(xì)分網(wǎng)絡(luò)(就是因?yàn)檫@步up觀察到自己模型底部沒處理好,回去修改了下模型,其實(shí)底部埋在地下看不見,可以不處理)。我們開啟平滑細(xì)分網(wǎng)格4次(細(xì)分級(jí)別5),細(xì)分級(jí)別越高模型越精細(xì),左側(cè)筆刷欄里選擇ClayTubes,alt+鼠標(biāo)左鍵移動(dòng)視角,alt+鼠標(biāo)左鍵再放開alt縮放視角(賊反人類,Blender里用shift作功能鍵也反人類,一般要么ctrl要么alt),shift+F可以查看模型的布線。

我們主要雕刻樹干部分,因?yàn)檫@部分是常被看見的區(qū)域,而樹冠被樹葉遮住,制作的時(shí)候可以減少一些細(xì)節(jié)。中括號(hào)鍵可以放大縮小筆刷大小,在樹干上畫出S形的曲線,再一筆一筆畫出類似樹皮那種干燥的豎線。注意筆刷的大小和強(qiáng)度,特別是較細(xì)的樹枝,若筆刷大小過大就會(huì)出現(xiàn)狗啃一樣的奇怪缺口,大家也可以換用其他筆刷制作自己想要的感覺。

up用了wood(木材)筆刷,但看起來有點(diǎn)過于粗糙了,這不太適用于風(fēng)格化資產(chǎn),風(fēng)格化項(xiàng)目一般要求干凈簡(jiǎn)潔,所以u(píng)p準(zhǔn)備重做。用TrimSmoothBorder可以平滑平面,不按alt使用時(shí)向內(nèi)平滑,類似于削去了一塊,按住alt使用時(shí)向外平滑,類似于填坑筑路,可以用來減少細(xì)節(jié)。up經(jīng)驗(yàn)概括:盡量保留豎線斜線,避免同一區(qū)域過于密集雜亂,也要避免菱角過于突出或筆直。細(xì)節(jié)的精細(xì)度完全取決于你花的時(shí)間,但這是一個(gè)要被到處復(fù)用的資產(chǎn),不需要花太多的時(shí)間,在保證各角度做出差異的同時(shí),也要保證特征不會(huì)過于明顯,不然就容易被認(rèn)出來是復(fù)用的素材。

最后再做一次細(xì)分網(wǎng)絡(luò),不要開啟平滑,這樣就不會(huì)丟失細(xì)節(jié)了,但如果你覺得太雜亂,也可以做一次平滑細(xì)分,這樣會(huì)減小細(xì)節(jié)并使棱角更圓滑。樹枝也和樹干一樣的處理方式,要保證風(fēng)格統(tǒng)一,若遇到處理后狗啃了一樣的情況,縮小筆刷并按住alt用TrimSmoothBorder筆刷向外平滑填坑,再放開alt對(duì)平滑后的邊緣再次向內(nèi)平滑,將一個(gè)平滑硬邊變?yōu)閮蓚€(gè)線段,up愿稱之為開線[/doge]。做完之后不要忘了檢查一下有沒有遺漏的地方,再用Orb_slah_Curve筆刷在特征處制作刮痕(需要網(wǎng)上下載),還可以用其他筆刷添加一些細(xì)節(jié)。

我們先用Z插件-FBX導(dǎo)出與導(dǎo)入將高模導(dǎo)出,命名為sm_tree_high,再將細(xì)分級(jí)別調(diào)為1,導(dǎo)出底模,命名為sm_tree_low,接著我們來創(chuàng)建樹冠。我們要為樹葉創(chuàng)建一個(gè)低模多邊形網(wǎng)格,它會(huì)有大小相近的四邊形面,在虛幻中,我們讓模型的每一個(gè)面片都成為一個(gè)Billboard(根據(jù)觀察者視角定向的帶紋理的矩形稱之為Billboard),所以我們要把模型的每一個(gè)面展開到UV坐標(biāo)系下,U軸和V軸均在0~1范圍內(nèi),人們稱之為多象限UV。每一個(gè)UV不能重疊,每一個(gè)面的坐標(biāo)都處于0~1的UV空間中(存疑,從原理上來說應(yīng)該是將每一個(gè)面鋪滿0~1的UV空間,所以每一個(gè)面都是重疊的)。然后我們我為它創(chuàng)建一個(gè)不透明度蒙版,可以通過AI或PS完成,最后在虛幻中為它制作材質(zhì)。

ZBrush雕刻樹冠
點(diǎn)擊子工具-追加-Shpere3D,添加一個(gè)球體(大家一定不要忘記保存?。。p添加球體的時(shí)候出錯(cuò),重啟后之前的雕刻都丟失了[/大哭])(感謝自動(dòng)保存?。?![/感動(dòng)涕零]雖然不知道是哪一版本,如果大家也遇到這個(gè)問題,可以點(diǎn)燈箱-快速保存找到記錄),然后在左邊標(biāo)準(zhǔn)筆刷欄里選擇Transpose,這個(gè)是移動(dòng)縮放工具(不用按T切換模式?。?!有可能切換不回來?。。。⑶蝮w縮放移動(dòng)到樹冠的位置(記得在子工具欄點(diǎn)球體),大致縮放成不完全包裹樹冠的橢圓形(不要忘記了側(cè)面)。

接下來選擇Standard(標(biāo)準(zhǔn))筆刷,也可以直接上面菜單點(diǎn)擊繪制,直接鼠標(biāo)繪制使網(wǎng)格體向外擴(kuò)展,按住alt鍵向內(nèi)凹陷。up經(jīng)驗(yàn)分享:首先包裹住每個(gè)樹枝尖,注意樹葉間的連貫性,不要有相鄰的兩個(gè)對(duì)比過大的突起,再縮放筆刷的大小做出不同大小的小突起豐富層次,也可以自定義一些有趣的形狀。標(biāo)準(zhǔn)筆刷中的Move筆刷可以直接拖動(dòng)筆刷影響范圍內(nèi)的面移動(dòng),按住shift會(huì)切換成平滑筆刷(不要忘了編輯底部,可以用凹陷做出點(diǎn)坑與溝壕)。

記得保存!記得保存!記得保存!重要的事情說三遍!我們shift+F查看樹葉的網(wǎng)格,因?yàn)槊恳粋€(gè)面都是一個(gè)Billboard,過多的Billboard會(huì)對(duì)樹葉的外輪廓造成影響,所以我們要減少它的面數(shù)(頂部的布線也不正確,應(yīng)該是均勻分布的相近大小四邊形)。我們?cè)趲缀误w編輯里找到ZRemesher(自動(dòng)拓?fù)洳季€),將自適應(yīng)大?。ˋdaptiveSize)調(diào)為0,曲線強(qiáng)度(Curves Strength)也調(diào)為0,目標(biāo)多邊形數(shù)調(diào)為0.6,按ZRemesher自動(dòng)拓?fù)洳季€,如果對(duì)面數(shù)不滿意可以自行調(diào)整多邊形數(shù),再在拓?fù)渫甑木W(wǎng)格體上稍作修改。

重新拓?fù)?/p>
右側(cè)工具欄找到UV貼圖,我們創(chuàng)建一個(gè)512大小的UV貼圖,點(diǎn)創(chuàng)建里的UV平鋪。我們單獨(dú)導(dǎo)出樹冠,命名為sm_treetop(記得檢查下導(dǎo)出對(duì)象是已選、可見還是全部)?;氐紹lender,導(dǎo)入sm_treetop看一下效果(up覺得自己做的有點(diǎn)丑)。鼠標(biāo)移至窗口相交的地方成十字準(zhǔn)星形,向左托出新的窗口并改為UV編輯器。進(jìn)入面編輯模式,左上角開啟UV選區(qū)同步(將UV與編輯模式下的網(wǎng)格選區(qū)保持同步,視頻中關(guān)閉了同步,其實(shí)開不開都能看出來),選中一個(gè)面,可以看到每個(gè)面都在UV空間的相同位置,即U和V坐標(biāo)從0到1(所以是重疊的?。。。?。

視頻中刪除了現(xiàn)有的UV,重新演示了下在Blender里展UV的方法,這步可以不做。右邊工具欄找到物體數(shù)據(jù)屬性(綠色三角形)-UV貼圖-減號(hào)刪除,在編輯模式下按A選中所有物體,ctrl+E標(biāo)記縫合邊,接著按U-重置,可以看到和之前的結(jié)果是一樣的。

我們把樹冠命名為sm_treetop,放入tree的集合。我們把sm_tree備份后刪除或直接移到一旁去,導(dǎo)入sm_tree_low,會(huì)發(fā)現(xiàn)和之前的網(wǎng)格在同一位置,因?yàn)閆Brush在世界原點(diǎn)導(dǎo)出物體(我感覺是因?yàn)槲覀傿lender建模就是將物體放在原點(diǎn)中央的,有空試試不在原點(diǎn)導(dǎo)出到ZBrush再導(dǎo)回來會(huì)不會(huì)在原點(diǎn)),而且可以看到樹枝因?yàn)橛昧颂啻喂P刷出現(xiàn)了狗啃的痕跡(明明up修復(fù)過,看來是丟失存檔回到之前的快速保存了)。我們按shift+tab開啟吸附,將sm_treetop移至一邊(實(shí)際使用中并不是吸附到網(wǎng)格上,而是固定一個(gè)網(wǎng)格單位移動(dòng))。

我們還需要下載一個(gè)Texel_Density插件,這個(gè)材質(zhì)可以快速檢查Texel密度(Texel密度即像素比率,表示網(wǎng)格上紋理分辨率的密度),Texel密度用于確保模型的紋理處于適當(dāng)?shù)母叨群蛯挾?,這樣紋理看起來就不會(huì)拉伸、模糊或錯(cuò)誤。Texel密度紋理運(yùn)作的方式是通過在模型表面鋪上棋盤格紋理,如果棋盤格紋理看起來正確,那我們的Texel密度就是正確的,如果棋盤格紋理看起來模糊或拉伸,我們就需要對(duì)網(wǎng)格進(jìn)行處理。但是沒有這個(gè)插件也不影響我們展UV,需要自己把控網(wǎng)格的密度(視頻中并未演示Texel_Density的使用方法,up找到的和視頻里也不一樣,需要的朋友可以看一下這個(gè)視頻blender UV貼圖精度統(tǒng)一插件(Texel_Density),展UV插件(uv_toolkit),作者簡(jiǎn)介里有下載鏈接,編輯-偏好設(shè)置-插件-安裝,注意uv_toolkit只能在UV窗口下使用)。

我們切換到面編輯模式,刪除樹根底面,再切換到線編輯模式,把模型想象成2D平面(或者想象動(dòng)物皮展開的樣子),按住alt鍵雙擊環(huán)選線段,按住shift加選線段,右鍵標(biāo)記縫合邊。展UV一直是up的難點(diǎn),每個(gè)人展出來的UV也不同,up個(gè)人習(xí)慣是盡量保持不同部位的縫合線連續(xù),因?yàn)椴贿B續(xù)容易造成貼圖斷裂或者銜接不自然。先將樹分成不同的樹枝樹干,縫合邊盡量藏在樹枝朝里的部分,這樣不容易被看見,同一部分盡量只用一條縫合邊展開,樹枝的枝頭最好使用合并點(diǎn)處理一下(待定,考慮到枝頭不一定那么尖,但要注意縫合邊是否經(jīng)過樹尖的頂點(diǎn)),遇到3岔的樹干視頻中是將頂部另外分出來分成4塊,若布線流暢可以將頂部分到3個(gè)面去分成三塊。最后A鍵全選面再U-展開,如下圖。

我們可以使用uv_toolkit插件的功能為模型附上棋盤格貼圖,在UV Editing視窗下點(diǎn)擊插件-Checker Map-Checker Grid(棋盤格網(wǎng)格)或彩色柵格圖-Quick Presets-正方形確定一個(gè)分辨率,我用了1024×1024的棋盤格網(wǎng)格,可以看到紋理并沒有嚴(yán)重的拉伸

也可以點(diǎn)擊右上角兩個(gè)圓圈旁的箭頭-UV編輯-顯示拉伸,可以看到UV變成了藍(lán)色,從藍(lán)到紅表示拉伸的程度,部分淺藍(lán)色的說明UV有點(diǎn)拉伸,不過在整體視覺上影響不大。(可以選擇一個(gè)面片,再ctrl+L選擇這個(gè)面片所屬的部分,用uv_toolkit插件-展開或?qū)R網(wǎng)格,但不規(guī)則網(wǎng)格對(duì)齊時(shí)頂點(diǎn)會(huì)出現(xiàn)異常)

補(bǔ)充:Texel_Density插件的用法,Texture Size表示UV框的尺寸,即紋理的分辨率,Set my TD表示設(shè)定我的紋理密度,下面的數(shù)字可以快速設(shè)定模型UV的像素(up還沒有理解它的單位),需要查詢當(dāng)前UV密度的話選中UV,點(diǎn)Calculate TD,上面會(huì)顯示占用空間和密度大小。

視頻作者通常將可見部分樹干UV放大使其有更大的Texel密度(疑問,這樣不會(huì)使得縫合邊處差別更大嗎?),然后通過烘培查看當(dāng)前Texel密度是否足夠。但目前UV整體看起來效果不錯(cuò),所以作者只將樹干的縫合邊向上調(diào)整,使可見部分更加連續(xù)。up嘗試了對(duì)半豎切的方式,想使樹干部分UV更加完整,但發(fā)現(xiàn)這樣Texel密度會(huì)很小。

最終up還是選擇將各個(gè)樹枝分開,優(yōu)先保證整體UV的利用率,再沿著延續(xù)的環(huán)線切割,注意要經(jīng)過樹枝的頂點(diǎn),不然樹枝頭的UV會(huì)被拉伸。若三個(gè)四邊形互相相接且呈三角形拉伸(或相鄰四邊形為單數(shù)時(shí)),會(huì)導(dǎo)致環(huán)線斷裂且UV拉伸。

然后我們將其導(dǎo)出為FBX格式,覆蓋之前的sm_tree_low,因?yàn)檫@是拆分好UV的同一模型,記得勾選包括-Limit to-選定的物體。

我們打開substance painter,新版的SP被Adobe收購(gòu)后界面有所不同,且圖標(biāo)變成了Pt。我們選擇文件-新建,模板選擇UE4,文件分辨率用4096,文件選擇我們剛剛導(dǎo)出的sm_tree_low了,關(guān)掉導(dǎo)入鏡頭和自動(dòng)展開,對(duì)于其他規(guī)則的模型,如果沒有手動(dòng)展UV可以嘗試使用這個(gè)自動(dòng)展開,但對(duì)于樹效果不太好,如果你在其他軟件為模型添加了法線貼圖,可以在Import Backed Maps導(dǎo)入法線貼圖,但這里我們使用Pt來給模型制作法線貼圖。

點(diǎn)OK,我們可以看到樹的白膜,Alt+鼠標(biāo)左鍵旋轉(zhuǎn),Alt+鼠標(biāo)中鍵移動(dòng)(習(xí)慣了Blender的操作后又有點(diǎn)不習(xí)慣這種操作了[/捂臉]),F(xiàn)1、F2切換3D/2D視圖,旋轉(zhuǎn)的時(shí)候再按住shift可以對(duì)齊軸,按F可以使得模型或是UV居中占滿屏幕。我們點(diǎn)擊右側(cè)紋理集設(shè)置-烘培模型貼圖。

烘培是把高模的細(xì)節(jié)通過貼圖投射到底模上面,這樣我們就能在低模的內(nèi)存預(yù)算下,得到高模的細(xì)節(jié)表現(xiàn)。這是常見的優(yōu)化方法,因?yàn)槟壳暗挠布y以實(shí)時(shí)運(yùn)算過多的多邊形。但這個(gè)方法最終呈現(xiàn)的效果取決于法線貼圖的光照計(jì)算,且從邊緣看依舊能發(fā)現(xiàn)是光滑的表面。在烘培的通用參數(shù)里,我們要把輸出大小設(shè)為4096,和文件分辨率一致,膨脹寬度(Dilation Width)為1,勾選應(yīng)用漫反射,并選擇我們之前的高模sm_tree_high。對(duì)于高模,在空間上與低模處于相同位置是十分重要的,因?yàn)楹媾嗟膶?shí)現(xiàn)方式是由Pt投射不同角度光線,這些光線經(jīng)過高模映射在低模上,由此記錄高模相同位置的細(xì)節(jié),所以如果高低模不在同一位置就會(huì)出現(xiàn)映射錯(cuò)誤。投射細(xì)節(jié)前Pt會(huì)在模型周圍生成一個(gè)包裹(cage),如果你手動(dòng)創(chuàng)建了包裹,可以勾選使用包裹并導(dǎo)入它,如果你沒有指定的包裹,Pt會(huì)自動(dòng)創(chuàng)建一個(gè)包裹。

低模后綴和高模后綴通常用于批量烘培,就和我們標(biāo)注的一樣。這里的模型貼圖分別有:Normal(法線)、World space normal(世界空間法線)、ID(ID識(shí)別圖)、Ambient?occlusion(環(huán)境光遮蔽貼圖)、Curvature(曲率貼圖)、Position(模型上所有點(diǎn)位置)、Thickness(厚度),這些貼圖可以用來驅(qū)動(dòng)智能材質(zhì)或生成器。正式烘培前我們要檢查一下我們烘培是否能成功,最快的方法就是檢查法線,所以我們這里只勾選Normal進(jìn)行烘培。

法線烘培完成后,我們可以明顯看到樹的表面出現(xiàn)了凹凸變化,但左下角有“[Scene 3D] Failed to triangulate polygon (no ear found). Probably not a simple polygon?”報(bào)錯(cuò),意思是“未能三角化多邊形,可能不是一個(gè)簡(jiǎn)單的多邊形?”。up猜測(cè)是制作高模的右側(cè)枝條因?yàn)楣P刷強(qiáng)度或大小不合適發(fā)生了不正常形變(就我上面說的狗啃),導(dǎo)致取消細(xì)分后低模布線錯(cuò)誤或者布線重疊。

up回到ZBrush嘗試用筆刷修復(fù)無望,即便使用上文提到的“開線”操作,低模的線條還是會(huì)重合在一起,甚至使用平滑修補(bǔ)扭曲處時(shí),高模會(huì)出現(xiàn)異??涌油萃莸念愃圃肼暤耐黄???紤]到這部分是被樹葉遮擋的枝條,up決定直接在Blender里將重合在一起的線段分開,但這樣的操作改變了高低模同一位置的映射,烘培的時(shí)候可能出現(xiàn)分層和斷裂。

重新導(dǎo)出后再進(jìn)Pt重復(fù)剛剛的操作,報(bào)錯(cuò)消失,確實(shí)可以看到移動(dòng)了的位置出現(xiàn)與周圍不連續(xù)的裂痕,其余部分Pt處理的非常好,幾乎看不見接縫,而且十分清晰,如果出現(xiàn)模糊可能是Texel密度的問題。

檢查完成后,勾選全部的貼圖重新烘培,可以看到烘培的貼圖在相機(jī)里依次顯示,AO貼圖能提升陰影質(zhì)量。因?yàn)槲覀儾辉赑t里做紋理,所以直接導(dǎo)出貼圖。我們烘培是4k的,但導(dǎo)出只導(dǎo)出1k,所以大小選1024,其他不做改變。

最終得到三個(gè)文件,up很好奇為什么烘培了這么多張貼圖,但是只導(dǎo)出了BaseColor(基礎(chǔ)顏色)、Emissive(自發(fā)光)、Normal(法線)、OcclusionRoughnessMetallic,猜測(cè)是合并了貼圖。OcclusionRoughnessMetallic就對(duì)各通道進(jìn)行了封裝,它的紅色通道R表示AO(環(huán)境光遮蔽),綠色通道G表示Roughness(粗糙度)、藍(lán)色通道B表示Metallic(金屬度)。而Emissive因?yàn)槲覀儾]有設(shè)置自發(fā)光所以沒有實(shí)際導(dǎo)出。其中BaseColor只是建模時(shí)默認(rèn)的顏色,我們并不會(huì)用到,可以刪除。

我們回到Blender,將sm_tree_low移至一旁,將其和sm_treetop都復(fù)制一份,x軸坐標(biāo)改為0,使其在坐標(biāo)原點(diǎn)重合,將復(fù)制的樹干和樹冠按Ctrl+J合并,導(dǎo)出這個(gè)合并后的模型,命名為sm_tree_low_001。

打開之前的UE項(xiàng)目新建一個(gè)Models文件夾用于存放我們的模型,再在其下創(chuàng)建一個(gè)MainPiece用于存放后面要做的石頭部件,再創(chuàng)建一個(gè)Tree文件夾用于存放我們的樹。導(dǎo)入sm_tree_low_001,注意材質(zhì)導(dǎo)入法要選不創(chuàng)建材質(zhì)。為了命名統(tǒng)一up還將Maps改成了Scenes(untiy中場(chǎng)景也是用的Scenes)。

導(dǎo)入后將模型拖入場(chǎng)景,可以看到這個(gè)模型有兩個(gè)世界網(wǎng)格材質(zhì),但是沒有命名(應(yīng)該是可以在建模的時(shí)候就給材質(zhì)命名,好區(qū)分樹干和樹冠)。我們?cè)贛aterials文件夾創(chuàng)建一個(gè)M_TreeLeavesMaterial,這個(gè)是樹葉的材質(zhì),下一章up將制作樹葉的不透明度遮罩。

