動態(tài)切換模型材質(zhì)
-
在Inspector中切換很簡單,直接找到材質(zhì)球點擊切換(圖1-1)
1-1 面板中切換 在腳本中需要找到MeshRender組件鞠眉,然后替換
public Material[] suliaoMaterials;
suliaoMeshRender= suliaoQingting.GetComponent<MeshRenderer> ();
-
int random = Random.Range(0,3); // Material數(shù)組長度為3
suliaoMeshRender.material = suliaoMaterials[random];
修改模型文件中的動畫clip
有些帶動畫clip的fbx文件薯鼠,可以當(dāng)做是一個預(yù)制體Prefab,使用中可能會破壞這個預(yù)制體的結(jié)構(gòu),改變結(jié)構(gòu)會動畫clip會失效械蹋,但是如果打開動畫clip會發(fā)現(xiàn)它是只讀的(圖2-1)出皇,這時候可能就會用到修改文件中的動畫clip的方式了
2-1 模型中的動畫只讀文件
操作步驟:
-
選中模型文件中的動畫clip CTRL+D,之后這個動畫文件會被復(fù)制為另一份文件哗戈,把它重命名為區(qū)分于原來的文件名郊艘,用新的動畫文件替換面板中的Animation 片段(圖 2-2)
2-2 替換舊的動畫片段 -
用Window下的Animation打開新的動畫文件,此動畫文件中的信息可修改(2-3)唯咬,其中的信息記錄的是fbx結(jié)構(gòu)被破壞之前的動畫參數(shù)纱注,根據(jù)自己需要進行修改(如果僅僅是由于結(jié)構(gòu)改變導(dǎo)致fbx預(yù)制體毀壞,還想應(yīng)用之前的動畫信息胆胰,CTRL+C/V之前的動畫信息非常好用...)
2-3 修改文件中舊的動畫參數(shù) 對動畫片段進行播放
if (!idleAnimation.isPlaying) {
int i = Random.Range (0,2);
if (i == 0)
idleAnimation.Play ("yuetuCameraAni1");
else
idleAnimation.Play ("yuetuGanAni1");
}