跳到內容

FX 圖層 - 物品開關

對 Base 圖層進行修改的範例,製作一個物品的開關來顯示該物件,可以說是最靈活的修改方式。

在左上方「Window -> Animation -> Animation」即可開啟動畫視窗,可拖曳放至任意位置(例如下方「Console(主控台)」視窗右側)。

如果是匯入的物品,與角色類似,直接在「Assets」裡找到 prefab 檔案或 fbx 檔案拖入即可。

如果是 Unity 的物品(例如光源),在左側「Hierarchy(階層)」按右鍵選擇即可(例如「Light -> Point Light(點光源)」)。 或者直接在模型名稱上按右鍵建立,如此一來就只需要調整位置即可。

拖入場景後可先調整到合適的位置。

然後再將左側「Hierarchy」中的物品拖入模型的子物件中(即拖到模型名稱上,會自動歸類於模型下方)。

此時移動模型,該物件也會隨之移動。

可以先在模型的資料夾裡建立一個名為「Animation(動畫)」的資料夾以便管理,在「Assets」裡的位置即為下一步建立動畫的預設位置,可提前進入此動畫存放資料夾。

左側「Hierarchy」選擇模型,在「Animation」視窗點擊「Create(建立)」,選擇一個位置並命名動畫名稱後點擊「儲存」。

可以先將要開啟的物品關閉/隱藏(例如將建立的光源關閉)。

在「Animation」視窗左側「Preview(預覽)」右邊有一個紅色實心圓,點擊即可開始錄製。

此時再將要開啟的物品開啟/顯示(例如將光源開啟)。

然後再次點擊紅色實心圓關閉錄製,接著關閉預覽,將右側「Inspector(屬性視窗)」中模型的「Controller(控制器)」刪除(點擊後按「Delete」),回到「Assets」,可以將自動產生的控制器刪除。

找到控制器所在位置點擊即可在「Animator(動畫器)」視窗顯示(可在左側點擊模型名稱後,再在右側「VRC Avatar Descriptor」找到 FX 圖層點擊定位)。

在「Animator」視窗點擊「Parameters(參數)」,然後點擊右側的「+」,選擇「Bool」,然後重新命名(例如:燈光)。

然後點擊「Layers(圖層)」,點擊右側「+」並重新命名(例如:燈光),然後點擊齒輪將 Weight(權重)改為 1。

點擊剛剛新建的圖層,在右側空白處按右鍵「Create State -> Empty(建立狀態 -> 空)」,然後將剛剛錄製的動畫拖入(例如:燈光)。

此時在建立的空狀態上按右鍵「Make Transition(建立過渡)」,然後將滑鼠移動到剛拖入的動畫上點擊左鍵。

點擊這條過渡線,在右側「Inspector」將「Has Exit Time(有結束時間)」取消勾選,然後在「Conditions」右下角點擊加號,選擇剛剛建立的參數(例如:燈光)與值(例如:「true」)。

然後再建立一個從動畫到空狀態的過渡,並且取消勾選「Has Exit Time」,在「Conditions」新增參數(例如:燈光)與值(例如:「false」)。

找到參數檔案並點擊,即可在右側 Inspector 顯示(可在左側點擊模型名稱後,再在右側「VRC Avatar Descriptor」找到「Parameters」點擊定位)。

點擊「Add」,在新新增的一行輸入「參數」名稱與類型(例如:燈光,Bool),後方是預設值(Default),最後為是否儲存值(Saved)(即切換模型再切換回來,是否保留此物件狀態。例如我勾選後,在遊戲裡開啟了燈光沒關,接著換了其他模型再換回來,燈光依然是開啟的;未勾選則切換模型後會變回預設值)。

注意:此處的參數名稱必須與剛剛在 FX 圖層控制器建立的參數名稱相同、類型相同

找到選單檔案並點擊,即可在右側 Inspector 顯示(可在左側點擊模型名稱後,再在右側「VRC Avatar Descriptor」找到「Menu」點擊定位)。

點擊「Add Control」,輸入名稱,Type(類型)選擇「Toggle」,Parameter 選擇剛剛建立的參數(例如:燈光)。

首先下載一個預製件:飛行.prefab

1)將物品放入模型子物件

2)錄製物品開啟動畫

3)將動畫新增至 FX 圖層

4)新增至 VRChat 選單與參數值