본문 바로가기

Unity/System

Inventory 시스템 구현

유뷰브에서 유니티 인벤토리 키워드 검색으로 나온 동영상으로 인벤토리 구현에 관하여 공부하였다. 


링크 https://www.youtube.com/watch?v=ZW6RCKVnqT4 를 보면 자세히 나와있다.



이 동영상에서 다루는 인벤토리 기능은 총 5가지이다.





1. 인벤토리 창 띄우기


2. 인벤토리 창에 아이템 추가


3. 인벤토리 창에서 드래그 앤 드롭으로 아이템 이동


4. 인벤토리 창에서 드래그 앤 드롭으로 아이템 교환


5. 아이템에 마우스 올릴 시 아이템 정보 툴팁 표시





1. 인벤토리 창 띄우기


인벤토리 창은 유니티에서 지원하는 UI(Canvas)로 만들었다.




구조는 크게 Canvas 안에 Inventory Panel과 Tooltip이 있다. 


Inventory Panel은 인벤토리 내용이 들어가는 Panel이다.


Tooltip은 아이템 정보가 쓰여질 Image 이다.




Inventory Panel은 Slot Panel과 Title Panel로 나뉜다. 


Slot Panel - Slot이라는 오브젝트들이 들어있는 Panel이다. 이 Slot들을 구현할 때 Slot Panel에 

Grid Layout Group 컴포넌트를 추가하여 구현하였다. Grid Layout Group은 child 오브젝트들을 grid에 맞춰 배치하는 기능을 가진 컴포넌트이다.


Title Panel - Inventory라 쓰여진 제목이 들어가는 Panel이다.  



Slot은 저마다 Item 오브젝트를 가지고 있다. 이 Slot에는 해당 Slot에 아이템이 드롭되었을 경우, 해당 Slot이 비어있을 때엔 Item을 슬롯에 Snap 하여 넣어주고, Item이 있을 땐 교환해 주는 slot 스크립트를 가지고 있다.


Item 오브젝트는 Stack Amount(갯수)를 나타내는 오브젝트를 지닌다. 이 오브젝트는 







'Unity > System' 카테고리의 다른 글

[펌]물리 충돌 제대로 사용하자  (0) 2016.06.07