日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

淺談場景編輯器開發(fā)

系統(tǒng) 2595 0

???????? 最近負(fù)責(zé)一款2D客戶端場景編輯器的開發(fā)工作,獲益良多?,F(xiàn)在就操作層面跟大家分享一下開發(fā)中的幾個著重點。

??????? ?1 事件響應(yīng)模塊:

?????????編輯器的操作極其復(fù)雜,如果沒有一個清晰的事件分發(fā)流程,操作邏輯處理起來苦不堪言。

?????????主要的思路是設(shè)定編輯模式,然后在每個編輯模式下再有多個子模式。例如建筑編輯模式,放置建筑子模式等。

?????????每個子模式下都有獨立的鼠標(biāo)和鍵盤響應(yīng)處理,如左右鍵 按下彈起的響應(yīng)等。

???????? 這樣在進行邏輯處理時,先判斷當(dāng)前編輯器所處的模式和子模式,即可進入對應(yīng)的響應(yīng)操作。

???????? ?2 場景對象層次:

???????? 編輯器的操作幾乎都是基于對象的,設(shè)定一個層次清晰的對象結(jié)構(gòu),在進行對象操作時則順風(fēng)順?biāo)?。如:基本對象,建筑對象,建筑組對象等。

???????? 3 撤銷重做模塊:

?????????如果沒有做過類似的編輯器,應(yīng)該不會知道這模塊的重要性。

?????????在實際的場景編輯中,常常編輯錯了,就想恢復(fù)到編輯前的狀態(tài),這就用到了撤銷重做的功能。

???????? 主要的實現(xiàn)思路是,當(dāng)某個操作需要撤銷重做功能時,注冊一個對應(yīng)的操作類,保存相關(guān)的參數(shù),有對應(yīng)的執(zhí)行函數(shù)和撤銷函數(shù)。

?????????然后再把這操作保存到一個全局的操作列表,每執(zhí)行一次撤銷操作則把最后一個操作從操作列表中移除。

???????? 因為記錄了相關(guān)的數(shù)據(jù),所以在執(zhí)行撤銷操作時,可以完全回到編輯前的狀態(tài)。

????????? 4 區(qū)域管理模塊

?????????障礙區(qū),遮擋區(qū),安全區(qū),各種自定義區(qū)域等等,都是屬于區(qū)域操作范疇。這種操作用得最多的就是畫刷,所以畫刷的設(shè)計好壞影響重大。

????????? 5 編輯態(tài)文件

???????? 即除了包括游戲數(shù)據(jù)外還保存很多游戲不用的數(shù)據(jù),但在編輯器使用過程中卻帶來很多便利。

?????????比較有利的一點是很多情況下導(dǎo)出的場景配置文件是二進制文件,所以看不到每個版本的修改內(nèi)容,這時可通過對應(yīng)的編輯態(tài)文件來對比。

淺談場景編輯器開發(fā)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 长垣县| 临高县| 商丘市| 大埔县| 道真| 金塔县| 大英县| 观塘区| 萨嘎县| 雅安市| 南汇区| 台东县| 合山市| 南陵县| 马关县| 和林格尔县| 大冶市| 西安市| 达拉特旗| 佛山市| 息烽县| 澎湖县| 平凉市| 汽车| 江阴市| 望奎县| 六安市| 崇明县| 高雄市| 普兰县| 沂水县| 锦屏县| 长乐市| 乐业县| 衡山县| 莒南县| 肃宁县| 郁南县| 扶余县| 师宗县| 桃园县|