目前針對3D游戲移動端的開發(fā),Unity3D引擎幾乎占領了大部分份額,Unity的特點就是入手快而且市面上的插件比較多,這也說明它的架構(gòu)設計還是非常不錯的,有這么多人參與也使引擎的應用獲得了空前的提升。但對于游戲公司的初級程序員或者說剛?cè)腴T的程序員來說,在實際項目開發(fā)中,都是寫寫基本邏輯,對于底層架構(gòu)設計并不是很清楚。這樣對于自身發(fā)展非常不利,在這里給大家介紹幾種游戲開發(fā)中常用的架構(gòu)設計,也是告訴大家該如何學習。

大家學習的過程中,對設計模式中的幾個經(jīng)典模式要熟練掌握:單例模式,工廠模式,抽象工廠模式,狀態(tài)模式。接下來我們就以游戲客戶端為例告訴大家該如何設計一款游戲架構(gòu)。
在客戶端開發(fā)中首先設計的是UI,游戲的UI開發(fā)邏輯非常多。為了能夠滿足游戲的需求變換,這就要求我們必須做一個架構(gòu)。架構(gòu)的目的是方便程序員擴展,還有就是模塊之間的藕合性降低。
先說UI設計,UI主要功能是界面之間的切換以及界面的數(shù)據(jù)顯示,這剛好滿足了MVC架構(gòu)模式,Model表示的是數(shù)據(jù)變換,View表示的界面的顯示,Control表示的是控制。
這樣界面的基本邏輯在View中編寫,Control表示的是控制View的顯示,Model表示的數(shù)據(jù)變化。它們之間可以通過消息的監(jiān)聽和分發(fā)鏈接。具體可以查看筆者編寫的《Unity3D實戰(zhàn)核心技術詳解》電子工業(yè)出版社出版的書籍,里面有關于MVC架構(gòu)設計的詳細講解和代碼案例。
再說進入游戲后的角色設計,角色有很多動作和技能。不同的動作之間可以互相切換,技能也是一樣的,動作的數(shù)量是有限的,技能也是有限的,這個非常符合FSM有限狀態(tài)機的設計。代碼的設計可以采用首先設計一個狀態(tài)變換的基類,不同的動作或者技能都可以繼承這個基類。它們之間的變換可以采用State去切換,非常適用。筆者在《Unity3D實戰(zhàn)核心技術詳解》一書中專門有一章內(nèi)容對其進行詳細講解。
這兩部分是最重要的,其他的涉及各個管理類的封裝管理了。相對來說都是孤立的模塊設計,這些模塊設計可以采用單例的方式進行。最后告訴讀者一個非常重要的事情就是先進行模塊設計再編碼,根據(jù)策劃需求先整框架。避免拿過需求文檔就開始寫,后面修改非常頻繁,把自己坑死。
目前個人也開通了個人主頁網(wǎng)站:www.vr3d-edu.com 歡迎大家訪問。
頂
0
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
名稱欄目:如何快速的提升自己的技能-創(chuàng)新互聯(lián)
網(wǎng)站URL:http://www.chinadenli.net/article10/iidgo.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、響應式網(wǎng)站、關鍵詞優(yōu)化、面包屑導航、自適應網(wǎng)站、App設計
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容