您好,登錄后才能下訂單哦!
這篇文章主要介紹Unity實現換裝系統的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
具體內容如下
1.創建Sprite Library Asset
2.添加新目錄
Label 可以理解為標簽,在代碼調用過程中使用,將該部位裝備圖片拖入Sprite中
3.添加組件
給需要換裝的部位添加Sprite Resolver組件(如頭部換裝,就在頭部對象掛載組件)
選擇目錄名,就會出現之前Library Asset中拖拽的圖片內容,點擊不同圖片可以預覽效果(如果出現裝備位置偏移,需調整圖片的pivot)
4.通過代碼實現換裝
小筆記:
1).UnityEngine.Experimental.U2D.Animation 記得寫
2).Start函數中GetComponents的s不要忘,也可以用FindObjectsOfType
3).如果是整體換套裝,就將腳本掛載到Player對象上,如果只是單獨換部件如武器,就單獨掛載到武器對象上
using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.Experimental.U2D.Animation; public class RifleSpriteControl : MonoBehaviour { public List<SpriteResolver> spriteResolvers = new List<SpriteResolver>(); // Start is called before the first frame update void Start() { foreach(var resolver in FindObjectsOfType<SpriteResolver>()) { //將遍歷到的所有SpriteResolver添加到list中 spriteResolvers.Add(resolver); } } // Update is called once per frame void Update() { if (Input.GetKeyDown(KeyCode.E))//按E切換到AK47 { foreach (var resolver in this.GetComponents<SpriteResolver>()) { //SetCategoryAndLabel(目錄名,步驟2中所填寫的Label),以獲取相應的圖片 resolver.SetCategoryAndLabel(resolver.GetCategory(), "AK47"); } } if (Input.GetKeyDown(KeyCode.R))//按R切換到MP5 { foreach (var resolver in this.GetComponents<SpriteResolver>()) { resolver.SetCategoryAndLabel(resolver.GetCategory(), "MP5"); } } } }
以上是“Unity實現換裝系統的方法”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。