一、創建幾何體的類型
1: 創建平面 Plane;
2: 創建立方體 Cube;
3: 創建球體 Sphere;
4: 創建膠囊體 Capsule;
5: 創建圓柱體 Cylinder;
6: 3D文字 3D text;
創建出來的幾何體,自帶這些組件:
1.transform
2.Mesh Filter:網格
3.Collider:碰撞體
4.Mesh Renderer:網格繪制,把材質拖進Material屬性中就可以繪制出幾何體的圖案
二、材質
在resources文件夾下面創建一個metarial文件夾,里面放幾何體的材質球。
一般是先創建材質球,把貼圖拖進材質球的貼圖屬性中,然后在幾何體中的材質屬性欄,把貼好圖的材質球拖進去,幾何體才可以顯示紋理,
還有一種方法就是直接把貼圖拖到scene視圖的幾何體上面,然后Unity編輯器會自動幫我們在Materials文件下面生成一個材質球。
1.材質球的shader着色器
shader着色器常用Standard和Mobiie/Diffuse模式
(1)Standard模式
Albedo:反射貼圖,也就是材質的貼圖
Metallic:反射光線強度
(2)Mobiie/Diffuse(使用的比較多)模式
漫反射,用的是貼圖的本色。
Tiling:如果貼圖屬性Wrap Mode為Repeat,那么這里是設置平鋪的個數,x=1,y=1:在x軸上貼圖只顯示1次,在y軸上貼圖只顯示1次。x=2,y=1:在x軸上貼圖顯示2次,在y軸上貼圖只顯示1次。足球場的制作。
如果貼圖屬性Wrap Mode為Clamp,那么這里如果x=2,y=2:最后會顯示一個四分之一的貼圖與在右上角,其他位置用貼圖拉伸填充。
Offset
2.貼圖的屬性
Wrap Mode:Repeat平鋪,Clamp拉伸
Filter Mode:圖片拉伸的算法,Point縮放時沒有插值,效果差,Bilinear縮放時帶插值,效果好。
三、FBX模型導入
在resources文件夾下面,以模型的名字命名一個文件夾,把相應的FBX和png貼圖文件放進去,會自動幫我們生成一個材質文件夾。
(導入前:FBX和圖片文件,導入后:FBX,圖片文件,模型文件,Materials 文件夾),使用FBX是因為美術和動畫比較好
1.各大工具導出到Unity的模型比例
2.FBX文件里面記錄的內容
a.模型頂點坐標,三維的
b.模型材質的紋理坐標[0,1]
c.模型動畫
3.導入FBX和png文件到模型文件夾后自動生成的材質文件夾,里面的那個材質球可能沒有正確關聯到我們的貼圖,這是因為材質球的命名不規范,這時候就需要手動關聯貼圖,Standard模式下,點擊材質球的Albedo屬性,選擇對應的貼圖。
Mobiie/Diffuse模式下,點擊圖片,把貼紙放進去,再點擊一些屬性並變化(隨便選),Materials Naming,Materials Search然后點擊Apply應用就行了。
如果是比較復雜的模型,沒有關聯好貼圖
可以先試一下改變復雜模型的Materials Naming,Materials Search屬性看能不能自動導入。
不行的話進行手動關聯。
手動關聯的步驟:
a.先把空的模型拖入場景。
b.點擊場景中的空模型的其中一個子節點BodyL。
c.BodyL子節點的Materials屬性里面的Element 0,Element 1表示的是這個子節點用到的材質球。
d.在BodyL子節點的Inspector面板下,找到Element 0,Element 1對應的那兩個材質組件。
e.把Element 0,Element 1對應的那兩個材質組件的模式改為Mobiie/Diffuse模式。
f.把和BodyL子節點名字一樣的圖片BodyL.png(貼圖)拖到Element 0,Element 1對應的那兩個材質組件的圖片的位置。
但是美術一般都是自己先在Unity里面試好模型后,交給程序員的,所以模型一般沒什么問題,但是從網上下載下來的資源就會遇到命名不規范,必須自己手動導入的情況。
如果是Standard模式,則貼圖的顯示的顏色是混合了貼圖和自定義的顏色的,看起來有點奇怪
如果是Mobiie/Diffuse模式,則貼圖是顯示原來的顏色,最佳的品質,但是性能消耗比較大
4.一個模型下面有好多子節點,不可能是只有節點,這些節點也有自己的材質,有時候不確定是哪個貼圖,可以看這些子節點的材質屬性的名字。
5.美術把資源文件夾Resources整個從Unity里面導出來,用的是Assets-->Export Package,最后生成一個XXX.Package文件
程序員用的是Assets-->Import Package,把XXX.Package文件導進來可以直接用
其實Export Package還可以一起打包資源,腳本和場景,可以打包一整個項目,所以看到XXX.Package文件就應該知道這是別人打包好的東西,可以直接導入。