日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

fgui的ui管理框架_FGUI+Laya Air 游戏架构之stage分层架构

發布時間:2023/12/9 编程问答 57 豆豆
生活随笔 收集整理的這篇文章主要介紹了 fgui的ui管理框架_FGUI+Laya Air 游戏架构之stage分层架构 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

先提前說明,此架構是幼麟棋牌框架的作者 @麒麟子 大神教給筆者的,麒麟子大佬給了一套基于FGUI+Laya Air寫的棋牌大廳界面子工程學習,奎斯花了一段時間從代碼中學習并初步總結了出了分層游戲架構的基本模式,因為只是初步學習,還有一些其他模塊奎斯暫時沒有加(比如網絡模塊),下面奎斯分享出這套游戲架構(這里只介紹理論總結,不貼具體代碼)。

一、分層架構基本模式:

先UI分層架構圖:

在分層架構中,我們將UI拆分為game、hub、popup、notice、alert、mask六大層次:

GAME:主要用于放置玩家可見的游戲場景,比如游戲預加載場景、大廳場景等等

HUB:一般就是漂浮在場景之上的按鈕?玩家信息欄之類的

POPUP:游戲彈出層 比如游戲結束界面等

NOTICE:一般就是鎖屏提示?比如網絡重連時候?提示?正在鏈接服務器。?或者加載界面的時候?提示一個loading

ALERT:是屬于一種特殊的彈出層,彈出確認提示框之類的

MASK:遮罩一般與彈出層配合sh,比如出現一個提示框的時候,除了提示框部分其他部分就要變暗,有一種淡入淡出的效果。

而上面每一層層次在zOrder上都是逐漸由低到高,一般我們會把每層用枚舉類型標識。

二、分層管理模式:

在分層架構中,采用一種Master-Scene-UI的管理方式。除了類似Alert這種比較通用的都放入Basic包體,一般我們會把每一個UI(包括GAME層)在FGUI中都做成一個單獨的包體

每個UI都會有一個Master組件、一個Scene組件、一個Page組件:

這三種組件都繼承自一個公共的父類master、scene、page,并分別由master_manager、scene_manager、ui_manager來管理,而這三類組件的關系是:

1.master_manager負責管理scene_manager

2.scene_manager管理ui_manager

3.ui_manager管理每層分層的具體顯示與刪除

所有配置信息寫入單獨的類中在初始化時統一傳入master_manager管理器,這里奎斯直接貼出大廳子工程中的全局圖:

在UI顯示出來后,具體的游戲業務邏輯我們都寫在每個UI的page組件中。

三、實例簡單演示:

奎斯在初步學習完之后,將分層架構用一個簡單的五子棋小游戲實現了遍,這里簡單演示下:

1.可以看到我們將包體分別各種UI(包括游戲場景和懸浮于場景上的)和公共組件兩部分,下面顯示是大廳場景和游戲場景的UI部分,我們通常會掛在GAME層。

2.Alert上面說過是一種特殊的彈出層,他與POPUP層不同在他是一種可以復用的提示框很多地方多次用到,而POPUP層是每一種UI都完全不同。

3.游戲結束奎斯是做成了一個單獨的提示框UI放到POPUP層,在調用完Alert的UI后再調用結束UI,并在調用的時候使用遮罩,內容在代碼部分再改變,比如"游戲結束,xx勝利了!"

讀者可以根據這種基本分層再按需求劃分UI,這是奎斯目前的分層架構的初步總結。

歡迎閱覽奎斯文章。

總結

以上是生活随笔為你收集整理的fgui的ui管理框架_FGUI+Laya Air 游戏架构之stage分层架构的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。