---
# System prepended metadata

title: '**Project Prefab Variant - 預知物變體介紹及教學 驗證是否加入DataBind** ***最後更新日為 2023 / 03 / 06***'

---

 # **Project Prefab Variant - 預知物變體介紹及教學 驗證是否加入DataBind** ***最後更新日為 2023 / 03 / 06***

## <font color="#c23429"> Project Pregab Variant 的 支援版本</font>
    Unity 2018.3之前的版本是不支持的。
---------------------------------------------
## <font color="#c23429"> 詳細介紹 </font>
**舉例 :** 
    
    ● 通過在腳本上使用屬性覆蓋來更改速度，使Pregab Variant 更快移動。

    ● 通過將額外的遊戲對象附加到手臂，使Pregab Variant 攜帶物品。

    ● 通過添加一個播放格喳聲的AudioSource 組件，使Pregab Variant 發出子彈般的格喳聲。

被變體的預製體是基類（簡稱基體），預製體變體為子類（簡稱變體）
變體和基體始終是有關聯的，但是變體又不完全受基體限制。

    預製件變體繼承另一個稱為基礎預製件的預製件的屬性。
    對預製件變體進行的覆蓋優先於基礎預製件的值。
    預製件變體可以使用任何其他預製件作為其基礎預製件（包括模型預製件或其他預製件變體）。
![](https://i.imgur.com/rof6ihK.png)
    也就是說你在動預知物變體時，只會更動變體，但是你更動的是預知物本身，變體會跟著改變。
    以下講解非常有幫助。可以自己動手做做看就理講了
{%youtube pv30sE_Vsis %}

##  <font color="#c23429"> 預知物變體合DataBind結合 </font>
第一步我們先將當前有再用的DataBind Project 拿出來看看，該物件為空的甚麼都還沒開始綁定任何DataBind
![](https://i.imgur.com/igGjrXg.png)
然後將UI_KnightRent_NewTest 拉回去Project視窗內，並且選擇Project Variant(變體)
![](https://i.imgur.com/CDtGCXP.png)
此時物件已經變成了 變體了確認方式看你的物件方塊側面是否是灰階。上方為普通的預知物，下方為變體
![](https://i.imgur.com/2bjXaVo.png)
已經產生出變體後，該把DataBind掛上去，記得掛在變體上，理論上美術應該要去掛上DataBind這點是確定的，但是如果美術尚未學位此技術，程式還是要去彌補。Ps 切記當你已經產生變體後，也要進入到變體內部添加或更改，還有如果有遇到固定不會更改的Code，可以直接掛在本體上。
![](https://i.imgur.com/tekZ4Wz.png)
當你掛上去看見有一個加的符號就是對的了，代表目前動到的物件只在變體上不是在實體上
![](https://i.imgur.com/TfKVGwj.png)

## 提問區
Q1:該變體會有一天成為本體怎麼辦?
    將你的變體再拉回去Project 這時不能再按變體。
![](https://i.imgur.com/E6Lsawx.png)

Q2:如果再次案到變體會發生甚麼狀況?
    會將變成自己為本體，又產生一個變體在Project內，因此會變成新變體會被上次的變體控制。詳細可以看以上影片介紹
![](https://i.imgur.com/1nit6sV.png)

Q3:預知物變體裡面如果也有預知物會發生甚麼事?
    不會引響，除非你變體內的預知物也是變體，這樣你要就要分成2個層面，當你要改預知物變體裡面的預知物變體，記得也要到內層去修正，不要直接改。
![](https://i.imgur.com/6wSlZgX.png)

## 解論
    當你理解夠多他仔父物件的類別時，就可以更加靈活運用，方便更改美術、程式，
    更深入其實可以到FBX那層就使用預知物變體，他會讓你在3D物件要擴充時，
    可以任意個擴充，例如:3D美術說:這個蛇我要加個光環，如果是以前不是使用變體的情況，
    直接將FBX更動會壞掉，但是如果使用變體，可以直接更變Unity內模型且正常完整，
    更需要的是情事，要熟悉物件的子父需求，強用會導致邏輯混亂，我該改本體還是變體，
    我該讓他變變體嗎?等等問題，最好在一個物件進入時就先畫個規畫圖，與美術討論階層關係，
    會使每個物件更加好管理及修正。    

    










    

