Unity 3D開(kāi)發(fā)中有許多的坑,誰(shuí)用誰(shuí)知道。其中,開(kāi)發(fā)組和美術(shù)組也常常由于溝通不暢或者項(xiàng)目規(guī)范沒(méi)有制定好導(dǎo)致對(duì)(xi)接(da)坑(pu)爹(ben)的悲劇發(fā)生。這里我附上一份以前做項(xiàng)目時(shí)寫(xiě)的模型制作規(guī)范,供各位U3D程序猿和產(chǎn)品汪參考。文中有參考網(wǎng)上的一些資料,由于事隔兩年了,當(dāng)年參考的資料也忘記有哪些了,各位看官見(jiàn)諒。
一. 單位,比例
在建模型前先設(shè)置好單位,在同一場(chǎng)景中會(huì)用到的模型的單位設(shè)置必須一樣,模型與模型之間的比例要正確,和程序的導(dǎo)入單位一致,即便到程序需要縮放也可以統(tǒng)一調(diào)整縮放比例。統(tǒng)一單位為米。
二. 模型規(guī)范
⒈所有角色模型最好站立在原點(diǎn)。沒(méi)有特定要求下,必須以物體對(duì)象中心為軸心。
⒉面數(shù)的控制。移動(dòng)設(shè)備每個(gè)網(wǎng)格模型控制在300-1500個(gè)多邊形將會(huì)達(dá)到比較好的效果。 而對(duì)于桌面平臺(tái),理論范圍1500-4000。如果游戲中任意時(shí)刻內(nèi)屏幕上出現(xiàn)了大量的角色,那么就應(yīng)該降低每個(gè)角色的面數(shù)。比如,半條命2對(duì)于每個(gè)角色使用2500-5000個(gè)三角面。
正常單個(gè)物體控制在1000個(gè)面以下,整個(gè)屏幕應(yīng)控制在7500個(gè)面以下。所有物體不超過(guò)20000個(gè)三角面。
⒊整理模型文件,仔細(xì)檢查模型文件,盡量做到最大優(yōu)化,看不到的地方不需要的面要?jiǎng)h除,合并斷開(kāi)的頂點(diǎn),移除孤立的頂點(diǎn),注意模型的命名規(guī)范。模型給綁定之前必須做一次重置變換。
⒋可以復(fù)制的物體盡量復(fù)制。如果一個(gè)1000面的物體,烘焙好之后復(fù)制出去100個(gè),那么他所消耗的資源基本和一個(gè)物體消耗的資源一樣多。
三. 材質(zhì)貼圖規(guī)范
⒈我們目前使用的Unity3D軟件作為仿真開(kāi)發(fā)平臺(tái),該軟件對(duì)模型的材質(zhì)有一些特殊的要求,在我們使用的3dsMax中不是所有材質(zhì)都被Unity3D軟件所支持,只有standard(標(biāo)準(zhǔn)材質(zhì))和Multi/Sub-Objiect(多維/子物體材質(zhì))被Unity3D軟件所支持。注:Multi/Sub-Objiect(多維/子物體材質(zhì))要注意里面的子材質(zhì)必須為standard(標(biāo)準(zhǔn)材質(zhì))才能被支持。
⒉Unity3D目前只支持Bitmap貼圖類(lèi)型,其它所有貼圖類(lèi)型均不支持。只支持DiffuseColor(漫反射)同self-Illumination(自發(fā)光,用來(lái)導(dǎo)出lightmap)貼圖通道。Self-Illumination(不透明)貼圖通道在烘焙lightmap后,需要將此貼圖通道channel設(shè)置為烘焙后的新channel,同時(shí)將生成的lightmap指向到self-Illumination。
四. 貼圖文件格式和尺寸
原始貼圖不帶通道的jpg,帶通道的為32位tga或者 png,尺寸最大別超過(guò)2048,貼圖文件尺寸須為2的N次方 (8、16、32、64、128、256、512、1024)最大貼圖尺寸不能超過(guò)1024x1024,特殊情況下尺寸可在這些范圍內(nèi)做調(diào)整。
五. 貼圖材質(zhì)應(yīng)用規(guī)則
⒈貼圖不能為中文命名,不能有重名;
⒉材質(zhì)球命名與物體名稱(chēng)一致,材質(zhì)球的父子層級(jí)的命名必須一致;
⒊同種貼圖必須使用一個(gè)材質(zhì)球;
⒋除需要用雙面材質(zhì)表現(xiàn)的物體之外,其他物體不能使用雙面材質(zhì);
⒌材質(zhì)的ID和物體的ID號(hào)必須一致;
⒍若使用completemap烘焙,烘焙完畢后會(huì)自動(dòng)產(chǎn)生一個(gè)shell材質(zhì),必須將shell材質(zhì)變?yōu)閟tandard標(biāo)準(zhǔn)材質(zhì),并且通道要一致,否則不能正確導(dǎo)出貼圖;
⒎帶Alpha通道的貼圖存儲(chǔ)為tga或者png格式,在命名是必須加_al以區(qū)分。
⒏模型需要通過(guò)通道處理時(shí)需要制作帶有通道的紋理,在制作樹(shù)的通道紋理是,最好將透明部分改為樹(shù)的主色,這樣在渲染是可以使有效邊緣部分的顏色正確,通道紋理在程序渲染時(shí)占用的資源幣同尺寸的普通紋理要多.通道紋理命名時(shí)應(yīng)以_al結(jié)尾。
六. 模型烘焙及導(dǎo)出
⒈模型的烘焙方式有兩種:一種是LightMap烘焙貼方式,這種烘焙貼圖渲染出來(lái)的貼圖只帶有陰影信息,不包含基本紋理。具體應(yīng)用于制作紋理較清晰的模型文件(如地形),原理是將模型的基本紋理貼圖和LightMap陰影貼圖兩者進(jìn)行疊加。優(yōu)點(diǎn)是最終模型紋理比較楚,而且可以使用重復(fù)紋理貼圖,節(jié)約紋理資源;烘焙后的模型可以直接導(dǎo)出FBX文件,不用修改貼圖通道。缺點(diǎn)是LightingMap貼圖不帶有高光信息;
⒉另一種是CompleteMap烘焙方式,這種烘焙貼圖方式的優(yōu)點(diǎn)是渲染出來(lái)的貼圖本身就帶有基本紋理和光影信息,但缺點(diǎn)是沒(méi)有細(xì)節(jié)紋理,且在近處時(shí)紋理比較模糊。
⒊烘焙貼圖設(shè)置。
在進(jìn)行completemap烘焙方式設(shè)置時(shí)應(yīng)注意:貼圖通道和物體uv坐標(biāo)通道必須為1通道,烘焙貼圖文件存儲(chǔ)為tga格式,背景要改為與貼圖近似的顏色;
lightingmap烘焙設(shè)置時(shí),和completemap設(shè)置有些不同,貼圖通道和物體uv坐標(biāo)通道必須為3通道,烘焙時(shí)燈光的陰影方式為adv.raytraced 高級(jí)光線(xiàn)跟蹤陰影,背景色要改為白色,可以避免黑邊的情況。主要物件的貼圖uv必須手動(dòng)展開(kāi)。
七. 模型綁定及動(dòng)畫(huà)
1.骨骼必須為IK、CAT、BIP三類(lèi),unity不認(rèn)虛擬體動(dòng)畫(huà),單個(gè)物體骨骼數(shù)量不超過(guò)60個(gè)。
2.動(dòng)畫(huà)幀率、幀數(shù)的控制,一般情況下為每秒10幀,一個(gè)動(dòng)畫(huà)盡量控制在1秒內(nèi)完成。
3.角色蒙皮、動(dòng)作調(diào)節(jié)規(guī)范詳見(jiàn)---(動(dòng)畫(huà)規(guī)范流程表)。
4.導(dǎo)出動(dòng)畫(huà),分開(kāi)2個(gè)文件,導(dǎo)出沒(méi)有動(dòng)作的模型、骨骼,模型需要帶有蒙皮信息。之后調(diào)節(jié)好做動(dòng)畫(huà)后導(dǎo)出的就是只有骨骼的fbx文件。
八. 模型導(dǎo)出
1.將烘焙材質(zhì)改為標(biāo)準(zhǔn)材質(zhì)球,通道為1,自發(fā)光100%;
2.所以物體名、材質(zhì)球名、貼圖名保持一致;
3.合并頂點(diǎn),清除場(chǎng)景,刪除沒(méi)有用的一切物件;
4.清材質(zhì)球,刪除多余的材質(zhì)球(不重要的貼圖要縮小);
5.按要求導(dǎo)出fbx(檢查看是否要打組導(dǎo)出),導(dǎo)出fbx后,再重新導(dǎo)入max中查看一遍fbx的動(dòng)畫(huà)是否正確;
6.根據(jù)驗(yàn)收表格對(duì)照文件是否正確;
九. 文件備份提交標(biāo)準(zhǔn)
⒈最終確認(rèn)后的max文件分 角色模型、場(chǎng)景模型、道具模型帶貼圖存放到服務(wù)器相應(yīng)的" 項(xiàng)目名/model/char" "項(xiàng)目名/model/scene"
"項(xiàng)目名/model/prop"文件夾里面。動(dòng)畫(huà)文件對(duì)應(yīng)的存放至anim 文件夾中。
⒉導(dǎo)出給程序obj、fbx等格式文件統(tǒng)一存放至export文件夾下的子文件夾anim、model、prop
十. 項(xiàng)目命名要求
⒈項(xiàng)目進(jìn)入策劃時(shí),各部門(mén)統(tǒng)一為項(xiàng)目命好名稱(chēng),服務(wù)器建立項(xiàng)目名稱(chēng)文件夾,制作人員本機(jī)制作時(shí)建立對(duì)應(yīng)名稱(chēng)的項(xiàng)目文件夾。
⒉角色模型命名:項(xiàng)目名角色名字,max文件中模型對(duì)象如果需要分開(kāi)各部位時(shí),應(yīng)在此命名的基礎(chǔ)上部位,如角色頭部命名為:項(xiàng)目名_角色名_head ,以此類(lèi)推。對(duì)應(yīng)的材質(zhì)球、貼圖都將命名一致。
⒊場(chǎng)景、道具命名:項(xiàng)目名場(chǎng)景名稱(chēng),max文件中對(duì)應(yīng)的物體為項(xiàng)目名場(chǎng)景名物體名,同類(lèi)的比較多的情況下,命名為:項(xiàng)目名場(chǎng)景名物體名_01-----02……同類(lèi)型的物體以數(shù)字類(lèi)推方式命名。材質(zhì)球、貼圖對(duì)應(yīng)物體名字。同類(lèi)物體只需要給同一個(gè)材質(zhì)球,同一貼圖即可。
⒋帶通道的貼圖:要加_al后綴
⒌特效貼圖以特效名稱(chēng)命名,貼圖加入_vfx后綴。