首页
/
每日頭條
/
遊戲
/
遊戲設計模式講解
遊戲設計模式講解
更新时间:2025-07-20 07:53:43

經常有人會說,程序員寫代碼要什麼設計模式,随便寫就行,這其實是一種很不好的習慣,就好比蓋房子,不需要設計圖随便蓋就可以,但是想要蓋成高樓大廈,一定要經過嚴謹的設計,不然就容易崩塌。我們采用設計模式來寫代碼,更多的,是為了不坑自己。

遊戲設計模式講解(從遊戲開發一個經典例子)1

今天我們來講一個經典的設計模式,策略模式。

舉個簡單的例子,我們玩RPG遊戲中,玩家都有各式各樣的武器,每個武器攻擊的動畫效果都不一樣,如果我們使用簡單的方式來做,可以寫很多個if或者switch之類的語句,判斷當前的武器是否是斧頭,那麼進行揮砍,判斷當前的武器是否是長槍,那麼刺向敵人,或者是弓箭,進行拉弓操作。并且,有些武器可能還有必殺技,又是一套很多個不同的if語句。

而策略模式,正是為了解決上述問題,策略模式,定義了算法族,并且算法之間可以互相替換。這個設計模式的好處,在于算法的變更獨立于使用算法的人。可能聽起來比較拗口,上述遊戲設計的例子例子中,使用不同的武器,就是不同的算法,如果我們新增一個新的武器,隻要新增新的算法,而去掉一個武器,隻要删除舊的算法。

遊戲設計模式講解(從遊戲開發一個經典例子)2

可能有人會問,這種設計的好處是什麼呢?明明多寫幾個if的事情,為什麼要設計得如此複雜。首先,在遊戲中,除了主角之外,還有很多不同的角色跟怪物,他們也有可能可以使用多種武器,那麼同樣的代碼要出現非常多次,非常的冗餘,而在軟件設計中,代碼冗餘的危害是非常大的,舉個簡單的例子,新增一個武器,就要涉及到非常多處的代碼,稍有不慎,就可能會改漏,帶來故障。

遊戲設計模式講解(從遊戲開發一個經典例子)3

這個是上述例子畫出來的類圖,這種設計模式有什麼好處呢?假如我們新增了一個新的怪物,怪物B,那麼隻要繼承角色這個類,設置他使用的武器,就可以做出攻擊動作了,同樣,假如我們新增一個新的武器,例如機械鍵盤,那麼同樣隻要新建一個機械鍵盤的類,實現武器的接口即可,當我們實現完之後,原有的主角程序員,隻要調用跟換武器為機械鍵盤,便可以使用機械鍵盤去攻擊了!如果我們不适用設計模式,新增一個機械鍵盤作為武器,又要增加多少工作量呢!

總結

作為一個程序員,我覺得對寫代碼應該是有追求的,那樣才能夠稱之為一個合格的工程師,隻有這樣,我們才能夠不停的進步。可能有人會說,這個代碼已經這樣了,沒救了,那是否需要加強思考,找到現有的問題,再下一次設計中去解決呢?提升效率的同時又提高了自己的能力!

好了,今天我們就介紹到這裡,再次祝大家中秋快樂。歡迎大家關注我,共同學習,共同進步。大家的支持是我繼續唠嗑的動力。同名公衆号(沙茶敏碎碎念)

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
英雄聯盟上分能有多卑微
英雄聯盟上分能有多卑微
文|Aynamuk投降系統在英雄聯盟中其實是個很有争議的系統,首先是因為投降必須要隊伍内過半的玩家同意才能通過,其次是投降是這過半的玩家覺得遊戲已經劣勢到沒有赢的希望了,所以不如抓緊時間重開一局。而對于怎麼才是毫無勝算呢,每個人都有自己的一...
2025-07-20
王者榮耀最新榮耀王者稱号怎麼拿
王者榮耀最新榮耀王者稱号怎麼拿
王者榮耀榮耀王者稱号,王者榮耀在1月20日即将更新很多新内容,榮耀王者稱号也将上線,這個稱号怎麼獲得呢?今天兔玩小編給大家介紹一下。稱号介紹新增稱号【榮耀王者】,該榮譽稱号将僅僅專屬“最強王者”的前50名!每天淩晨0點對該稱号和排名進行刷新...
2025-07-20
cf端遊怎樣把下方的控制欄去掉
cf端遊怎樣把下方的控制欄去掉
玩穿越火線總是點到審判功能?讨厭遊戲結束後彈出的遊戲圈和直播?貼吧有一位玩家分享了如何關閉這些讨厭彈窗和額外功能的方法,一起來看看吧。CF玩家自定義優化~~~這些統統可以關閉,CFer們知道麼?這是我的遊戲界面。注意看,除了對講機,其他什麼...
2025-07-20
漫威複聯四卡牌ssr
漫威複聯四卡牌ssr
漫威旗下擁有大量人氣漫畫IP,這也很方便他們轉向電影和遊戲行業。漫威遊戲近年來相當活躍,去年與Insomniac一起推出了很火的《漫威蜘蛛俠》,并宣布會在今年于Switch上發表《漫畫英雄:終極聯盟3(MarvelUltimateAllia...
2025-07-20
沙盒建造遊戲排行
沙盒建造遊戲排行
沙盒遊戲之所以火,因為它的玩法較為自由,玩家入門比較低,大家很容易就能在沙盒遊戲中找到快樂,可以說沙盒遊戲适合男女老少各個階段的惡人來玩。國内沙盒遊戲種類比較多,從熱度來看,《迷你世界》的熱度在國内算得上是數一數二的存在,特别是自1.0版本...
2025-07-20
Copyright 2023-2025 - www.tftnews.com All Rights Reserved