插件功能
按照Demo1的實(shí)現(xiàn),使用插件來實(shí)現(xiàn)一個裝備窗口是很easy的,雖然效果還很原始但是也點(diǎn)到為止了,本篇涉及的功能用加粗標(biāo)出,具體的功能如下:
1、實(shí)現(xiàn)了兩個窗口,通過點(diǎn)擊鍵盤I來,打開或者關(guān)閉窗口也就是Toggle功能
2、裝備窗口中的物品欄空格數(shù)量動態(tài)生成可控,可以在屬性窗口手動配置
3、窗口具有拖拽功能
4、窗口物品具有拖拽,及窗口間拖拽
5、可以在窗口使用物品的功能,物品有消耗扇形顯示功能
具體效果圖如下所示:
插件使用
1、具體在UGUI 中的Canvas中創(chuàng)建一個InventoryWindow
2、在InventoryWindow下創(chuàng)建空GameObject并命名Container,賦予Grid LayOut 插件
3、給InventoryWindow添加InventoryUI組件,插件將自動添加WindowUI也就是通用窗口輔助插件
4、添加拖拽功能組件DraggableWindow,這樣窗口就有了拖拽功能了
至此簡單的點(diǎn)擊I鍵可以打開和關(guān)閉的裝備窗口做好了
總結(jié)
最后總結(jié)下實(shí)現(xiàn)通用窗口的三個類,分別是WindowHelper文件夾下的,UIWindow,UIWindowPage和DraggableWindow
1、DraggableWindow有就是拖拽窗口的組件,這里還是比較贊的,也是插件編程的簡單例子,這里學(xué)過UGui的同學(xué)都知道要實(shí)現(xiàn)拖拽功能實(shí)現(xiàn)IBeginDragHandler和IDargHandler接口即可,原理很簡單, 源碼如下