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